Share
Embed
Transcript
56 slides
-
マーケティングに強い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事情を直接、体験した結果… 目次 -
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トレーニング参加 -
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の席 -
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 -
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 -
44 世界のElixir事情を直接、体験した結果… ➢ テクノロジー面 • 私自身、世界のElixirの動きは追っており、知っていること も多かったが、一方で、それがどのくらいのスピードや勢いで 進化しているのかの「肌感」は、まぁまぁズレていた感触 • ElixirConfのビデオ配信で、この感覚は分からない?
• 国内Elixir事情、「世界と同期できてない感」、高まる… ➢ 交流面 • コミッターやスピーカーと直接会うことで、意見交換可能に • 現地に行って、拙いながらも会話したり、セッションを聞くと、 Elixir仲間ばかりの環境と内容で、かなりモチベートされる ➢ 体験した後の「マインドと行動の変化」 • MeetUpの動画配信は、Elixir布教に重要かも知れない • 来年のElixirConfで壇上に上がりたい • 会場やTwitter/Slackでもっと会話できるようになりたい -
52 「世界のElixirの波」に巻き込まれたい方、絶賛募集中 2019/8/27~30開催のElixirConf USに行ってみませんか? まだ一般参加の募集 は始まっていませんが、 イベント告知のメール 通知は受付開始して いますので、気になる ようであれば下記から
登録してみてください https://elixirconf.com/2019