Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LonestarElixirConf2019から知る世界のElixir事情

piacerex
April 17, 2019

 LonestarElixirConf2019から知る世界のElixir事情

piacerex

April 17, 2019
Tweet

More Decks by piacerex

Other Decks in Technology

Transcript

  1. 1 1. Lonestar ElixirConf 2019概要 2. 前夜 (トレーニング、スピーカーディナー) 3. 各セッションの紹介

    (Day1) 4. 各セッションの紹介 (Day2) 5. 世界のElixir事情を直接、体験した結果… 目次
  2. 12 Lonestar ElixirConf 2019の会場 「Norris Conference Center」という、ホテルから車で10分の ところにあるカンファレンス会場 (レストランが近くに並んでいます) 行きは送迎あるけど

    帰り道はUver大活躍 (日本で実感し切れない Uverの偉大さを知る) 歩くと54分… 公式ホテルがそんなに遠いとは (やっぱ車社会だからだろうか)
  3. 13 Lonestar ElixirConf 2019トレーニングプログラム Confに先立って、講師7名による、 5種類のトレーニングを開催 好きな開発技術を丸一日 (1.5時間 x 4コマ)

    ハンズオン形式でガッツリ学べる 一番人気は 約40名も参加 高瀬さんは約20名の仲間と 共にNervesトレーニング参加
  4. 16 高瀬さんが参加した、「Device to the Cloud with Nerves and NervesHub」は、ラズパイ等のIoTボードでElixirアプリの 稼働を可能にする「Nerves」のトレーニングでした

    Nervesアプリ/ファームの開発方法を、 コア開発者のFrank Hunleth (ConfではLT参加)、Justin Schneck (Confでは オープニングキーノートを担当) から直接学べる贅沢なセッション トレーニングプログラムの様子 高瀬さんとFrank Hunleth 高瀬さんとJustin Schneck 本日の高瀬さんセッション でミニ再現にチャレンジ! ハンズオン資料と機材を譲り受けて 内容を展開する許可を頂きました!
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 25 The Business Case for Elixir DockYardのCEO、Brian Cardarella は、Elixirを企業内に プロモートする方法について、9つの説得ポイントで解説

    (Apple やMOTOROLA、Adobe、スクエニが導入済企業として紹介) これから自社にElixir導入される方には、ぜひ動画を見て欲しい https://www.youtube.com/watch?v=jIwWsLTCC4s
  11. 26 Linguistic Domination and Translation as a Counter-hegemonic Practice アトランタで、Elixir

    MeetUpを主催している Osa Gaius が、 OOPや「the four」が展開する言語の覇権 (Hegemony) に ついての状況を説明した後、関数型プログラミングであるElixirで それらを翻訳していくと、随分シンプルになる…という主張を展開 GoFをElixirに翻訳する中で、関数パターンマッチがいかに強力 で、覇権には存在しないパラダイムシフトであることを改めて認識 (ビデオがアップされていない…残念)
  12. 27 Happy Hour & Lightning Talks Conf両日のセッション終了後には、スポンサー提供の「Happy Hour」ありました (日本で言うハッピーアワーと同じ意味です) 話題は、各国のElixir技術動向から、仕事の内容やお困りゴト、

    Elixir以外に好きな言語、あと好きなFinalFantasyのシリーズ ナンバー…とか 更に、Day 1のHappy Hour後には、LTタイムが あり、5分LT一本が一般応募受付されていました (当日にGoogleフォームで申込み)
  13. 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
  14. 34 Building a smart sprinkler controller with Nerves 「風呂モニターでおうちハック」や「駐車場モニター」等から、IoTの エンジニアをスタートしたTodd

    Resudekからは、IoTデバイス群 と、それらのUI薀蓄、その後Nervesでスプリンクラーの実装解説 Nervesでの実践的なコードが示され、ビジュアルも楽しい登壇 https://www.youtube.com/watch?v=qklciKp7sD8
  15. 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
  16. 36 Bringing Elixir to Production (プレゼン準備で観れず、YouTubeで視聴…ElixirConf多謝) SalesLoftのSteve Busseyから、Elixirをプロダクション利用/ 運用するにあたって、他言語との連携をどう取るかや、言語習得 のメンタリングと新言語のパラダイム/エコシステムの習得、性能

    の確保、リリースの組み方など、網羅性高い珠玉の経験値共有 これからElixirをプロダクション採用検討する方は、ぜひご覧を (そして、いつかfukuoka.exでも共有してください) https://www.youtube.com/watch?v=sXyA4ztG1A4
  17. 37 Hastega: Challenge for GPGPU on Elixir 我らが、fukuoka.exカーネルハッカー、ZACKYさんの登壇です 初日セッションも通して、もっとも会場が盛り上がったセッションで、 登壇後には、Elixir創始者

    José Valim との、Elixir本体にも 影響出そうな会談が繰り広げられました (この議論は、今も続いています) 本日、本登壇内容をZACKYさん のセッションで皆さんと共有します https://www.youtube.com/watch?v=lypqlGlK1So Hastegaの 実装に興味津々
  18. 38 The River (changed from Elixir.next) Phoenixコミッター Bruce Tate から、川の始まりや成長、変化

    になぞらえて、Elixirという流れが José と Plataformatec から 始まり、様々なプレイヤーや企業が関わり、現在のElixirの姿に なり、これからどのような変化や動きが訪れるかが解説されました José自身のElixir完了宣言が引用され、彼曰く、自らのパート は終わり、私達が何を担い、投票するかが、今後の流れとのこと https://www.youtube.com/watch?v=KW85rW6-PgI
  19. 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
  20. 44 世界のElixir事情を直接、体験した結果… ➢ テクノロジー面 • 私自身、世界のElixirの動きは追っており、知っていること も多かったが、一方で、それがどのくらいのスピードや勢いで 進化しているのかの「肌感」は、まぁまぁズレていた感触 • ElixirConfのビデオ配信で、この感覚は分からない?

    • 国内Elixir事情、「世界と同期できてない感」、高まる… ➢ 交流面 • コミッターやスピーカーと直接会うことで、意見交換可能に • 現地に行って、拙いながらも会話したり、セッションを聞くと、 Elixir仲間ばかりの環境と内容で、かなりモチベートされる ➢ 体験した後の「マインドと行動の変化」 • MeetUpの動画配信は、Elixir布教に重要かも知れない • 来年のElixirConfで壇上に上がりたい • 会場やTwitter/Slackでもっと会話できるようになりたい