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
730
『実践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
関数型まつりレポート for JuliaTokai #22
antimon2
0
180
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
1k
FP in Julia « SIDE: J » for JuliaTokai #21
antimon2
1
150
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
270
あなたの知らない(概ね知らなくても良い)Juliaの世界 for JuliaLangJa 年末 LT 大会 2024
antimon2
0
120
Julia 新 LTS v1.10 解説 for JuliaTokai #20
antimon2
1
290
夏休みの(最後の)宿題 for JuliaTokyo #12
antimon2
1
250
Julia クイズ ~API編~ for JuliaTokai #19
antimon2
1
210
Julia でどうしても super().hoge みたいなことしたい人へ for JuliaTokai #18
antimon2
1
400
Other Decks in Technology
See All in Technology
TypeScript 上達の道
ysknsid25
23
4.8k
MCPに潜むセキュリティリスクを考えてみる
milix_m
1
870
[TechNight #91] Oracle Database 最新パフォーマンス分析手法
oracle4engineer
PRO
3
140
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
260
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
15
7.5k
地域コミュニティへの「感謝」と「恩返し」 / 20250726jawsug-tochigi
kasacchiful
0
100
RapidPen: AIエージェントによる高度なペネトレーションテスト自動化の研究開発
laysakura
1
400
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
360
Ktor + Google Cloud Tasks/PubSub におけるOTel Messaging計装の実践
sansantech
PRO
1
330
自分がLinc’wellで提供しているプロダクトを理解するためにやったこと
murabayashi
1
170
新規事業におけるAIリサーチの活用例
ranxxx
0
170
DatabricksのOLTPデータベース『Lakebase』に詳しくなろう!
inoutk
0
160
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
25
1.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Site-Speed That Sticks
csswizardry
10
720
The World Runs on Bad Software
bkeepers
PRO
70
11k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
For a Future-Friendly Web
brad_frost
179
9.8k
Into the Great Unknown - MozCon
thekraken
40
1.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
A Modern Web Designer's Workflow
chriscoyier
695
190k
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)
ご清聴ありがとうございます。