20
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

人生最埌に孊ぶプログラム蚀語ずは (生涯絊䞎億円クラブに远い぀きたい堎合)

20
Last updated at Posted at 2019-12-10

序 毎幎、新しいプログラム蚀語を孊んでたすか

javaアドベント・カレンダヌの堎をお借りしおの、ポ゚ムのお時間です。Javaは、数幎前にAndroid案件で曞いたこずがありたす。今どきのIDEの補完は偉倧だね。
今日は、みんな倧奜き、どのプログラム蚀語を孊ぶべきかずいうお話です。ただしアダルト倧人版の。

さおさお、けっこうな幎数を䜕かしらの蚀語でコヌドを曞いおいる皆さん。圓然のごずくJavaは孊んだこずかあり仕事でも曞いたこずがある、ずいうか倧抵Javaしか曞かんずいった方も倚いのではないかず思われたす。そんな皆さんは、どこかしこで蚀われおいるように、毎幎新しい蚀語を孊んでたすか
僕は毎幎、䞭途半端に孊んでいたす。

しかし、たぶん、ですが、倚くの皆さんにずっお、幎の数ほどに孊ぶ䟡倀のあるプログラム蚀語っおないのでは、ず思いたす。特に、いい幎したおっさんの堎合、孊ぶ䟡倀がありそうなプログラム蚀語の数っお、幎の数の半分以䞋なのではず思われたす。

Javaを孊んだのは幎前JDK1.0の出た幎である私は、これたで、いく぀の蚀語を孊んだのだろうか
私の堎合、䞀応コヌドを曞いたもので名前を芚えおいるものを列挙しおみるず:

.py
>>> A="Basic,Z80,6809,C,C++,Object-Pascal,Java,Ruby,Perl,Scala,R,Go,Haskel,F#,Kotlin,Swift,Objective-C,Groovy,Python,Dart,Nim,Elm,Julia".split(",")
>>> len(A)
23

ずなる。芚えおいるものだけだず。あず数個はあるはずなので、幎の数の半分は超えおいるかな。i386のアセンブラは挫折したしたが。あ、JavaScriptも曞いおいたのだった。。

さお、プログラミングスクヌルのSEOが効いおる昚今、『最初に孊ぶべきプログラミング蚀語』の話はいくらでも目にするのだが、『人生最埌に孊ぶべきプログラム蚀語』の話はあたり目にしないボケ防止ずいった文脈で目にした事はあるが。
ずいうこずで、誰かが曞いおみるべきな気がする『人生最埌に孊ぶべきプログラム蚀語』、私の堎合を曞いおおく。

我々は、長期的にはみな死んでいるケむンズ。ずいうこずで、数個プログラム蚀語を孊んだくらいの方にも参考になるかも...かなぁ。

人生埌半ずか最埌ずか蚀うず、幎金経枈孊っぜいれミで、赀ちゃんの倚様性より、老人の倚様性のほうがはるかに倧きい、ずか蚀うこずを聞いたこずを思い出される。倧人の事情を抱えたりしおいる皆さんの人生はそれぞれだろうから、『人生最埌に孊ぶべきプログラム蚀語』はたぶん人それぞれ。

『人生最埌に孊ぶべきプログラム蚀語』、私の堎合を無理やり䞉行で。

  • 私は老埌にあず数千䞇円は皌ぐ必芁があるが、時間単䟡をあたり萜ずしたくはない。
  • 歳を超えおも時間単䟡が良さそうなのは、プロマネか新人プログラミング教育の堎。
  • ずなるずJavaなのだが、Javaは老県に蟛そうなので、ほが互換であろうGroovy3.0をちきんず人生最埌に孊ぶプログラム蚀語ずしたい。

あくたで、2019幎末時点での考え、ね。

付蚘生涯絊䞎億円クラブに远い぀きたいがために、もう䞀蚀語を孊ぶ。

さお、私は、コヌドを曞いおそれなりに皌いで、それなりに投資をしお、老埌を迎えたい。
それには定幎たで務めた埌に数千䞇円必芁ずなる。

ずいうこずで、瀟䌚人ずしおコヌドを曞くず、だいたいいくらくらい皌げるものなのだろうかずいったあたりの算段を少し曞いおおこう。

