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
750
『実践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
200
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
1.1k
FP in Julia « SIDE: J » for JuliaTokai #21
antimon2
1
170
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
280
あなたの知らない(概ね知らなくても良い)Juliaの世界 for JuliaLangJa 年末 LT 大会 2024
antimon2
0
130
Julia 新 LTS v1.10 解説 for JuliaTokai #20
antimon2
1
320
夏休みの(最後の)宿題 for JuliaTokyo #12
antimon2
1
260
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
Practical Agentic AI in Software Engineering
uzyn
0
110
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
460
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3.1k
Modern Linux
oracle4engineer
PRO
0
100
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
180
Android Audio: Beyond Winning On It
atsushieno
0
870
テストを軸にした生き残り術
kworkdev
PRO
0
210
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
230
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
9
73k
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
180
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Context Engineering - Making Every Token Count
addyosmani
3
49
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
The Language of Interfaces
destraynor
161
25k
Music & Morning Musume
bryan
46
6.8k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
A better future with KSS
kneath
239
17k
How to train your dragon (web standard)
notwaldorf
96
6.2k
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)
ご清聴ありがとうございます。