Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
Search
GOTOH Shunsuke
February 03, 2024
Technology
2
400
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
GOTOH Shunsuke
February 03, 2024
Tweet
Share
More Decks by GOTOH Shunsuke
See All by GOTOH Shunsuke
Julia でどうしても super().hoge みたいなことしたい人へ for JuliaTokai #18
antimon2
1
190
勉強会を主催したら 本を出して技術顧問になった話 for NGK2024S
antimon2
0
190
Julia本を書いたら技術顧問になった話 for JuliaTokai #17
antimon2
0
390
Juliaってどんなことができるの? for JuliaTokai #16
antimon2
1
500
型と多重ディスパッチ for 数学と物理におけるJuliaの活用 2023-07-10
antimon2
0
460
スレッド並列の基礎 for 数学と物理におけるJuliaの活用 2023-07-10
antimon2
0
980
Pythonのじゃないけれど 本を書いた話
antimon2
0
310
Julia でモジュールプログラミング(初歩の初歩) for JuliaTokai#15
antimon2
0
260
来栖川電算スポンサースライド202306 for 機械学習名古屋勉強会
antimon2
0
380
Other Decks in Technology
See All in Technology
今さら聞けないDocker入門 〜 Dockerfileのベストプラクティス編
devops_vtj
21
6.1k
require(ESM)とECMAScript仕様
uhyo
4
1k
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
4
940
M&A戦略を支えるデータマネジメント (MIDAS Tech Study #16 GENDA Komiyama)
kommy339
1
150
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Musicを例に~
otanet
0
320
Gemini, Google's Large Language Model
glaforge
0
120
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
3.3k
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
450
生成AIの変革の時代に、直近1年で直面した課題とその解決策
ktc_wada
1
750
さらばあのボタンとは言わせない SORACOM LTE-M Button powerd by AWSをまだ使えるようにした(前編?)
miura55
0
100
AWS学習者向けにAzureの解説スライドを作成した話
handy
3
210
Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
tomorrowkey
2
160
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
Embracing the Ebb and Flow
colly
80
4.2k
BBQ
matthewcrist
80
8.8k
Building a Scalable Design System with Sketch
lauravandoore
457
32k
Into the Great Unknown - MozCon
thekraken
15
1k
For a Future-Friendly Web
brad_frost
172
9k
Navigating Team Friction
lara
179
13k
How GitHub (no longer) Works
holman
305
140k
Unsuck your backbone
ammeep
664
57k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Automating Front-end Workflow
addyosmani
1357
200k
Designing on Purpose - Digital PM Summit 2013
jponch
111
6.5k
Transcript
『実践Julia入門』 で 割愛したネタ 2024/02/03 JuliaTokyo #11 antimon2(後藤 俊介)
お品書き • お前誰よ? • 簡単な Julia の紹介 • JuliaTokai の紹介(と現状報告)
• 『実践Julia入門』 の紹介 • 『実践Julia入門』 で割愛したネタ
お前誰よ?
自己紹介 • 名前:後藤 俊介 • 所属:有限会社 来栖川電算 • コミュニティ:🌟JuliaTokai, 🌟機械学習名古屋,
Ruby東海, Python東海, jl.dev, … • 言語:Julia, Python, Ruby, … • SNS等: (@antimon2) • SNS等(2): (@antimon2.jl) • 著書:実践Julia入門
https://www.kurusugawa.jp
プレスリリース → https://www.hatch-tech-nagoya.jp/pr-escalator-ai https://www.kurusugawa.jp/htn-2023-11-17
JuliaTokai の紹介
https://juliatokai.connpass.com/
コミュニティの紹介 • Julia の東海地方ユーザグループ • 2018年に立ち上げ(3人) ◦ Python東海+Unagi.py 合同勉強会 の懇親会がきっかけ
• 2019/02 に第1回勉強会開催 • 2020/05 から完全オンライン開催 • 2023/02 拠点を Discord サーバ に移行 • 現在に至る
勉強会の内容 • オンライン開催 ◦ 誰でもOK! どこからでも参加OK! ◦ (ほぼ)定期的に開催! • 発表+もくもく会(質問雑談OK!)
◦ Julia について 語り合える場の提供! ◦ 『Julia に関すること』以外特にテーマは決めません! • コミュニティ規範 (Julia 公式) ◦ …を逸脱しなければ基本なんでもOK!
現状報告 • 年4回ペースでだいたい定期的に開催(回復) ◦ コロナ禍(あんど主催者多忙)で一時期頻度が年2回に減少 • 主催陣入替 ◦ antimon2(引き続き) ◦
Hyrodium(2023/05~) ◦ Kgm1500(2023/05~) • 次回 ◦ 2024/03 あたりに開催予定
『実践Julia入門』 の紹介
4年前
2020/07/10 Twitter DM (要約) Julia の入門書を書いてくれる人探してるんだ けど、 興味ある? めっっちゃ興味あります! 2020年7月10日
午後3:28 2020年7月10日 午後4:16 リクエストを許可しました
2020/09 ~ 2023/01 • 書く (write) • 書き直す (fix) •
書き直す (rewrite) • 書き直す (update)
https://twitter.com/antimon2/status/1635765451220459520
おまけ:約4ヶ月後
2023/07/26 社内チャット (※イメージ) Julia本を見て 『仕事依頼したいんだけど』 って問い合わせが来たよ マ!? しゃちょー 2023年7月26日 14:10 ぼく 2023年7月26日
14:11
2023/07 ~ 2023/09 先方とのやりとり(概要) 大規模データをスレッド並列で処理する内製アプリ を Julia で開発中なのですが共同開発者もしくは 技術顧問 (アドバイスをくれる人)
を探しておりましt やらせてください!!
2023/10 ~ 2023/12 お仕事(技術顧問) • Julia コンサル ◦ Julia における
効率の悪いコード・良いコード (指摘および提案) ◦ 特に マルチスレッド 関連の各種アドバイス (先方があまり経験がない) ◦ あと プロファイリング や @code_warntype 等 の実行結果の標示と 改善提案 👉 Julia本を書いたら技術顧問になった話 for JuliaTokai #17
話を戻して 『実践Julia入門』
発刊から約11ヶ月
https://www.amazon.co.jp/o/ASIN/4297133504
https://www.amazon.co.jp/product-reviews/4297133504/ref=c m_cr_dp_d_show_all_btm?ie=UTF8&reviewerType=all_reviews
モチベーション
なんで書いたのか? 1. 日本語でまとまった情報が(少)ない⇒選択肢の1つに ◦ 書くからには『入門書』として 『Julia を使うならまずこれ読め!』 な内容を目指したい! 2. Julia
を Julia らしく ◦ 他言語の真似ではなく、Juliaのキモチ を理解してほしい!
何を 書いた のか? • Julia を書くにあたって知っておいてほしい 最低限の知識 ◦ 基本概念・仕様・文法(⇒書けたつもり) ◦
標準API群の 詳解(>紹介)(⇒全部は無理) • Julia らしい書き方 ◦ いくつかの「Julia あるある」は紹介できた ◦ 効率的・実践的な書き方 ◦ (他言語の常識に引っ張られない) Julia のコンセプトを理解した上 でのコード設計への誘導(⇒書けた?)
何を 書かなかった (書けなかった) のか? • 他言語との比較(書かなかった) • 誤解を解く知識(他言語の常識から引っ張られたバッドノウハウ⇒不要!) ◦ 一部アドベントカレンダーネタとして昇華(→
Julia の(による)新常識) • 割愛した(書きたかったけれど書けなかった)ネタ(一例): ◦ repeat() の使い方(for Array) ◦ 部分型多相のエミュレート ◦ イテレータを加工するイテレータの実装例 ◦ Broadcasting の細かいカスタマイズ • 割愛したけれど救済したネタ: ◦ (一部の)破壊的関数(→ 細かすぎてたぶん伝わらないJuliaのTips2023 ) ◦ あと JuliaTokai 勉強会でどんどん紹介(していく予定)
何を 書きたかった のか? • 「それこの本に書いてあるよ」 と言う言葉で、Julia で プログラムを書くにあたって必要な基礎知識を共有で きるもの •
(他の先入観や偏見なしに)書いてあることを理解して コードを書けば、自然と Julia らしい書き方 になって 好パフォーマンスとなるような、指針となる入門書(≠ リファレンス書)
書いてみて • Julia 情報源(入門書)としての一石は投じた • それだけじゃ不足 • 補完する なにか が必要
◦ 割愛したネタは勉強会や技術記事で少しずつ補完している ◦ それ以外に、Julia ユーザ全体を巻き込んで何かやりたい! • Julia は 書かないと普及しない! ◦ 自然言語(母語以外)も使わないと忘れる
次は何を目指すのか? • Julian 人口増やしたい! • みんな Julia でお仕事しましょう! ◦ てか
Julia のお仕事ください! ◦ 共同開発・コンサル等 お待ちしてます • あと 新しい 本(≒リファレンス本) とか書き たい!
結論
結論 • Julia 楽しいよ! • みんな Julia 書こう! • みんな
Julia でお仕事しよう! • JuliaTokai で Julia の話しよう!
参考
参考文献・リンク等 • 実践Julia入門(拙著) • JuliaTokai(connpass)(Discord へは conpass 経由で) • julialang.org(Julia
本家サイト) • 最近書いた記事: ◦ Julia の(による)新常識 (Qiita) ◦ 細かすぎてたぶん伝わらないJuliaのTips2023 (Zenn)
ご清聴ありがとうございます。