Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
LonestarElixirConf2019から知る世界のElixir事情
piacerex
April 17, 2019
Technology
3
460
LonestarElixirConf2019から知る世界のElixir事情
piacerex
April 17, 2019
Tweet
Share
More Decks by piacerex
See All by piacerex
Livebook+Nx+AxonではじめるElixir AI・ML入門
piacerex
0
100
「Elixirスキルシート」を運用始めて1年半後、スキルDB配信することになった
piacerex
0
680
ElixirDesktop入門:Web+スマホを1つのソースで & API Hellに陥らない開発体験【ElixirImp#22】
piacerex
0
500
「Elixir生誕10周年」を土台に10年後の未来を語る ~Web/スマホからLiveViewやWeb3、VR・AR・メタバース、その先へ…~【LiveView JP#7】
piacerex
1
220
7年前から振り返るElixirテクノロジーの変遷【ElixirImp#21】
piacerex
0
120
「Elixirお仕事」を5年前に作り始め、今どこまで来てる?【ElixirImp#20】
piacerex
0
130
Elixirで起業し、案件を作り、「本業」と「副業」、そして「見習い」の雇用を創る【ElixirDI#12】
piacerex
0
190
ElixirとHaskellの根底にある同じもの、そして、Elixirが辿った道
piacerex
5
1.8k
Elixirで始めるデータサイエンス入門 ~Elixir製データサイエンスプラットフォーム「Esuna」にて~
piacerex
0
520
Other Decks in Technology
See All in Technology
OPENLOGI Company Profile
hr01
0
12k
Oktaの管理者権限を適切に移譲してみた
shimosyan
2
260
Cloudflare Workersで動くOG画像生成器
aiji42
1
490
Multi-Cloud Gatewayでデータを統治せよ!/ Data Federation with MCG
tutsunom
1
220
- Rでオブジェクト指向プログラミング- クラス設計入門の入門
kotatyamtema
1
720
OVN-Kubernetes-Introduction-ja-2023-01-27.pdf
orimanabu
1
320
データベースの発表には RDBMS 以外もありますよ
maroon1st
0
230
re:Inventで発表があったIoT事例の紹介と考察
kizawa2020
0
180
MarvelClient Upgrade 64bit クライアントへの自動アップグレード設定
mitsuru_katoh
0
120
もし本番ネットワークをまるごと仮想環境に”コピー”できたらうれしいですか? / janog51
corestate55
0
360
Optimizing your Swift code
kateinoigakukun
0
1.4k
Pentesting Password Reset Functionality
anugrahsr
0
440
Featured
See All Featured
BBQ
matthewcrist
75
8.1k
Writing Fast Ruby
sferik
613
58k
Designing Experiences People Love
moore
130
22k
Robots, Beer and Maslow
schacon
154
7.3k
Large-scale JavaScript Application Architecture
addyosmani
499
110k
How to Ace a Technical Interview
jacobian
270
21k
In The Pink: A Labor of Love
frogandcode
132
21k
Web development in the modern age
philhawksworth
197
9.6k
Testing 201, or: Great Expectations
jmmastey
25
5.7k
What's new in Ruby 2.0
geeforr
336
30k
jQuery: Nuts, Bolts and Bling
dougneiner
57
6.6k
Code Reviewing Like a Champion
maltzj
508
38k
Transcript
マーケティングに強いCTOが語る技術未来とElixir 第6回 Lonestar ElixirConf 2019 から知る世界のElixir事情 2019/03/01 ver 0. 5作成
2019/04/15 ver 0. 9作成 2019/04/17 ver 1. 0作成
1 1. Lonestar ElixirConf 2019概要 2. 前夜 (トレーニング、スピーカーディナー) 3. 各セッションの紹介
(Day1) 4. 各セッションの紹介 (Day2) 5. 世界のElixir事情を直接、体験した結果… 目次
2 1. Lonestar ElixirConf 2019概要
3 Lonestar ElixirConf 2019とは? 「Lonestar ElixirConf 2019」は、オースティンで開催される、 「ElixirConf US」「ElixirConf EU」に次ぐ規模のカンファレンス
4 えっと、そもそも、オースティンってどこ? 「オースティン」が、どこにあるかご存知ですか?(どんな場所かも) アメリカの南側、テキサス州にある都市です 日本からは、10,000Km以上、離れた場所にあります 私達も、あまりオースティンや テキサスのことを知らなかったの ですが、ご存知無い方に、 どんなイメージか聞いてみたい です
(たとえば、気温とか…)
5 オースティンの冬の最低気温は日本と同じ…つまり寒い テキサス/オースティンは、最低気温は、日本の平均気温と同じ、 最高気温も日本の夏の最高気温とあまり変わらない…といった 感じで、実は日本と比べ、すごく暖かい…ということは無いです (更に曇りの日が多く、南の場所な感じは、全くしませんでした) 「テキサスだから暑い」みたいなイメージで、厚着をしてこなかった ざっきーさんは、かなり寒そうでした(^^u 到着した翌日昼の 気温は、6℃と、
日本より寒く、 このライトダウンは なかなか厳しい…
6 福岡からオースティンまでの移動は…23時間! 福岡から飛行機で23時間 (3つの便をノンストップ乗り継ぎ)
ちなみに、ざっきーさんの スライドは福岡空港で…
なんと、ゼロページw (いつものfukuoka.ex MeetUp とおんなじノリやー)
そんな訳で、 空港で怒涛のスライド 共同作成開始(^^u
10 オースティンの空港からElixirConf公式ホテルまで オースティン・バーグストロム国際空港からElixirConf公式ホテル の「HAYTT PLACE」に到着したときは、すっかり夜中で、ホテル のルームサービスも終わってたけど、フロントのお兄さんが、フレンド リーで、イヤな顔1つせず、巨大バーガーをデプロイしてくれました 空港までの移動は Uver大活躍
11 ホテルの周りは、ショッピングセンターくらいしか無い… オイルマネーで潤った後、ハイウェイでバイパスされた?(冗談) 近所のマックは、直線距離で 10分なのに、ハイウェイ横断 ができず45分…車社会ねぇ
12 Lonestar ElixirConf 2019の会場 「Norris Conference Center」という、ホテルから車で10分の ところにあるカンファレンス会場 (レストランが近くに並んでいます) 行きは送迎あるけど
帰り道はUver大活躍 (日本で実感し切れない Uverの偉大さを知る) 歩くと54分… 公式ホテルがそんなに遠いとは (やっぱ車社会だからだろうか)
13 Lonestar ElixirConf 2019トレーニングプログラム Confに先立って、講師7名による、 5種類のトレーニングを開催 好きな開発技術を丸一日 (1.5時間 x 4コマ)
ハンズオン形式でガッツリ学べる 一番人気は 約40名も参加 高瀬さんは約20名の仲間と 共にNervesトレーニング参加
14 Lonestar ElixirConf 2019セッションプログラム Day1 Day2
15 2. 前夜 (トレーニング、スピーカーディナー)
16 高瀬さんが参加した、「Device to the Cloud with Nerves and NervesHub」は、ラズパイ等のIoTボードでElixirアプリの 稼働を可能にする「Nerves」のトレーニングでした
Nervesアプリ/ファームの開発方法を、 コア開発者のFrank Hunleth (ConfではLT参加)、Justin Schneck (Confでは オープニングキーノートを担当) から直接学べる贅沢なセッション トレーニングプログラムの様子 高瀬さんとFrank Hunleth 高瀬さんとJustin Schneck 本日の高瀬さんセッション でミニ再現にチャレンジ! ハンズオン資料と機材を譲り受けて 内容を展開する許可を頂きました!
17 スピーカーディナーの様子 スピーカー特権として、Conf前夜には、トレーナー、スピーカー、 スポンサー、スタッフが参加の特別ディナー会が催されました 世界中のアルケミスト (Elixir使いを指す言葉、PHP使いのこと を「ペチパー」と言うのと同じ) とフランクに交流できるのが、現地 参加ならではの醍醐味です ↓ざっきーさんと私、
Frank Hunlethの席 (シカゴのグループは500名もいる!) ↓高瀬さんと Chris Freezeの席
18 3. 各セッションの紹介 (Day1)
19 Conf開始前の会場の様子 200名収容の会場は満席で、開始前に、無料の朝食を提供 日本人の参加は、どうやらfukuoka.exの3名だけのようです (アジア人は10名未満で、韓国や台湾の人がチラホラ…) 記念Tシャツ に着替えて ゴキゲンw
20 Nerves Project Nervesプロジェクト共同創始者で、ElixirConf 2018でもキー ノートも務めた Justin Schneck から、Nervesの最新版での 1.8対応やビルドターゲット複数対応、NervesHubを紹介
ホストからssh接続してstdio表示、RingLoggerでgrep検索、 push over sshでファームウェア更新と、ライブデモ満載でした Nervesの詳しい 内容は高瀬さんの セッションにて https://www.youtube.com/watch?v=ItIv2ndtzFM
21 Socrates and Distributed State on the BEAM SalesLoftのエンジニア、Dan Dresselhaus
から、分散環境 の状態管理の課題と、解決策としてのElixir実装「Raft」を解説 https://github.com/toniqsystems/raft ※Raftは、論文で紹介されるアルゴリズム名と同じ 分散状態保持について、6つの観点で、複数GenServer/ Erlangクラスタ/Delta CRDT/Redis/Kafkaといった分散 環境と、Raftの挙動の違いを、アニメーション付で理解できます https://www.youtube.com/watch?v=-7WCKKhuhfY
22 Cadre: Building reliable distributed stateful systems in Elixir TimexやDistilleryを手掛け、ElixirConfのスポンサー企業、
DockYardにも所属している Paul Schoenfelder が、ラージ スケールするサービスをElixirで構築する際のポイントを解説 分散ステート管理の課題と、解決策であるETS/Registry/ Mnesiaが抱える課題、それを解決できる「Cadre」の紹介 https://www.youtube.com/watch?v=xSOuB5P_mk0
23 Ecto Without a DB ElixirConf 2014からスピーカーを務める、Greg Vaughnが、 Ectoの4つのコンポーネント (下記URL)
のうち、DB無しで独立 して利用できる「Schema」「Changeset」 を、iexでライブデモ https://hexdocs.pm/ecto/Ecto.html Schemaの構造解析を、inspectのstructs OFFでmap表示 したり、DB無の検索IFにおける入力チェック例は、貴重な内容 https://www.youtube.com/watch?v=k_xDi7zAcNM
24 Things you might not have tried with Ecto オースティンでDockYardに勤務し、Ectoのコミッターも務める
Luke Imhoff が、EctoのDB無時のChangeset/Typeと、 DB有時の様々な操作 (主キー、Join、Index、タイムスタンプ、 制約、バルク操作) についてテクニカルなEctoの利用を披露 「Type」で文字列をElixirネイティブ型に変換したり、バルク操作 4種類を分類する様は、なかなか日本で手に入りにくい情報 https://www.youtube.com/watch?v=3EyDkiDzbj8
25 The Business Case for Elixir DockYardのCEO、Brian Cardarella は、Elixirを企業内に プロモートする方法について、9つの説得ポイントで解説
(Apple やMOTOROLA、Adobe、スクエニが導入済企業として紹介) これから自社にElixir導入される方には、ぜひ動画を見て欲しい https://www.youtube.com/watch?v=jIwWsLTCC4s
26 Linguistic Domination and Translation as a Counter-hegemonic Practice アトランタで、Elixir
MeetUpを主催している Osa Gaius が、 OOPや「the four」が展開する言語の覇権 (Hegemony) に ついての状況を説明した後、関数型プログラミングであるElixirで それらを翻訳していくと、随分シンプルになる…という主張を展開 GoFをElixirに翻訳する中で、関数パターンマッチがいかに強力 で、覇権には存在しないパラダイムシフトであることを改めて認識 (ビデオがアップされていない…残念)
27 Happy Hour & Lightning Talks Conf両日のセッション終了後には、スポンサー提供の「Happy Hour」ありました (日本で言うハッピーアワーと同じ意味です) 話題は、各国のElixir技術動向から、仕事の内容やお困りゴト、
Elixir以外に好きな言語、あと好きなFinalFantasyのシリーズ ナンバー…とか 更に、Day 1のHappy Hour後には、LTタイムが あり、5分LT一本が一般応募受付されていました (当日にGoogleフォームで申込み)
28 バリエーション豊富なElixirを知る「Lightning Talks」 Nerves、MMO、Telemetry、機械学習など、ネタが豊富 https://www.youtube.com/watch?v=QKMqnHQ85A4 https://www.youtube.com/watch?v=jAfSrissuXg https://www.youtube.com/watch?v=WsUym0ewM_8 https://www.youtube.com/watch?v=jTTgdsLaleU https://www.youtube.com/watch?v=DvwgGz_5D5I https://www.youtube.com/watch?v=XwcmEX7LHeY
https://www.youtube.com/watch?v=AjYHt6qs7lQ
29 LTが始まってもロビーから帰ってこない人達(^^u… Happy Hourから戻らず、閑散としてても、フランクにLT始まる かくいう私も 長旅の疲れと 英語でCPU利用 100%でグッタリ
この後、怒涛の スライド修正とリハーサル で1日目終了(^^u
31 4. 各セッションの紹介 (Day2)
32 Phoenix LiveView Phoenixメインコミッター、Chris McCordからは、昨年から待ち 続けた、革新的フロント技術「LiveView」の解説とデモでした スピーチ後、「普通にファン」として突撃してきて、 Phoenix+Vue.jsで作ったEsunaを見せたり、 LiveViewでEsunaを再構築する話をしてきました LiveViewで
何ができるかは 古賀さんの セッションにて (ビデオがアップされていない…残念) とてもフレンドリー
33 The Factory of the Future with Elixir, Phoenix, and
Nerves Clark Kampfe は、モノづくりの歴史の例として、「エンジン」と、 作るための道具が、改善や品質向上され、プログラミングが出現 し、「気にしなくても上手くやってくれる事」が増えた結果、ポインタ もデータ破壊も無いElixirが、いま私達の手にある流れを解説 Elixir/OTP/Phoenix/Nervesといった素晴らしいツールが あっても魔法では無いので私達がデザインすることが大事と強調 https://www.youtube.com/watch?v=0Cn_n76qTIQ
34 Building a smart sprinkler controller with Nerves 「風呂モニターでおうちハック」や「駐車場モニター」等から、IoTの エンジニアをスタートしたTodd
Resudekからは、IoTデバイス群 と、それらのUI薀蓄、その後Nervesでスプリンクラーの実装解説 Nervesでの実践的なコードが示され、ビジュアルも楽しい登壇 https://www.youtube.com/watch?v=qklciKp7sD8
35 Monitoring Your Elixir Application with Prometheus (プレゼン準備で観れず、YouTubeで視聴…ElixirConf多謝) LTでも紹介された「ExVenture」を開発する、SmartLogicの Eric
Oestrichは、モニタリングツール「Prometheus」にElixir からカスタムログを出したり、Elixirにアタッチする例を交えて解説 中でも、Phoenix 1.4でも導入されたDI的存在「Telemetry」 を監視系にアタッチして使う例は、あまり例が無いので貴重でした https://www.youtube.com/watch?v=ETUD9SaRCjY
36 Bringing Elixir to Production (プレゼン準備で観れず、YouTubeで視聴…ElixirConf多謝) SalesLoftのSteve Busseyから、Elixirをプロダクション利用/ 運用するにあたって、他言語との連携をどう取るかや、言語習得 のメンタリングと新言語のパラダイム/エコシステムの習得、性能
の確保、リリースの組み方など、網羅性高い珠玉の経験値共有 これからElixirをプロダクション採用検討する方は、ぜひご覧を (そして、いつかfukuoka.exでも共有してください) https://www.youtube.com/watch?v=sXyA4ztG1A4
37 Hastega: Challenge for GPGPU on Elixir 我らが、fukuoka.exカーネルハッカー、ZACKYさんの登壇です 初日セッションも通して、もっとも会場が盛り上がったセッションで、 登壇後には、Elixir創始者
José Valim との、Elixir本体にも 影響出そうな会談が繰り広げられました (この議論は、今も続いています) 本日、本登壇内容をZACKYさん のセッションで皆さんと共有します https://www.youtube.com/watch?v=lypqlGlK1So Hastegaの 実装に興味津々
38 The River (changed from Elixir.next) Phoenixコミッター Bruce Tate から、川の始まりや成長、変化
になぞらえて、Elixirという流れが José と Plataformatec から 始まり、様々なプレイヤーや企業が関わり、現在のElixirの姿に なり、これからどのような変化や動きが訪れるかが解説されました José自身のElixir完了宣言が引用され、彼曰く、自らのパート は終わり、私達が何を担い、投票するかが、今後の流れとのこと https://www.youtube.com/watch?v=KW85rW6-PgI
39 KeyNote①: Erlang Ecosystem Foundation Elixir創始者 José Valim からKeynote2つが披露されました 1つ目は、「Erlang
Ecosystem Foundation」で、Elixirと Erlangの技術開発やOSSプロジェクトを支援する団体の設立と、 5つの初期ワーキンググループの役割が発表されました https://www.youtube.com/watch?v=qCA-Qu-TPoM
40 KeyNote②: The Road to Broadway 2つ目は、GenStageの後継機能として、耐障害設計に焦点が 充てられた「Broadway」についての解説でした GenStageで未達成の「スーパーバイザツリー設計」「データ消失 回避シャットダウン」「障害時イベント消失軽減」を実現する実装
https://www.youtube.com/watch?v=a3FtBNMzMxM
この後、HappyHourに 参加し、それから23時間 の飛行機旅で帰国し…
帰国後、mixiで懇親会、 Akatsukiで帰国報告会 まさに弾丸スケジュールw
43 5. 世界のElixir事情を直接、体験した結果…
44 世界のElixir事情を直接、体験した結果… ➢ テクノロジー面 • 私自身、世界のElixirの動きは追っており、知っていること も多かったが、一方で、それがどのくらいのスピードや勢いで 進化しているのかの「肌感」は、まぁまぁズレていた感触 • ElixirConfのビデオ配信で、この感覚は分からない?
• 国内Elixir事情、「世界と同期できてない感」、高まる… ➢ 交流面 • コミッターやスピーカーと直接会うことで、意見交換可能に • 現地に行って、拙いながらも会話したり、セッションを聞くと、 Elixir仲間ばかりの環境と内容で、かなりモチベートされる ➢ 体験した後の「マインドと行動の変化」 • MeetUpの動画配信は、Elixir布教に重要かも知れない • 来年のElixirConfで壇上に上がりたい • 会場やTwitter/Slackでもっと会話できるようになりたい
最後に覚える言語は、 Elixirのつもりだったけど…
実は、 だった (^_^u…
Elixirのためなら マスターするのも厭わない いま毎日、修行中… ・英語で書かれた英文法本をパワポにまとめ中 ・英文コラム読み (Elixirに限らず) ・海外エンジニアとほぼ毎日チャット ・海外Elixirエンジニアを積極フォロー ・海外のElixir質問に英語で答える ・英語圏向けツイート
(今回MeetUpも)
Elixirへの愛の高さは https://speakerdeck.com/cooldaemon/erlang-falsele-sisatoxin-sa 鉄人にも負けてない(^^)
加えて、 来年のElixirConf に向けて…
50 FBトップ画面で鼓舞 (≒プレッシャーをかけているw) ZACKYさんの リハーサル時に それっぽいのを コッソリ撮影
こんな感じで…
52 「世界のElixirの波」に巻き込まれたい方、絶賛募集中 2019/8/27~30開催のElixirConf USに行ってみませんか? まだ一般参加の募集 は始まっていませんが、 イベント告知のメール 通知は受付開始して いますので、気になる ようであれば下記から
登録してみてください https://elixirconf.com/2019
53 「世界はハードルまだ高い…」という方に向けては… 2019/6/1東京開催のErlang & Elixir Festはお手軽です https://elixir-fest.jp/
そして、 未だオフレコですが、 fukuoka.exも… (スミマセン、会場限定のネタです)
ご清聴ありがとうございます