一年間、週一でElixirの実績を積んでみて
①初めに
・Elixirを学び始めた背景や動機
僕のElixirとの出会いは2020年の4月終わりpiacereさんこと、森さんに出会って月一の『Elixirの芽をめでる会』の司会を務めるところから始まります。
Elixirを使った新しい技術に触れている内に『魅力や可能性に惹かれ』て、アルケミストの道を牛歩ながら進むことにしました。
・Elixirを使用することになったバイトの概要
2022年の9月、僕は個人的な理由で東京に引っ越してきました。
そして、丁度東京でElixirのバイトを募集しているところがあって
運命に思い、応募しリモート面接を受けたところ無事採用されました。
それが黒田さんが開発している『Teamgenik』との出会いです。
https://coregenik.com/ja/teamgenik
かれこれ1年間お世話になっています。
TeamgenikはElixir/Phoenix LiveViewを採用したWebプラットフォームです。
フロントエンドもバックエンドもElixirをフルに生かして開発されています!
②Elixirの基本と特徴
piacereさんの記事を見るのが速い気がしますので一読を!
https://qiita.com/piacerex/items/09876caa1e17169ec5e1
③バイトでの実践経験
・具体的にどのようなタスクに取り組んだか
最初の月はリファクタリングが主で、gettextを調整しローカライズ等をやっていました。
業務に慣れていくにつれて、Webデザイン(tailwind,daisyui,alpinejs)をするようになったり、GenServerでデータベース回りを組んだりしました。
・遭遇した課題や問題、そしてそれらをどのように解決したか
やはり、最初の頃はGitコマンドの操作に苦戦しました。
業務の手順をTextにまとめて、流れを手に覚えさせました。
それでも、コンフリクト起こした際のマージやリベースはまだ苦手です。
次にDockerの知識も必要だったので、ネットで調べて覚えました。
Elixirで分からないことがあれば、先ず自分で調べて黒田さんに自分なりの考えを述べて、教えてもらいました。
でも結局はElixirのDocumentに書かれてある事が正ですので、読み込んで解決します。
④得られたスキルと知識
・Git
技術者なら言わずもがなですが、Gitがないとチーム開発が出来ないので必須
・Docker
Web技術者なら必須な知識です。環境を同じにして動かしてくれるのは神。
・Elixir/Phoenix LiveViewによる高速な開発
リアルタイムでコンパイルしコード修正したら即時反映されるのは神機能。
gettextで各種の言語設定ができるのは凄くよくできたフレームワーク
・Tailwind、daisyui、alpinejsによるフロントエンド開発
CSSをあまり気にすることなくHTMLだけ出かけるのはとてもいい機能。
・GenServerによるデータベースの流れ
アプリケーション立ち上げ時からのPIDから、データベース間のやり取りが凄くやりやすい。
⑤終わりに
個人的ではありますが、Elixirはとても良い言語でみんなにお勧めします。
Elixirを書いていて、もし自分のコードが間違っていた場合、何処が間違っているか教えてくれ、プロセスがきちんと止まってくれます。
エラーを読めば大抵のことは分かります。
また、Elixirは汎用性が凄く高いです。
ブラウザ、デスクトップアプリ、iOSアプリ、Androidアプリとクロスプラットフォームに対応しているので、ここで得たElixir知識は今後ほかにやりたい事ができても応用が利くと思います。
是非、Elixirの実績を積んでいきましょう!
この記事が気に入ったらサポートをしてみませんか?