【スポンサー枠で増席】fukuoka.ex#11:DB/データサイエンスにコネクトするElixir

2018/06/22(金)19:00 〜 21:00 開催
ブックマーク

イベント内容

下記URLから福岡Elixir会にメンバー登録すると、MeetUpイベントやもくもく会のお知らせがメールで届きます(無料)

https://fukuokaex.connpass.com

fukuoka.ex#11 MeetUp、過去最大規模で、とても盛り上がりました!!

image.png

特別ゲスト①:Erlang+Elixir界で世界的にも有名な「力武 健次さん」が初参戦です!やったー!

特別ゲスト②:北九州の飯塚市で6年間続くコミュニティ「e-ZUKA Tech Night」との初コラボで、主催の「谷口 耕平さん」がLT参戦です!

fukuoka.ex#11・・・DB/データサイエンスにコネクトするElixir

今回のMeetUpは、Elixir/Phoenix(≒ElixirのWebアプリフレームワーク)から、DBやデータストアに接続し、データ活用に活用したり、データ分析・機械学習・AIといった「データサイエンス」にも踏み込み、Elixirの高生産性を活かした、「高速Web+DBアプリ」や「スマートデータ分析プラットフォーム」を作るためのノウハウを共有するセッション・LTを予定しています

Elixirは、MySQLやPostgreSQL、Oracleといった、一般的なDBだけに限らず、ETSやmnesiaと呼ばれるインメモリーDBが充実しているので、DB処理/データ処理の高速化/分散化がやりやすい言語です

また、単品のCPU性能が2003年頃に頭打ちとなり、CPUはマルチコア化したものの、そのパワーを引き出せるプログラミング言語がまだ少ない中、Elixirは、マルチコアCPU全てをフル活用できる仕組み(Flow/GenStage等)があるため、カンタンなプログラミングで眠っているHW性能を引き出すことが可能です

これらを活かし、高性能と高いカスタマイズ性が求められる「前処理」…つまり、ビッグデータ分析やAI・機械学習を行う手前の、データクレンジングや集計を実装するのに、Elixirは非常に強力なツールとなります

そして、AI・機械学習の部分については、現在、TensorFlowやKeras、Chainer等のPythonベースのエンジンが主流ですが、ここについてもElixirでドライブできる研究をfukuoka.exでは進めており、その途中経過もお伝えしたいと思います

コンテンツの詳細は、後述のタイムテーブルをご覧ください

なお、会の終了後(21:00以降)、お酒と軽食で懇親会も行いますので、セッション・LTの登壇者に質問したり、日頃会話できないようなエンジニアとの交流をお楽しみください(もちろん、セッション・LTのみの参加も可です)

※Twitterハッシュタグ「#fukuokaex」でもワイワイやっていきます

※もし「関数型言語」に苦手意識や拒否症がある方は、文末をご覧ください

※fukuoka.exのコミュニティの成り立ちやビジョンは、文末から1段登ったところにあります

~ Elixir/Phoenixの現状について ~

Elixir/Phoenixにとって2016~2018年は、マルチコアのCPU全てをフル活用できる「Flow」「GenStage」や、GenStageを基盤とした「Dynamic Supervisor」がリリースされ、Phoenixも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正式採用、といった追い風もありました

福岡においても、Elixir/Phoenixをプロダクト開発/SI案件開発で採用されるケースが増え、他言語よりも明らかにレスポンス速度が速いWeb+DBが数日で構築できた事例や、1年以上ダウンせずに運用が回った事例など、実運用の実績も増えています

今は、まさにElixir/Phoenixを始めるには、もっとも美味しいタイミングと言えるでしょう

開催:2018年 6月 22日 (金) 19:00〜21:00(18:45 受付開始)

場所:GMOペパボ株式会社(最寄駅: 天神駅)

住所:福岡市中央区天神2-7-21 天神プライム7F
(空港線天神駅から徒歩5分、西鉄天神駅から徒歩5分)

