投稿

2019の投稿を表示しています

Erlang & Elixir Fest 2019 に参加してきた

Erlang & Elixir Fest 2019 に参加してきました。
来ました pic.twitter.com/dtShHONnzH — もぷり (@Mopp_jp) June 1, 2019 その感想をメモを兼ねて時系列順にざっと思うままに書いてみます。
開始前 Erlang & Elixir Festは過去に何度か開催されていたようですが、自分は今回が初参加でした。
場所は永田町で、10時開場、10:30セッション開始というスケジュールで、10:10くらいに入場しました。

会場は縦に長く、中央にプロジェクターのスクリーンが1枚という構成でした。
後ろの方に座るとスライドがよく見えないだろうと思ったので前の方の席を探すと中央の前から2番目というかなりのいい席に座ることができてセッション中に不自由しなかったのがとてもよかったです。
セッション 超並列高速実行処理系 Hastega 〜 Lonestar ElixirConf 凱旋帰国 本日の Erlang & Elixir Fest 2019 の発表資料を公開します。#elixirfesthttps://t.co/OFdnRXZlaA — Susumu Yamazaki (@zacky1972) June 1, 2019
一つ目の発表はHastegaというElixirのコードをOpenCLに変換して分散処理をするライブラリ(でいいのだろうか)についての発表でした。名前の由来はFFの仲間を強化する魔法だそうです。現状はdefhastegaというマクロで囲んだ中にあるEnum.mapなどが変換され、並列処理されるようになるそうです。また、将来はdefhastegaマクロを使わずに、できそうなところは変換するようにしたいとも話していました。
スライドに性能評価はありましたが、コード生成の仕組みに悩んでいるとのことでリリースはされていないそうです。Hastegaを使ったコード例を見た限り、使う分にはシンプルそうでよさそうでした。
Erlang/OTP 22からはHiPEが非推奨になるのでそこも悩みどころ、と話しており、それについてツイートしたところ、記事を教えていただきました。
Joseから紹介された記事です。https://t.co/BcENYgWIPG — Susumu Yamazaki …

Elixir に入門したいので雑な 分散KVS を自作した

イメージ
長い連休を利用して、Elixir入門のために分散kVSを自作しました。
前書き 動機は以下の2点です。 Elixirに入門したかった何か自分で手を動かしたかった Erlangが書けるので同じErlangVM上の言語であるElixirが前から気になっていました。 丁度いい機会だし、入門してみるかな、くらいの気持ちで始めました。
初めてだったので、株式会社gumiが連載しているElixir入門の連載を開始(Elixir入門もくじ) - DEV Community 👩‍💻👨‍💻を参考にしました。単純な日本語翻訳ではなく、適宜加筆修正をしているようです。(後半に行くに連れて雑な文が増えているのが少しだけ残念でした。)
自分は集中力が無いので通読は苦手なのですが、23個の記事に全て目を通してから次を考えることにしました。Erlangと同じErlangVMで動くので、他の全く知らない言語よりは理解がしやすいだろうと思っていましたが、軽量プロセスやメッセージのやり取りといった基礎は共通していても、かなり機能が豊富、という印象を受けました。
なんとか全てを読み終わった後に、ErlangVMなので分散システムがいいな、と思い雑な分散KVSを作って見ることにしました。適当に検索したところBuilding a Distributed Fault-Tolerant Key-Value Store - The Blog of Fourthbitという、Apache Cassandraの概要を紹介しつつ、KVSの大事な部分の実装ぽいものを説明する、という記事を今回の目的にぴったりの記事を発見しました。この記事は実装するためにかなり参考になりました。 目標休みの間にそれっぽく動くところまで持っていくCRUD (Create/Read/Update/Delete) のインターフェースを持つ1台は落ちても読み書きができる耐障害性 出来たもの リポジトリはこちら
mopp/brownie: Hobby Distributed Key-Value Store 機能の概要N台1組のElixirクラスタを構築する実行時のノード追加は不可データはオンメモリで保持しているCRUD (Create/Read/Update/Delete) のインターフェースを持つElixir上の公開関数Key/ValueはE…

技術書典6にサークル参加しました

前回の技術書典5に引き続き、今回で2回目の参加になりました。
当日の感じを忘れないうちにブログに書こうと思います。

前回はメモリアロケータについての本、今回はプロセススケジューラについての本を書きました。
サークルの公開ページはこちらです。 当日の流れ 10時10分くらいには入場して、10時30分くらいには設営を完了していました。
設営完了した!
う36です!!!#技術書典pic.twitter.com/ffMo1ogh3u — もぷり (@Mopp_jp) 2019年4月14日
旧刊のメモリアロケータ本を50部、新刊のプロセススケジューラ本を100部の合計150部を持ち込みました。
売れた…!!! — もぷり (@Mopp_jp) 2019年4月14日 11時に開場で割りとすぐに1冊目が売れました。
2回目ですが「おお、売れたぞ…!」という気持ちになります。

前回は配置場所が入り口が近かったこともあり、開場してからしばらくはバタバタとしていた記憶がありますが、今回は入場一部有料化のお陰か混み合ってはいるが、まあ、隙間は見えるな、というくらいでした。運営スタッフの経験を積み重ねた改善を感じて素晴らしいですね。
また、今回は表紙や図を担当してくれているデザイナーさんが当日のお手伝いに来てくれたのでとても助かりました。
デザイナーさん(@manam_0)の名札アイコン #技術書典pic.twitter.com/ECw0qCtvkr — もぷり (@Mopp_jp) 2019年4月14日
ゆっくりと売れ進み、14時前には旧刊と新刊の両方が無事に完売しました。
mopprisの旧刊、新刊共に完売しました
ありがとうございます!!!#技術書典pic.twitter.com/CfjAbPtaRo — もぷり (@Mopp_jp) 2019年4月14日 この辺の画像は即興でデザイナーさんが書いてくださったのでとても感謝しています。

その後は会場を一回りして、自分の買い物を済ませたあとに早めの撤収。
そして、打ち上げをしました。
今回、買ったもの #技術書典pic.twitter.com/JTaPELN7WZ — もぷり (@Mopp_jp) 2019年4月14日 所感 かんたん後払いを使う人が増えていた 前回に比べて「すみません。現金のみです。」と発言した回数が多かった…