わざわざ学ばなくて良い言語第1位をわざわざ学ぶ理由公立はこだて未来大学大学院 修士1年Hodaka Hashiba
View Slide
意識高めの自己紹介• 名前 : 橋場 保鷹 (ハシバ ホダカ)• 所属 : 公立はこだて未来大学大学院• システム情報科学研究科• 分野 :• Webフロントエンド• 趣味 :• 写真撮影• 水泳• フットボール• GitHub ID : takachan-mirai
意識低めの自己紹介#springLT_hakodate で誰かが晒してくれます。(Twitter)
わざわざ学ばなくて良い言語とは?
わざわざ学ばなくて良い言語 2019• Codementorにより調査された• コミュニティのエンゲージ• 成長率• 雇用市場• これらの観点からどの言語が優位なのかランク付けしたもの左カラムが2018 右カラムが2019
Elm Language“A delightful language for reliable webapps.”• 信頼性のあるWebアプリのための楽しい言語(直訳)画像引用 https://ehsangazar.com/considering-elm-lang-for-future-6d8337f15d88
Elmは本当にわざわざ”学ぶ”必要がないのか
市場価値 ≠ 学ぶ価値
市場価値 ≠ 学ぶ価値• 市場価値の高い言語を学ぶことだけが重要ではない• 自身が美しいコードを書くためには様々な知識が必要• Ex. Javaを書くときにオブジェクト指向を知っていた方が良い• 分かりやすさ重視なので叩かないでね• 複雑な言語機能と同時に事前知識を学ぶのは難しい• 成長した言語はこの傾向がある• 学習ノイズになる
そこで †Elm †
わざわざ学ぶ必要のない言語第1位をわざわざ学ぶ理由学習者として学ぶElm公立はこだて未来大学大学院 修士1年Hodaka Hashiba
Elmの特徴• 非常に薄い言語機能とナウい関連知識• ランタイムエラーが発生しない• エラーメッセージがとっても親切• JAPANコミュニティが活発
非常に薄い言語機能とナウい関連知識• 学習コストが低い• 日本語の公式ドキュメント有• Elmと関連するトレンドな体系をエッセンスとして学び易い• 関数型プログラミング• テスタブル• フロントエンドアーキテクチャ(The Elm Architecture)• Etc.※”ナウい”が流行った時期と関連技術の流行時期に関連性はありません
ランタイム(実行時)エラーが発生しない• コンパイルのタイミングでダメなところを教えてくれる• JavaScriptは実行するまで何も教えてくれない
JavaScriptの茶番よし、準備できたな学校行ってきまーすいってらっしゃーいおなか減った…給食の時間あら…あの子お弁当箱忘れてるわエンジニア Elm Compiler
Elmの茶番よし、準備できたな学校行ってきまーすたかし、弁当箱忘れてるわよほんとだ!ありがとうカーチャン!エンジニア Elm Compiler
ママ...
エラーメッセージがとっても親切(1/2)• 殆どのコンパイラのエラーメッセージ• 行• メソッド• エラーイベント• Elm Compilerは上に加えて、• 今のコードは正しいコードと比べてどうなっているか• 正しくするにはどう書き直せばよいのか• 上記2点を自然言語っぽく出力
エラーメッセージがとっても親切(2/2)コードエラー画像引用: https://qiita.com/ababup1192/items/8dae437da47f25811658
続・茶番学校行ってきまーすたかし、靴の紐ほどけてるわよほんとだ!ありがとうカーチャン!蝶結びしたいなら- 両紐を絡ませる- 両紐を二つに折る- 片方のループをもう片方のループで囲む- 囲まれたループの根元をもう片方のループに通すでできるわよエンジニア Elm Compiler
ママ---!!!!!!!!
JAPANコミュニティが活発• Elm-jp (https://elm-lang.jp/)• Discordでオンラインもくもく会• 優しいおじさん達によるBeginnerチャンネル皆、同じママを持つ兄弟
まとめ : Elmを学ぶココがイイ!• 学び易い環境が揃っている• 薄く分かりやすい言語機能• 高度なデバッグ能力• 親切な日本コミュニティ• 今学びたい関連知識・技術を得られる• ソフトウェアアーキテクチャ• 関数型パラダイム• テスト
Elmやってみたくなった人✋
今すぐここへアクセスhttps://twitter.com/takachan_mirai
おわり