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
180
勉強会を主催したら 本を出して技術顧問になった話 for NGK2024S
antimon2
0
190
Julia本を書いたら技術顧問になった話 for JuliaTokai #17
antimon2
0
380
Juliaってどんなことができるの? for JuliaTokai #16
antimon2
1
500
型と多重ディスパッチ for 数学と物理におけるJuliaの活用 2023-07-10
antimon2
0
450
スレッド並列の基礎 for 数学と物理におけるJuliaの活用 2023-07-10
antimon2
0
960
Pythonのじゃないけれど 本を書いた話
antimon2
0
310
Julia でモジュールプログラミング(初歩の初歩) for JuliaTokai#15
antimon2
0
260
来栖川電算スポンサースライド202306 for 機械学習名古屋勉強会
antimon2
0
380
Other Decks in Technology
See All in Technology
Cracking the KubeCon CfP
inductor
2
270
Babylon.js JAPAN活動紹介 (2024/4)
limes2018
1
110
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
910
Grafana x PagerDuty Better Together
jacopen
1
250
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
7
1.3k
いつか使うかも貯金してたらめちゃめちゃ機能が増えてた話
riyaamemiya
0
620
コードや知識を組み込む / Incorporate Code and knowledge
ks91
PRO
0
150
MapLibreとAmazon Location Service
dayjournal
1
180
Max out Local LLM in Challenging Environments
sashimimochi
1
100
自己改善からチームを動かす! 「セルフエンジニアリングマネージャー」のすゝめ
shoota
6
1k
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
160
コードファーストの考え方。 Amplify Gen2から学ぶAWS次世代のWeb開発体験
yoshiitaka
2
320
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
We Have a Design System, Now What?
morganepeng
44
6.8k
Rails Girls Zürich Keynote
gr2m
91
13k
KATA
mclloyd
16
12k
Unsuck your backbone
ammeep
663
57k
Being A Developer After 40
akosma
66
580k
A Tale of Four Properties
chriscoyier
152
22k
Gamification - CAS2011
davidbonilla
77
4.6k
What's in a price? How to price your products and services
michaelherold
238
11k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
What the flash - Photography Introduction
edds
64
11k
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)
ご清聴ありがとうございます。