タイムテーブル

時間 発表者 内容
18:45-19:00 - 開場(受付開始)
19:00-19:05 piacere はじめに
19:05-19:10 全員 「どこから来たの?」で自己紹介しあって場を暖めてー(^o^)
19:10-19:20 SIマイスター
tuchiro
#1-LT:ElixirでSI案件開発を始める
     第2回「DBラッパーEctoのchangesetでお手軽入力チェック」
19:20-19:40 takasehideki #2-セッション:ElixirでIoT
     第2回「環境センシングとデータ表示をサクっと?やってみた」
19:40-19:50 e-ZUKA Tech Night
主催
ハウインターナショナル
谷口 耕平
#3-福岡スペシャルLT:
開発初心者の学生が Elixir x Phoenix でWebアプリを作れるのか!?
19:50-20:00 カーネルハッカー
zacky1972
#4-LT:ZEAM(Zacky's Elixir Abstract Machine)開発ログ
第3回「AI/MLを爆速に!ElixirでGPUを駆動すると驚きのパフォーマンスに!」
20:00-20:10 kobaru #5-LT:Mnesiaで分散ノードに入門してみた
20:10-20:20 性能探求者
y_ueno
#6-LT:ETS/MnesiaとFlowで高速スモールデータアナリティクス
20:20-20:25 スポンサー紹介動画
20:25-20:35 福岡Elixirプログラマ
piacere
#7-LT:マーケティングに強いCTOが語る技術未来とElixir
第3回「1家に1台、パーソナルなデータ分析AIを全員が持つ2020年を作る」
 ~ブラウザのUI上からサクっとデータ分析プラットフォームを構築する~
20:35-20:55 力武健次技術士事務所
 所長
技術士(情報工学部)
ペパボ研究所
 客員研究員
力武 健次
#8-福岡特別セッション:
 スウェーデンのElixirカンファレンス(Code BEAM STO)レポート
21:00-22:00 - ♪~ 懇親会 ~♪
-22:00 - 閉会

持ち物

お名刺を受付でお渡しいただければ、スムースに受付が完了します
(プラス数枚、名刺持ってきていただくと、懇親会での交流がスムースになります)

LT発表者の方は、LT資料の入ったPCを持参してください
※当日、プロジェクターに接続(HDMI)いただき、発表していただきます

その場でコードを試したい方も、PCを持ち込んでいただいてOKです

なお、ゲストWifi利用可能ですので、Pocket Wifiやテザリング端末は無くても大丈夫です

福岡Elixirコミュニティ「fukuoka.ex」とは?

「fukuoka.ex」は、大量アクセスのあるWeb・APIサーバ構築や、ビッグデータ分析/AI・機械学習向けデータ加工といった、「膨大なアクセスやデータの高速処理」と「高い開発効率」を両立できる関数型プログラミング言語「Elixir」と、そのWebアプリケーションフレームワーク「Phoenix」を福岡で広め、ワイワイと盛り上げていくコミュニティです

Elixirは、シンプルな言語仕様により、「プログラミングが初めて」という方でも比較的とっつきやすく、同時に、関数型言語にありがちな複雑さ(トリッキーな構文、数学やアカデミックに走り過ぎる、等)無しに関数型の強力さだけを抽出した、現実のアプリケーション開発を行うエンジニアに寄り添ってくれる言語です

Phoenixは、Webアプリケーションの世界では、最もメジャーな「Ruby on Rails」を作っていたメンバーによって開発された、大量アクセスと高速分散の捌きが得意なWebアプリケーションフレームワークで、Rails同等の高度なWebアプリ開発を、とても気軽に行えます(中でも、WebSocket性能は、あらゆる言語のFW中でも最速)

