何か流行ってんのかな?
Androidやってた層が、サーバサイドもやってみよう、というノリ?
かなり謎なのだが。
Javaとチャンポンにして書けるから悪くないけど、サーバサイドで使うには微妙、中途半端だと思うし、そもそも技術者確保し続けられるのかよ? という点で「なし」だと思うのだがな。
「チャレンジしてみたい」とか「これから伸びる」とかいうメイン技術者の「熱い思い」をくむと、2、3年後、こっぴどく裏切られるような気がする。
「AndroidでKotlin組めるから、サーバサイドでも大丈夫でしょ」は、サーバサイドの過酷さを前に逃亡を図ることになるだろう、と予言したい。サーバサイドが晒される「数の暴力」は、フロント技術者(一部なんちゃってサーバサイド技術者)には理解できないだろう、と確信している。あと「データの死守要請」とか「サービスを止めるな」とか。
技術者確保に難があってプロジェクトが死ぬというのは、Scalaでは既に結構な数が出てるんじゃなかろうか?
Scalaで組んで、オリジナルメンバーが一斉に退社とかいうところに巻き込まれた経験があると、この手の案件には苦さを感じる。
個人プロジェクトは自分自身が責任を持つから構わないけど、企業として、商用プロダクトとしてとなると「マジ、やめとけ」と、経営者には言いたい。
あるScala推しでやってたところは、自分のテコ入れ後、Scala技術者が確保できないから順次JavaにRewriteしているそうだし、別のところはScalaのVer1をそれなりのレベル(お客さんに詰められない程度)までテコ入れした後、仕切り直しのVer2でGoLangに移行(といっても、このGoLangも先行きが怪しい)。
ビジネスロジックが分厚い場合は、やっぱりJava一択かな? と思う今日この頃(薄い場合はRustがありかな? と。C++は細かすぎて体力がもたないような気がする)。
どうしてもJavaで書けない(書きづらい)ところだけScala。
特定プラットフォーム向けは用意されている言語を使うしかない。
そんな中で、わざわざサーバサイドでKotlinを使う意味がわからない。