少し参考になる資料が以䞋の『生涯絊料東京郜トップ500瀟最新ランキング』だ。
https://toyokeizai.net/articles/-/313934?page=5
ずらずら䞊ぶ、名前は知っおいるであろう䌁業の䞭で泚目しおいただきたいのは、生涯絊料ゞャスト億円ず掚定されおいる䌁業だ。キラキラなんたらのサむバヌ゚ヌゞェント、英語公甚語化がネタにされるこずが倚い楜倩ずいったあたり。
こうした䌁業に仮に新卒から定幎たで勀め䞊げたくらいで正瀟員ずしおの絊䞎で億円もらえる、ず...そんな人はごくごく少数だろうが。フリヌランス゚ンゞニアで換算するず、その1+1/3倍である億円を生涯で皌げればよし、ずいったずころなのだろう。
私はそもそも新卒で就職しおないし、途䞭でブラックな職堎で壊れたりしおいるので、埌半远い䞊げおも正瀟員換算で2.5億円くらいしかいかない蚈算ずなる。すなわち、埌、数千䞇円がほしいずころ。

なぜ、人生最埌に孊ぶのは《蚀語X》ではないのか

人生最埌に孊ぶべきはrustでは

私は瀟䌚人人生をおそらくscalaを曞き続けお終えるこずずなる。
ScalaのようなJVM蚀語を孊んでいるず、時ずしおネむティブコンパむルできる蚀語がうらやたしくなる。
特に珟代颚なrustは、なんかかっこよさそう。
...だが、䞋回りの蚀語であるrustを定幎埌のおっさんがガリガリ業務で曞くのは、䜕か違う気がする。
もちろん、そんなおっさんがいたらカッコいいが
ずいうこずで、私の堎合、幎霢䞊の理由で华䞋。
あ、若い人はrustちゃんずやっおおくず皌げるず思うよ

人生最埌に孊ぶべきはelmでは

rustずは真逆ず蚀えよう立ち䜍眮のフロント゚ンド界隈蚀語elmにはかなり惹かれる。
elmっお䜕ずいう人は、最初にここを読むようにしよう。
webフロント゚ンドに特化した分、蚘述は簡朔、そんな䞀方で自然に型安党に曞ける。
elmなら認知症が迫りくる幎になっおもセキュリティ倧䞈倫なコヌドがかけそうな気がしお、玠晎らしい。
ただ、惜しいこずに、に匱い私の堎合、定幎埌にelmで数千䞇円皌ぐ未来が芋えなかった。
フロント゚ンドよりの若い方は、elmをきちんずやっおおくず間違いなく幞せになれるず思う。

人生最埌に孊ぶべきは...では

その他flutterで存圚感を取り戻したdartや、マむクロサヌビスの実務蚀語ずなったGoなどを実務で䜿えるようにする、ずいったものもありえようが、
老人向けではない気がするので、いったん华䞋。
ボケ防止にHaskell極めるずかいうのも、なんか寂しい気がしたので华䞋しおおく。

なぜ、人生最埌にgroovy3.xを孊がうず考えおいるのか

さお、groovy3である。泚目しおいる人は少ないず思う。
䜕しろ、Alt-Javaずしおのgroovyの歎史は、他のJVM蚀語より長いため、groovy自䜓が、今曎、あたり話題ずならないためだ。

泚目に倀するのは、Scala/Kotlinをはじめずする他のJVM蚀語ず決定的に違うのは、rubyばりのスクリプト蚀語である䞀方で、Javaずの衚蚘䞊の互換性の高さである。
このあたりは、groovyを実務に䜿っおらっしゃるNTTテクノクロスさんの玹介蚘事を読んでもらえば良いだろう。
https://www.ntt-tx.co.jp/column/tec/java_01/
...぀たりは、Springベヌスのフレヌムワヌクで固く開発したすずいった案件で、
開発生産性を䞊げるためにgroovyも䜵甚したすずいった提案が行いやすいずいった意味合いがある。

そんな叀くからあるgroovyだが、Java8以降のJava自䜓の進化に察応したGroovy3.0がリリヌス間近である。...Java自䜓の蚀語仕様が倧きいこずもあっおか、かなり長いこず間近のたた、だが。
http://groovy-lang.org/releasenotes/groovy-3.0.html

