Rustを使って2年 | 熱脳しゃちょのブログ

熱脳しゃちょのブログ

おせっかい焼SE兼プログラマ兼……の辛い日々と、思う事なぞ

ざっくりとした感想。

 

抽象度が低いので、ハードウェア層に近いプリミティブなシステムにはピッタリだが、クライアントのビジネス上の要望をガンガン叶えていくタイプの「なんちゃってSaaS」には不向きである、という感触を持った(言語的に可能は可能なのだが……)。

そういう場合はScala(without cats/scalaz)かJava。

特に黙ってJavaを採用することをお勧めする。

補充可能エンジニアの層の問題もあるし、「Excelが〜」とか言われることがほぼ確実な業務系のアプリは。

 

C++のようにメモリモデルやスレッドなどをがっつり把握しなくても安全にプログラムが組めるけど、PHPみたいにお手軽に組まれたプログラムがメンテ地獄を引き起こすポテンシャルは高い。

まだ仕様が不安定な部分があるし、改良されるであろう点もあるので(特に抽象化関連)、そこに追随できる余裕と技術力は必要。

あと半年から一年ほどしたら、破綻したRustプロジェクトのサルベージ案件が増えるんじゃないだろうか?(ちなみに、Scalaは二巡目のサルベージサイクルに入ったっぽい)

 

まぁ、正直なところ、ちゃんと組める人がちゃんと組めば、PHPであろうとRubyであろうと、メンテ容易に構築できるのだが(難儀ですが!)。

Webの記事を読んで「銀の弾見つけた!」って、深く読み込むことも原典にあたることもしないで、説明のためにスカスカにしたサンプルをコピペして、それを我流で育てることしかできないエンジニアを「勉強熱心でできるエンジニア」とか勘違いして全振りすれば、開発開始から一年後、あるいはリリースから一年後、エンジニアの逃散という地獄を目の当たりにするだろう、と予言できる。

そういう現場に三度入った身としては。

 

ビジネス的な成否はともかく、システム的な成否はほぼ↑で決まる、と言っていいと思っている。

新しいことに手を出したいというのは理解できないわけではないけど、完全に読み切りもしないで商用プロダクトでそれをやってはいけない。

そういう「チャレンジ」は個人プロジェクトでやりなさい。