ここまで出来るmruby
- CRubyとの違い
- RegexpやFileなどが拡張扱い
- mrbgemで拡張(エムジェム)
- 省メモリを生かして組込み用途へ
- mod_mruby
- ngx_mruby
- mrubyはLLのもう一歩先へ進める言語
- mrubyを活かすなら低レイヤー
- mrubyはソースコードが追いやすい
- build_config,rb
- rubyのDSL
- mruby
- ctagsを使うと言語を超えてdebugできる
- mrbgemのdebugはmrubyとのつながりが強い
- build_config,rb
- 深く理解するということ
- gdbデバッグ、Kernel, Craiburarino 周辺知識が得られる
- ミドルウエアやOSのボトルネックやパラメータに迫れるようになる
- Internetより俺のほうが詳しい体験
- mrubyはソースを読む
- C言語やmiddlewareのレイヤーはドキュメントを読む
- mrbgem化されていないライブラリ
- opennssl, thor, faraday
- まとめ
- mrubyを利用することで低レイヤーに強くなる
- middleware + mruby = 強い
- 他社に真似出来ない仕組みが作れる
小さく始めて育てるコンパイラ
オリジナルの言語を作るには
- 既存言語のサブセットとして最低限の機能を実装
- 欲しい機能を拡張として実装
- オリジナルの構文に置き換える
- → やらなければいけないことが
なぜ既存言語のサブセットとしてまずは実装するのか
- 構文のデザインを先にやってしまい、つまづくことが多い
- どういう構文がいいのかは実際に書いて動かさないと分からない
- 実装に詰まったときに既存言語を参考にできる
GoCamlはMinCamlをベースに作った
- MinCamlは教育用言語なので、シンプル
- バックエンドはLLVM
型推論期が多層的な型を推論できるように拡張
- LLVM IRには多相型はない
ランチセッション
- エンジニアがkintoneを使うべき3つの理由 サイボウズ株式会社
- 検索サービス開発が絶対におもしろいと思う理由 Supership株式会社
Make you a React: How to build your own JavaScript framework.
- hyperapp
- picodom
- hyperappのソースを読んだことがあったため、メモ少なめ
- セッション後
hyperapp
とpicodom
の今後の開発方針についてお話をさせていただいた- hyperappは無依存のフレームワークとして
- picodomは他のフレームワークのVirtual DOMエンジンとしての役割を持たせていくとのこと。
Factory Class
- キーボードを中国の企業で量産する際の話
- 工場選びで再重要なこと: ボスと直接ランチを取れるような関係と付き合うこと
- そうでなければ、自分たちが小さすぎる
- 工場の見学は必須である
- 中国では人と人とのつながりが重要
- 契約は重要ではない
- お茶の儀式が終わるまではビジネスの話はしない
- リリースされていない製品の写真を出してくることがある
- 主要なNDA違反になっているんだろうなと思って見ていた
- 各種書類を揃えておいたほうがよい
- Bill of Materials(BOM)
- 最も大切な資料
- それぞれの部品に対して詳細な仕様を決める
- どこから調達するかも記載する(1社からしか調達できないのか、一般品なのか)
- Dragon Standard BOMというテンプレートがよい
- Electrical design files
- ODMならデザインをしてくれる
- 今回は自分たちで作った(コントロール・フリークだった)
- Machanical design files
- CADなどで使用
- 2D図面図も作成
- Product Requirements
- なぜこの製品を作っているのか
- SWは誰が書くのか
- どうテストするのか
- → 工場では開いてはくれないが、自分たちの方針付けに重要な資料になる
- Manufacturer Survery
- 工場に対するアンケート
- 工場のサイズは大丈夫か
- 財務状況は大丈夫か
- 児童労働をしていないか
- Bill of Materials(BOM)
- 先方からの見積もりも、詳細度が重要
- 安すぎる場合何かが怪しい場合がある
The Evolution of PHP at Slack HQ
- 現在のslackの社員
- 社員: 約1, 000名
- エンジニア: 約400名
PHP
コアの部分にPHPを採用している
PHPは誰も使いたがらない
- しかし、影響力の強いWebサービスはPHPで書かれている
- Facebook, wikipedia, Wordpress, Flickr, etc…
なぜslack社ではPHPを使い続けているのか
- FounderがPHPを使っているから
- 既存のPHP資産を流用するため
- Hackを使うことによって、後方互換性を保ったまま不具合点を改善できる