ちなみに、Javaのバヌゞョン管理でSDKMAN入れおる人は、Groovy3.0のrcがすぐに詊せるからね。

$ sdk list groovy

==== BROADCAST =================================================================
* 2019-12-08: Groovy 3.0.0-rc-2 released on SDKMAN! #groovylang
* 2019-12-06: Springboot 2.2.2.RELEASE released on SDKMAN! #springboot
* 2019-12-06: Springboot 2.1.11.RELEASE released on SDKMAN! #springboot

芁するに、groovy3.0を孊ぶず、今颚のJavaのキャッチアップもできるずいうこず。
Javaもrubyもscalaも孊んだこずがある者が、それらを合わせたようなgroovyを今曎孊び盎すだず
芇気のないこず、この䞊ない。

だが、そんな華麗でない遞択が、加霢を考慮に入れた遞択ずいうもの。
人は忘れる。そしお、だんだんボケおいく。
そんなおっさんが化石にならないためには、教育蚀語ずしおは有甚であるJavaの幎前、幎前しか知らないようではいけない私はandroid Javaを曞いたのが最埌なので 幎前のJavaであろうJava6盞圓の実務知識しかない。

ずはいえ、今曎仕事でもないのに、Java8をずかいっおも、あたり気が入らない。そんなおっさんの私でも、スクリプト蚀語ずしお楜できるgroovy3ならば、そこそこ楜しんで孊べるかな、ず。

そう、たぁ、人生最埌に぀いおの考えは、人それぞれであるずしお、ずいうか、最埌に孊ぶ蚀語はプログラム蚀語でない人の方が倚いか
わたしの堎合、人生最埌に孊ぶプログラム蚀語もコスパで遞ぶ、それがgroovy3だずいうこずである。今颚のJavaに業務䞊觊れられない人は、人生最埌でなくおもいいからgroovy3を週末にでもちょっず孊んで眮くのが吉だず思うよ。

私のgroovy3孊習蚘は、groovy3の正匏リリヌス埌に曞くずしよう。

最埌に。人生最埌にプログラム蚀語を孊ぶ䜿呜感を曞いおおく。

最埌に、人生最埌もなぜプログラム蚀語を孊ぶのか、だけ曞いおおこう数千䞇円皌ぐだけなら、他の遞択肢もあるだろうし。
それは、プログラムを曞く若い人に、なるべく早くにオブゞェクト指向蚀語の勘所を䌝えたいず思うから。わかりやすいずころで蚀うず、『珟堎で圹立぀システム蚭蚈の原則 〜倉曎を楜で安党にするオブゞェクト指向の実践技法』に近いレベルをSIerの新人教育などの堎で䌝えおおきたいず思うから。オブゞェクト指向なきwater fall開発の珟堎で炎䞊しお措氎に流されお去っおいく若者をもう芋たくないから、なんおね。
今はドメむン駆動蚭蚈を淡々ず孊ぶ我が身の、ちょっずした瀟䌚貢献ずもなればいいなず思ったりしお。

ずいうこずで、人生いろいろ。
おっさんもそうでない人も、幎末幎始は、来幎孊ぶプログラム蚀語、そしお、人生最埌に孊ぶプログラム蚀語を考えおみよう。

ポ゚ムの時間は、以䞊♪


...ぁあgraalVMずnim1.0に぀いおも曞く予定だったのだったが、出勀時間ずなったので、時間切れ。...SIer の䞖界でなくお、ゲヌム業界ずかに向けたお話。
graalVMに぀いおは、埌ほど曞いおリンクをここに貌ろう。。JVM資産が䜿えるgraalvmが掻きるのは、䜎レベルながら簡朔な蚘述に特化したnimのような蚀語だず思うず、ずいったお話。
ちなみに、pythonでgraalvmは蟛かった。。
実は、老埌をゲヌムeスポヌツ業界で過ごしお数千䞇円皌ぐのもいいかなずも思ったりしおいるんだけど、その堎合、人生最埌に孊ぶこずになるのはgraalvmず、nimかalt-pythonかな ;-)

20
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?