ねこものがたり

いちにちいっぽ

『Software Design 2021年1月号』を読みました

gihyo.jp

今年の目標で述べたように今年から技術雑誌の定期購読を開始しました。気持ちを上げていくためにも1月号からと思って購入していました。 発売は去年の12月で、もうすでに2月号もとっくに出ていてもうすぐ3月号が出ようかというこのタイミングで読み終わりました。

まずは”読む”というアクションを達成したので、何とかして習慣化を意識して毎月リズムよく楽しく読み進めていきたいです。

せっかく読んだので感想を簡単に書いてみます。

Go プログラミングスキルをレベルアップ 応用力を伸ばすために習得したい6機能

今の自分が最も興味持った記事でした。 今年に入ってからGoをやっていて、「スライスという概念が難しい」と感じていたので、特にスライスの節で初期化の方法がまとまっていたり、capなど基本的な操作がコンパクトな形で整理されているのが助かりました。今後Goをもっと習得していく中で並列処理も試して見たいので、その辺の高度な操作を実際に自分で試す時にも公式ドキュメントと合わせてこの号に読み返すと良さそうです。まだまだ入門途中レベルなので今後も何度も読み返していきたいと思っています。

パズルで鍛えるアルゴリズム

これも年頭に目標として掲げていたことですが、アルゴリズムを自分で理解し使いこなせるようになりたくて、今年はそれに少しずつトライしている最中です。虫食算を解く・作るためのサンプルコードがC++で載っていて「他の言語でも同じ考え方で実装できるよ」と書いてあることにときめきました。 GoをやっているのがRubyよりももっと低レイヤーでなんでもよしなにやてくれる組み込みメソッドはない言語を使って自分でアルゴリズムを書いていきたいからというのがあるんですが、Rubyに書き換えたりGoに書き換えたりして楽しんでみようと思ってます。 でも、この記事は連載物で今号が第6回目だったので1-5回目の連載記事も読みたいなとか、冒頭述べたようにすでに2月号が積読状態なので先に読まないとなという感じ。あわあわ。

まとめ

感想を2つ書いてみましたが、どの記事もめちゃくちゃ面白かったです。Rustでネットワークプログラミングとか、何もわからんけどやりたくなりました。"良いレビューを行う技術”とか明日かのレビューで実践したいし、メールが届くまでの仕組みの記事もよく理解したいなとか... ボリュームはあるので全部読むのはまま時間がかかりますが、楽しかったので、技術雑誌の定期購読をやろうと決めて大変良かったとすでに感じています。 2月号のWebAPI特集なども大変気になるので、早めに読んでおこうと思います。

2020年振り返りと2021年の目標

2020年の年始に書いた決意のエントリー

neko314.hatenablog.com

全部はできていなかったり、できたこともあったり、引き続き2021年もやっていきたいことがあったりするので整理してみます。

言語・フレームワーク

2020年はTypeScriptが「これは楽しい」と思うくらいには仕事でも書いたりして結果的に大変良かったです。 お仕事で書けたのは「やりたいです!」って言ってチャレンジさせてもらえたからなので、すごく感謝しています。

その前の2019年もJS(プレーンなJSそのものとVue.js、Nuxt.jsあたり)をやっていたので、この2年間弱くらいで「JS私好きだな」って思うようになりました。

それ以外に、列挙した言語の中でもう一つくらいやりたかったのだけど余力が足りませんでした。1年1言語というのは最低限やるとして、無理のない程度に2言語習得できると良いなっていうのが2020年振り返っての手応えです。

2021年は、GoとKotlinが自分の中で機運高まっています。(Kotlinずっと言っててずっとやってないw) 2022年くらいにRustができると良いでしょうか。

個人開発

急激にモチベーションが下がって何もしていないw

CSとかアルゴリズムとか

トライしてました!でもいきなり難しいことをやりすぎて出直しをはかっています。自分が想定していたよりもっと簡単なところから始めないとダメだっていう気づきが得られたのは良いことかと思っているんですが、そんな感じなので特段新しいことを習得はできていないかもしれません。 もう一つの気づきとして「アルゴリズム」という単独の分野として扱うよりも、例えば「Goをやりながら簡単なソートを実装する」という感じでやってみるのが良さそうだと思っています。2020年に途中で止まってしまった要因の一つがこれかなと感じています。実際、いつかAsakusa.rbで「自分で作るのが一番わかるよ」というアドバイスもいただいたので、やっぱりそうだろうと感じてます。

そのアドバイスいただいてから少し期間が経っているのですが、2021年はそれにチャレンジしていこうと思っています。ねたは『アルゴリズム図鑑』っていう以前買って読んだことはある本で、この中に出てくる処理を自分で実装してみようかと思っています。

読書

WEB+DB PRESS』とか『Software Design』あたり、気になった号をそこだけ読むという感じでやっていたんですが、定期購読していこうと思います。

それから2020年、夏に転職をしたんですが、転職後思いっきり読書しなくなってしまいました...それまでは月1,2くらいで技術書を読んでいたので、転職後の停滞感が半端ない。これは転職先がどうとかっていうことでは全然なくて、転職というライフイベントのバタバタ感に流されたというか、自分で時間をコントロールするスキルと意識が低かったことに起因していると感じています。「成果を出さないと!」と思って退勤後も夜ずっとコード触っていたりとか。

年末年始というちょうど良いリセットのタイミングなので、時間の使い方を良い方向に振り切っていきたいと思っています。読書量は以前のように月1,2冊ペースでいけたらいいなって思っています。まずは月1かな。

その他

1つ目:絶対に登壇したいって思っているわけじゃないというかむしろその逆だし「いやいや、登壇とかしなくていいんで」って気持ちがあるタイプの人間なんですけど、2021年にもし何かしら(LTとか)人前でお話しする機会があったら、技術的な話をしようと思っています。

2つ目:開発を(仕事じゃなくても)するようになって精神状態がパフォーマンスにこんなに直結するのかと驚いたり体感したりして、メンタルコントロールって超重要って感じています。今年は自分なりのメンタルコントロール手法を確立したいと思っています。メントレ受けるのも視野に入れたりしていますが、手軽なところでは定期的にカラオケに行く優先度上げようとか、そんなのもあります。 特に上半期で、自分の志向や価値観、落ち込む傾向などを分析して自分をコントロールするスキルを上げていきたいです。

まとめ

なんだか少し前まで「やりたいことがたくさんある!」って思っていたんですけど、最近少し減ってきて「たくさんはあるんだけど、一番はこれかな」って自分でわかってきたように思います。自分としてはなんと言っても新い言語をやるというのが一番楽しいし他の言語をやることでその言語で得られる楽しさを感じたり好きになったり、Ruby自体ももっと好きになったり「他ではこうだけどRubyはこう」と知れたりすることに充実感を覚えます。

このエントリーには書いていないプライベートなことも含め、2021年を幸せに生きていきたいと感じています。関わってくださったみなさま、2020年ありがとうございました。新年もよろしくお願いいたします。