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

とうとう実践配備された ElixirDesktopにようこそ!!

とうとう実践配備された ElixirDesktopにようこそ!!

piacerex

July 03, 2024
Tweet

More Decks by piacerex

Other Decks in Programming

Transcript

  1. これからのElixir採用におけるキーファクター ① ElixirDesktop … スマホネイティブアプリもElixirで提供 ② LiveView … React/NextやVue.js/Nuxt →

    Elixir/LiveView ③ Nx+Axon … AI・MLもElixirで可 (ピュアPython部の高速化も) ④ エッジコンピューティング … クラウド無でクラウド同等を構築 ⑤ Nerves … IoT開発をC++よりフレンドリーなエコシステムで ⑥ NWサーバ … Web3とメタバースに接続する高性能サーバ提供 ⑦ Wasmex … Web3/Ethereum開発と3Dグラフィックが変わる ⑧ DID/VC … Web3を含む「脱中央集権」のコアにElixirを配置 ⑨ チーム開発の本質 ← プログラミングの本質/データ処理の本質 ElixirImp#21より再掲
  2. ①ElixirDesktop …スマホネイティブアプリもElixirで提供 • 大局観と課題 ◦ スマホネイティブアプリ需要は、10年は生き延びる想定 ◦ 一方で、Kotlin/Swiftデュアル開発の工数/マルチPF統制の 負荷と、両開発できるエンジニアの調達が非常に困難 ◦

    React NativeやFlutterといった選択肢は、サーバエンジニア からは距離があり、開発を始めるハードルが高い • Elixirによるソリューションとビジョン ◦ LiveViewベースのElixirDesktopは、サーバエンジニアが入り やすく、Android/iPhone/iPadのマルチ開発が可能 ◦ SlackのようなPCデスクトップアプリとWebも同時開発可能 ◦ iOS対応が安定してくるであろう今年中に前線配備が可能に ◦ 今後のスマホ案件:ElixirDesktopでPoCし、イベントで共有 LiveView JP#7より再掲
  3. ①ElixirDesktop …スマホネイティブアプリもElixirで提供 • 大局観と課題 ◦ スマホネイティブアプリ需要は、10年は生き延びる想定 ◦ 一方で、Kotlin/Swiftデュアル開発の工数/マルチPF統制の 負荷と、両開発できるエンジニアの調達が非常に困難 ◦

    React NativeやFlutterといった選択肢は、サーバエンジニア からは距離があり、開発を始めるハードルが高い • Elixirによるソリューションとビジョン ◦ LiveViewベースのElixirDesktopは、サーバエンジニアが入り やすく、Android/iPhone/iPadのマルチ開発が可能 ◦ SlackのようなPCデスクトップアプリとWebも同時開発可能 ◦ iOS対応が安定してくるであろう今年中に前線配備が可能に ◦ 今後のスマホ案件:ElixirDesktopでPoCし、イベントで共有 … LiveView JP#7より再掲
  4. ①ElixirDesktop …スマホネイティブアプリもElixirで提供 • 大局観と課題 ◦ スマホネイティブアプリ需要は、10年は生き延びる想定 ◦ 一方で、Kotlin/Swiftデュアル開発の工数/マルチPF統制の 負荷と、両開発できるエンジニアの調達が非常に困難 ◦

    React NativeやFlutterといった選択肢は、サーバエンジニア からは距離があり、開発を始めるハードルが高い • Elixirによるソリューションとビジョン ◦ LiveViewベースのElixirDesktopは、サーバエンジニアが入り やすく、Android/iPhone/iPadのマルチ開発が可能 ◦ SlackのようなPCデスクトップアプリとWebも同時開発可能 ◦ iOS対応が安定してくるであろう今年中に前線配備が可能に ◦ 今後のスマホ案件:ElixirDesktopでPoCし、イベントで共有 2023年 LiveView JP#7より再掲
  5. 2024/05/08 (Wed) ElixirMobile#8 とうとう実践配備された ElixirDesktopにようこそ!! ~Webとスマホ/タブレットネイティブアプリの同時開発でハッピーに~ May. 06, 2024 ver

    1.0 created. 株式会社DigiDockConsulting 常務取締役CTOほか3社 Elixirコミュニティ「fukuoka.ex」「ElixirImp」「LiveView JP」オーガナイザ 国際カンファレンス「ElixirConf JP」ファウンダー AIスクール「AIジョブカレ」福岡校開校講師 北九州市立大学 「プログラミング論」教授級非常勤講師 北九州高等専門学校 特命教授 / コンピュータ研究部 指導員 piacere / 森 正和
  6. my favotite technologies & implements == == Real Online VR

    / AR my favotite technologies & implements Twitter / NeosVR / Discord @piacere_ex Github / YouTube / Qiita @piacerex 42年前からプログラマ(職業歴は29年) アジャイル歴:24年 (eXtreme Programming) PM/PdM/PO歴:27年/19年/15年 書けるプログラミング言語:158言語 小学4年生でゲームプログラミングを始め、現在も プロダクトとOSSを開発し、事業やコミュニティの 優位性へと転用するエンジニア/3社の経営者/PO 大手企業をメイン顧客として、IT事業/データ分析 /VR・AR/分散・並行技術/UX・D2C指導を提供 技術コミュニティも複数発足・主催しており、毎月 イベント開催とLT、ライブコーディングをこなす piacere / 森 正和 “piacere” is an Italian word, means “Joy”
  7. • 大局観と課題 ◦ スマホネイティブアプリ需要は、10年は生き延びる想定 ◦ 一方で、Kotlin/Swiftデュアル開発の工数/マルチPF統制の 負荷と、両開発できるエンジニアの調達が非常に困難 ◦ React NativeやFlutterといった選択肢は、サーバエンジニア

    からは距離があり、開発を始めるハードルが高い • Elixirによるソリューションとビジョン ◦ LiveViewベースのElixirDesktopは、サーバエンジニアが入り やすく、Android/iPhone/iPadのマルチ開発が可能 ◦ SlackのようなPCデスクトップアプリとWebも同時開発可能 ◦ iOS対応が安定してくるであろう今年中に前線配備が可能に ◦ 今後のスマホ案件:ElixirDesktopでPoCし、イベントで共有 LiveView JP#7より再掲 2023年 スマホ開発負荷上昇と調達困難の解決 01
  8. • Elixir+LiveViewによる通常Web SPAレスポンシブ開発スキル だけあれば、他に何も要らない (開発効率は2~8倍) ◦ Kotlin/Swift/React Native (実は非React)/Dartのような 他に応用が効きにくい言語を新たに覚える負荷は無くなる

    ◦ 恐らく今となってはKotlin/Swift両開発可なエンジニアより もElixirエンジニアの方が調達しやすい状況にもなっている • カメラ/マイクのスマホ/タブレットに備え付けの設備もKotlin /Swiftを使う必要は無く、phx-hook経由で利用できる • バックグラウンド実行/再生やGPS、ジャイロセンサー利用など のネイティブ機能がどうしても必要になったら、そこだけKotlin /Swiftのブリッジを行えばOK Web以外の開発や両OS用言語は一切要らない
  9. • 大局観と課題 ◦ スマホネイティブアプリ需要は、10年は生き延びる想定 ◦ 一方で、Kotlin/Swiftデュアル開発の工数/マルチPF統制の 負荷と、両開発できるエンジニアの調達が非常に困難 ◦ React NativeやFlutterといった選択肢は、サーバエンジニア

    からは距離があり、開発を始めるハードルが高い • Elixirによるソリューションとビジョン ◦ LiveViewベースのElixirDesktopは、サーバエンジニアが入り やすく、Android/iPhone/iPadのマルチ開発が可能 ◦ SlackのようなPCデスクトップアプリとWebも同時開発可能 ◦ iOS対応が安定してくるであろう今年中に前線配備が可能に ◦ 今後のスマホ案件:ElixirDesktopでPoCし、イベントで共有 2023年 LiveView JP#7より再掲 サーバエンジニアでもマルチPF開発可能 02
  10. ①Elixir+LiveViewによる通常Web SPAレスポンシブ開発スキル だけあれば、他に何も要らない (Web開発以外の習得が不要) ◦ HTML (.html.heex) とハンドラーElixir (.ex) を開発すれば

    済む点でWeb開発できるサーバエンジニアは習得しやすい ②破壊的更新が少なく、標準のライブラリが決まっているのでラク ◦ バージョンアップのたびに破壊的更新が頻発し、外部ライブ ラリの潮流やトレンドがしょっちゅう変わる ▪ 特にReact Native(と言うかReact)が顕著 ◦ 一方、Elixir/Phoenix/LiveViewは、そこまでバージョンが 上がっても破壊的更新が入らず、外部ライブラリのメジャー どころはPhoenixのパッケージに梱包されており、その他の も言うほど大きな変動が無いので安心して開発できる サーバエンジニアがそのままスマホ開発できる
  11. ③ElixirDesktopには、下記のようなUI特化開発要素が無いため、 サーバエンジニアがつまづいたり、距離を感じることが無い ◦ Kotlin Jetpack Compose … HTML+CSS+JSベースで無い ◦ SwiftUI

    … (同上) ◦ Flutter Widget … (同上) ◦ React Native Flexbox … CSS互換のようでけっこう異なる ◦ ElixirDesktop … HTML+CSS+JSベースの開発で良いので TailwindやdaisyUI等やJSライブラリが普通に使える ④ステート管理が極めて簡単 ◦ React Native(と言うかReact)やFlutterのステート管理を 行うストアライブラリは、主流がコロコロ変わる ◦ LiveViewべースのElixirは、そういう変化は皆無で、かつ簡単 サーバエンジニアがそのままスマホ開発できる
  12. ⑤その他、Elixirならではの下記優位性 • スマホ/タブレットアプリにも関わらずAPI不要の開発が可能 ◦ 「API Hell」に陥らない開発は最高です ◦ この実装方式でもアプリ審査は通ります • APIをScaffoldしたものを使って、スマホ/タブレット側の半

    自動コード生成 ◦ 「ElixirDesktop クラサバ構成」でググってください • 認証やCRUD生成/DBマイグレーション/DBリレーション、 CoreComponentなどのLiveView資産も当然、使えます サーバエンジニアがそのままスマホ開発できる
  13. • 大局観と課題 ◦ スマホネイティブアプリ需要は、10年は生き延びる想定 ◦ 一方で、Kotlin/Swiftデュアル開発の工数/マルチPF統制の 負荷と、両開発できるエンジニアの調達が非常に困難 ◦ React NativeやFlutterといった選択肢は、サーバエンジニア

    からは距離があり、開発を始めるハードルが高い • Elixirによるソリューションとビジョン ◦ LiveViewベースのElixirDesktopは、サーバエンジニアが入り やすく、Android/iPhone/iPadのマルチ開発が可能 ◦ SlackのようなPCデスクトップアプリとWebも同時開発可能 ◦ iOS対応が安定してくるであろう今年中に前線配備が可能に ◦ 今後のスマホ案件:ElixirDesktopでPoCし、イベントで共有 2023年 LiveView JP#7より再掲 ネイティブアプリ+WebのElixir投入例 03
  14. こんなElixirの世界にjoinしてみませんか? • 「Elixirエンジニア 20名」 でググってください • Web開発も、スマホ/タブ レット開発も、IoTやAI、エ ッジコンピューティング開 発も、アレコレあります

    • すでに13名の応募があり、 ただいまお一人ずつ面談中 ではありますが、まだまだ 絶賛募集中ですので、DMか コメントでご応募ください