今からプログラミング言語を学習するなら...Goです!
Go言語です!
ちょうど少し前に、Go言語プログラミング環境をセットアップの記事を書いたところでした。まさにオンタイム。
以下は、個人的な意見になりますがご容赦ください。
そもそもなんでやろうと思ったか
アウトドア派と言えるほどでもなく、かといってTVで野球がっつりでもなく、はたまたYouTubeやTikTokに没頭するほどでもなく、のような時間の消耗を続けてきました。 せめて週末に没頭できそうなものはないだろうかと探していたところ、そういえば昔々少しだけプログラミングかじってたな、と思い出したのがきっかけです。
本格的なプログラマーだったわけではありません。 期間も短く理解が浅かったことも手伝って、今ではその内容はほぼ覚えていません。残っているのは、PCはそれなりに使えることと、当時の名残りもあって今でもキーバインドがEmacsライクに慣れているというくらいです。ものはつくれません。
プログラミングを学ぶと何か良いことがあるか
世間では、プログラミングが小学生?くらいの教育カリキュラムに組み込まれたり、オンラインスクールがものすごい数になっていたりと「プログラミングができる、もしくは理解がある」「論理的思考はたしなみ」といった流れは以前よりは確実にあると思いますので、これに応えるという意味でプログラミングを学ぶのは良いことかもしれません。
あるいは、同業転職で年収をあげたい、異業種転職で一発かましたい、という場合、それら相場事情に合ったプログラミング言語を習得してチャレンジしやすくなるのであれば、やはりこれも良いことです。
いっぽうで、私の場合はといいますと、
ソフトウェアはそれ自体が物理的な形で残るわけではありませんが、ソフトウェアのためのプログラミングは確かにモノづくりです。 モノづくりを趣味にできるのは自分にとっては良いことだなと感じています。うまくいけば仕事や生活に多少活かすこともできるかもしれませんし。
なぜGo言語を選んだか
実はたいした理由はありません。 Google検索をするとおすすめ記事がヒットします。そこから名前の響きや雰囲気で適当に絞り込み、そのあとに個別についてもう少し確認する、という流れをとりました。
この3つが候補でした。あくまでも自分比ですが、名前の響きがかっこいいものを選んでいます。
そしてここから実際にそれぞれの詳細を調べたわけですが、言語仕様や用途など高度な内容は私にはまったくわかりませんので、受けた印象をまとめます。
Golang(Go言語)
- 覚えるべき基礎文法は少なめ
- 比較的新しい、という意味で積み上げによる複雑さがそんなでもなさそう
Python
- 研究分野で便利に使われている
- AI(機械学習・深層学習)領域でよく使われている
Rust
- いちばん響きがかっこいい
- けど斜め読みしても本当にまったくわからん
こんな感じでした。 最終的には「学ぶための難易度を可能な限りは抑えたい、最初だし」という趣旨でGo言語になりました。Pythonは過去の歴史がそれなりにあるようでしたので避けました。Rustはもう、まったくもってもう、わかりませんでした!
名前の雰囲気と学ぶのが大変じゃなさそうなやつ、というガチプログラマーさんに怒られそうな選び方をしていますが、学習を続けることの優先度をあげてるのでこうなりました。
というわけで、一緒にGo言語やりましょう!