hibikino.ex#1: ひびきのElixirコミュニティ発足記念もくもく+入門(19:15~)
イベント内容
会場に来れない方もリモートからZoomで参加できるようになりました(申込された方向けにURLをconnpassからのメールでお送りします)
経験者トラックと入門者トラックの2レーン制で開催します!
ひびきのElixirコミュニティ「hibikino.ex」とは?
ひびきのElixirコミュニティ「hibikino.ex」は、福岡市で1年半前から人気を博しているElixirコミュニティ「fukuoka.ex」が、ひびきのにブランチした、新生Elixirコミュニティです
「fukuoka.ex」同様、大量アクセスのあるWeb・APIサーバ構築や、ビッグデータ分析/AI・機械学習向けデータ加工といった、「膨大なアクセスやデータの高速処理」と「高い開発効率」を両立できる関数型プログラミング言語「Elixir」と、そのWebアプリケーションフレームワーク「Phoenix」を福岡で広め、ワイワイと盛り上げていくコミュニティです
Elixirは、シンプルな言語仕様により、「プログラミングが初めて」という方でも比較的とっつきやすく、同時に、関数型言語にありがちな複雑さ(トリッキーな構文、数学やアカデミックに走り過ぎる、等)無しに関数型の強力さだけを抽出した、現実のアプリケーション開発を行うエンジニアに寄り添ってくれる言語です
Phoenixは、Webアプリケーションの世界では、最もメジャーな「Ruby on Rails」を作っていたメンバーによって開発された、大量アクセスと高速分散の捌きが得意なWebアプリケーションフレームワークで、Rails同等の高度なWebアプリ開発を、とても気軽に行えます(中でも、WebSocket性能は、あらゆる言語のFW中でも最速)
「hibikino.ex」では、MeetUp(登壇会/勉強会)やプログラミング入門会、もくもく会、ハッカソン等を通じて、「Elixir/Phoenixの習得機会」と「実際のアプリケーション開発に役立つノウハウ」の提供を定期的に行うことで、福岡でのElixirプロダクション採用を増やし、Elixirに触れることで得られる「プログラミングの楽しさ」を、ひびきのに集まるエンジニアに体感してもらう機会を増やすことをビジョンに掲げています
hibikino.ex#1: ひびきのElixirコミュニティ発足記念もくもく+入門
ElixirとPhoenix(ElixirのWebフレームワーク)を触ったことが無い方向けの「入門者トラック」と、これまで通り、各自お題を決めて、ひたすらもくもくする「経験者トラック」の2トラックに分けて、もくもく会を実施します
「Elixir/Phoenixを触ったことがない」「環境構築をまだしていない」という方は、入門者トラックにて、Excelから関数型言語マスターのシリーズを進めていただきます
分からないことや、詰まってしまったら、fukuoka.ex アドバイザーズ/キャストがフォローしますので、安心して入門を進められます(リモートの方は、Zoomにてチャットないしは音声でのやり取りとなります)
既に、Elixirに慣れている方は、経験者トラックにて、もくもく会のまとまった時間を利用して、どっぷり開発してください(ほろ酔いながら進めていただくのも全然OKです)
最初に、何をもくもくするか、全員発表してから、もくもくタイムとなり、会の終わりにどんなことをしたか/何か作れたかを発表して終了となります(詳細は、後述の「タイムテーブル」をご確認ください)
なお、黙々と何かをすることから、この手のイベントを指して、「もくもく会」と呼びます
開催:2019年 1月 23日 (水) 19:15〜21:40(19:00 受付開始)
場所:学研都市ひびきの 技術開発交流センター(産学連携センター5号館)1階
住所:若松区ひびきの北8番1号
(JR折尾駅西口下車、北九州市営バスもしくはタクシー利用で学研都市ひびきの下車)
バス時刻表はこちらから 18:42 折尾駅西口発 19:01 学研都市ひびきの着 が便利です
↑のバスに乗車する場合
- 福岡市内からは17:47博多発快速門司港行きもしくは17:57博多発ソニック45号をご利用ください
- 小倉からは18:11小倉発快速羽犬塚行きもしくは18:21小倉発きらめき9号をご利用ください
- 福北ゆたか線からは17:42飯塚発快速直方行き 直方乗り換え 18:02直方発折尾行きをご利用ください
↑の電車に乗り遅れた場合でもタクシー利用で間に合う可能性があります
タクシーは折尾駅〜学研都市ひびきのがだいたい1300〜1500円くらい,所要時間15分くらいです
折尾駅で待ち合わせて相乗りすると便利です
折尾駅西口にもタクシーはいますが,折尾駅北口の方がたくさんいます
学研都市ひびきのバス停でおろしてもらってください。
- 学研都市ひびきののバス停を降りた後,信号のある交差点の方に向かって歩き,横断歩道を渡ります
- 信号の先右手に,この感じの建物があると思うので,入ってください
自家用車ご利用の方は無料駐車場あります
詳しくは Twitter @zacky1972 / Facebook https://facebook.com/zacky1972 まで問い合わせください
タイムテーブル
時間 | 発表者 | 内容 |
---|---|---|
19:00-19:15 | - | 開場 |
19:15-19:20 | (全員) | 今日、何をもくもくするか記入 |
19:20-21:00 | (全員) | もくもく会 |
21:00-21:40 | (全員) | 何をもくもくしたか発表 |
-21:40 | - | 閉会 |
バス利用の場合の帰りは 21:53 学研都市ひびきの発 22:13 折尾駅西口着に間に合わせる予定です
あるいはタクシーを呼びます 相乗りしてください
タクシーの場合は折尾駅まで 1300〜1500円くらいを人数分で割ります
タクシーをスムーズに呼び出せれば22時ちょうど前後までは折尾駅に着くでしょう
持ち物
ご自身のPCと、Pocket Wifiやテザリング端末を持参ください
PCは、あらかじめばっちり充電していただくか、電源タップを持参していただくと良いかと思います
ノンアルコールの飲み物と,コストコで調達するお菓子,ピザ等は,てきとーに準備しておきますが、持ち込みもOKです
特定の飲み物やお菓子,アルコール等が欲しい人は当日18時ごろまでに
Twitter @zacky1972 / Facebook https://facebook.com/zacky1972 にリクエストください(実費を負担ください)
コンビニエンスストアはやや遠いので気軽にリクエストください
「Elixirって、今どんな感じなの?」
Elixir/Phoenixにとって2016~2018年は、マルチコアのCPU全てをフル活用できる「Flow」「GenStage」や、GenStageを基盤とした「Dynamic Supervisor」がリリースされ、PhoenixもHTTP/2対応やwebpack対応が進み、Elixirならではの独自色を出しながら、「Elixir/Phoenixでプロダクト開発やSI案件開発を不自由無く行える」フェーズへと進化しています
Githubに登録されているElixirライブラリも、36,000件を突破し、2年前の7,000件程度と比べ、5倍以上へと急増しました
2014~2015年付近は、Elixirも未だ未成熟で、「Erlangを覚えなければElixirは使えない」という認識が一般的でしたが、現状は、Elixir単独で充分にプロダクト開発/SI案件開発を行えています
2017年にはGCP(Google Cloud Platform)でのElixir正式採用、2018年にはAWS Lambdaでのカスタムランタイム正式採用、といった追い風もありました
全世界で見れば、2014年は、200社程度しか採用していなかったのが、2016年は1,100社を超え、有名どころで言うと、SlackやDiscordでも積極的に使われるようになりました
以前は、大量アクセスを有するゲームサーバでのElixir活用が目立っていましたが、現在は、フィンランドやスウェーデン、イギリスを始めとする、金融/証券/SNS/メッセージング基盤などの分野でも活用されています
福岡においても、Elixir/Phoenixをプロダクト開発/SI案件開発で採用されるケースが増え、他言語よりも明らかにレスポンス速度が速いWeb+DBが数日で構築できた事例や、1年以上ダウンせずに運用が回った事例など、実運用の実績も増えています(福岡以外でも、LINEやニコニコ動画、mixi、gumiでの活用事例もあります)
今は、まさにElixir/Phoenixを始めるには、もっとも美味しいタイミングと言えるでしょう
海外と福岡のおける導入企業/規模/事例は、以下fukuoka.exポータルにて紹介しています
https://fukuokaex.fun/
更に、hibikino.ex/fukuoka.exでは、これまでの言語では表現できなかったような次世代の高生産性Web/API開発スタイルの確立や、大規模インフラでもDBサーバをネックにしないためのスケールアウトの仕組み、ElixirとGCP上のAIエンジンを繋いだ画像解析システム、数倍のパフォーマンスを発揮できるGPU/FPGA活用、Elixirプロセスよりも更に軽量なプロセスライブラリ実装、ElixirによるElixirコンパイラ開発といった、先端領域でのElixir活用も、今まさに熱く展開しています
「でもElixirって、使いづらくて覚えにくい『関数型言語』でしょ?」
一般的に「関数型言語」と言えば、言語の習得が難しく、組織として選定しづらいイメージがありますが、Elixirは、言語仕様や構文がシンプルかつ簡単なので、「育成や習得の容易性」を切り捨てること無く、関数型のメリットも享受できます
関数型のメリットは、以下の通りです
- 状態が無いことで、同じ入力を何度行っても同じ出力しか返さないので、意図しない挙動にならない
- 変数がイミュータブル(作成後にその状態が不変)なので、マルチスレッドや並行処理で競合しない
- プログラム構造が小さな関数群で構成され、シンプルに保たれるため、変更容易性が向上する
- 少ないコードで、凝縮度の高い高度な処理が書ける
- リスト設計に慣れていくと、他言語で数百行かかる複雑な処理も、数行のコードで組むことが可能になる
- できあがったコードは、オブジェクト指向言語の1/100の量になることもあり、見た目も100倍エレガント
- オブジェクト指向言語経験者の移行は大変(関数型全般に言える)だが、移行後は、何倍も生産性が高まる
更に、「Elixirならでは」の以下メリットも上乗せされます
- 習得がカンタンなので、プログラミング経験が無い入門者・初級者向け
- 関数の引数でのパターンマッチが可能で、呼出時の事前条件チェックや関数呼び分けには、快感すら感じる
- JSONパースが得意なので、Google APIやBacklog API等、様々なWeb APIとの連携に強い
- マルチコアCPUを簡単にフル活用できる
- マルチクラスタ(AWS、GCP、Azure)のスケールアウトも楽々実現
- 長期間の安定運用を実現してきた「Erlang VM」の元で動作する
- データ変換とバイナリデータ検索に特化しているので、ファイルヘッダ解析やIoT/ドローン制御にも向いている
実際に、Elixirがどの位カンタンに習得できるかと言うと、たった3つの関数を覚えるだけ、30分~1時間もあれば、Web+DB/Web+API/Webグラフ表示まで実現できてしまいます
通常の関数型言語と一線を画す、このElixir/Phoenixのパワーを直接体感してみたい方は、「ExcelでElixirマスター」シリーズをご覧ください
注意事項
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。