「fukuoka.ex」では、MeetUp(登壇会/勉強会)やプログラミング入門会、もくもく会、ハッカソン等を通じて、「Elixir/Phoenixの習得機会」と「実際のアプリケーション開発に役立つノウハウ」の提供を定期的に行うことで、福岡でのElixirプロダクション採用を増やし、Elixirに触れることで得られる「プログラミングの楽しさ」を福岡のエンジニアに体感する機会を増やすことをビジョンに掲げています

「でもElixirって、使いづらくて覚えにくい『関数型言語』でしょ?」

一般的に「関数型言語」と言えば、言語の習得が難しく、組織として選定しづらいイメージがありますが、Elixirは、言語仕様や構文がシンプルかつ簡単なので、「育成や習得の容易性」を切り捨てること無く、関数型のメリットも享受できます

関数型のメリットは、以下の通りです

  • 状態が無いことで、同じ入力を何度行っても同じ出力しか返さないので、意図しない挙動にならない
  • 変数がイミュータブル(作成後にその状態が不変)なので、マルチスレッドや並行処理で競合しない
  • プログラム構造が小さな関数群で構成され、シンプルに保たれるため、変更容易性が向上する
  • 少ないコードで、凝縮度の高い高度な処理が書ける
  • リスト設計に慣れていくと、他言語で数百行かかる複雑な処理も、数行のコードで組むことが可能になる
  • できあがったコードは、オブジェクト指向言語の1/100の量になることもあり、見た目も100倍エレガント
  • オブジェクト指向言語経験者の移行は大変(関数型全般に言える)だが、移行後は、何倍も生産性が高まる

更に、「Elixirならでは」の以下メリットも上乗せされます

  • 習得がカンタンなので、プログラミング経験が無い入門者・初級者向け
  • 関数の引数でのパターンマッチが可能で、呼出時の事前条件チェックや関数呼び分けには、快感すら感じる
  • JSONパースが得意なので、Google APIやBacklog API等、様々なWeb APIとの連携に強い
  • マルチコアCPUを簡単にフル活用できる
  • マルチクラスタ(AWS、GCP、Azure)のスケールアウトも楽々実現
  • 長期間の安定運用を実現してきた「Erlang VM」の元で動作する
  • データ変換とバイナリデータ検索に特化しているので、ファイルヘッダ解析やIoT/ドローン制御にも向いている

実際に、Elixirがどの位カンタンに習得できるかは、「ExcelでElixirマスター」シリーズをご参考ください

p.s.

ただいま、みなさま参加型の「fukuoka.ex祭り ~最初の派手な1年(あなたも join!!)~」を開催しています

今年、福岡におけるElixirを大いに盛り上げ、Elixirによるプロダクト開発/SI案件開発の採用と導入をサポートすることで、2020年以降、IT業界に訪れるであろう「人手不足」「データ量爆発」に一早く対策を打ち、2020年以降にIT・SI業界を福岡+Elixirでリードしていければ…と考えています

いま進行中の企画は、「fukuoka.ex運営メンバーのインタビュー記事リリース」と「季節外れのfukuoka.ex Advent Calender」の2本です

■fukuoka.ex運営メンバーのインタビュー記事リリース

第1回:fukuoka.ex代表「piacere」とグロースハッカー「ゆじかわ」

第2回 :SIマイスター「つちろー」と性能探求者「enぺだーし」

第3回 :カーネルハッカー「ざっきー」と今後のfukuoka.exの展開

■みなさま参加型「季節外れのfukuoka.ex Advent Calender」

Qiita Advent Calender、毎日投稿中!

以下5本のシリーズが、並行で連載されています

「ExcelでElixirマスター」シリーズ
「ElixirでSI開発入門」シリーズ
「ElixirのGenStage/Flowに入門する」シリーズ
「ZEAM(Zacky'z Elixir Abstract Machine)開発ログ」シリーズ
「ElixirでIoT」シリーズ

注意事項

※ こちらのイベント情報は、外部サイトから取得した情報を掲載しています。
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。

関連するイベント