人生に対するモチベーションは上昇傾向だったが、エンジニアとしてのモチベーションが揺らいだ時期も多かった2023年。
とはいえ、モチベーションを見失っている中でも、なんだかんだで多くの挑戦をしていた。
Summary
3月にオンラインイベントでの初登壇を果たす。ブラウザのレンダリングの仕組みに関する発表を行った。
それを機に、レンダリングを深掘りしたくなり、OpenGL/WebGLを勉強し始める。描画負荷を実感するために、GLSLでCSSフィルタ等の再現実装をして遊んでいた。そのうち、ジェネラティブアートやデモシーンなど、芸術的な方向に憧れを抱くようになる。
一方で、これを続けて将来に活きてくるんだろうか?という疑問も抱えるようになり、打算的になるあまり、好きなこともやりたいこともやるべきこともよくわからなくなる時期が来た。
その頃、季節は夏。不調を抱えながら上京を決行した。エンジニアとしての自信を取り戻せないなら、まずは自活によって人間としての自信をつけよう、と思ったのが根本的な理由。
上京後、会社の先輩と対談する機会に恵まれたことで、スランプを完全に打破する。
自己満足でいいから、得意を広げ、好きを極めていくことに自信を持てば、自然と「誰も代われない」方向に進んでいけるはず。
さらに、開発合宿ではWebGL/GLSLベースの画像加工アプリを開発し、初めてこの分野の成果を共有できたことで、好きなことを極める勇気を持てるようになった。
意思を持った選択
エンジニアになりたての頃からずっと、自分の選択に根拠を言えるようになることが目標だった。
どのような意図で、このようにしたのか。
具体的な例を挙げれば…なぜこのライブラリを選んだのか。なんであえてこの書き方にしたのか。この設計/デザインで目指したものは何か。…etc.
個人開発時代は、良し悪しを自分でジャッジすることもできず、「なんとなく」の好みで技術を選択し、「なんとなく」コードを書いていたのだ。
2022年末に入社して以来、ありがたいことに、やや一筋縄ではいかない実装を任せてもらえることもあり、コードレビューで「どうしてこうしたの?」と聞かれることが多くなってきた。
その中で、突っ込まれそうなポイントをだんだん自覚できるようになってきたし、その「あえて」の選択に対する理由をちゃんと持てている自分に気づいた。
これは2023年に成した小さな一歩と言ってもいいかもしれない。とはいえ、まだまだである。
自分なりの意思を持った選択ができるようになるには、三つの要素が必要だと考えている。
- 根拠として提示できるだけの知識
- さまざまなシチュエーションを検討する想像力
- コードや設計に対する自分なりの価値観と美的感覚
これらを培っていくことが、引き続き2024年の抱負になる。
そして、理由や意思がちゃんとあるのなら、最初からそれを伝えることを厭わないようにしたい。
先が見えないまま進む勇気
プログラミングの学習を始めてからもうすぐ3年になる。
2023年に新たに始めたのは、WebAssembly、WebGL、GLSL、Haskell、Rustあたり。(HaskellとRustに至っては年末に始めたばかりだが…)
WAT(WebAssembly Text Format)やGLSLは一般的なプログラミング言語とはまったく異なる感覚で挑まなければならないし、WebGLや関数型プログラミングはそもそもの考え方に慣れるのに時間がかかる。
理解を助けるアナロジーに使える知識は当然増えているが、HTML/CSSを一日で習得したような、初学の頃のスピード感で進むことはそもそもできなくなってきている。難易度の差を考慮せずに無理に焦ると容易に挫折するし、実際何度もそうなりかけた。
プログラミングに必要なのは解る能力よりも、解らないまま突き進む勇気と忍耐かもしれない。最初から解る人なんていない。いつか解る日を信じて手を動かし続けるかどうかにかかっている。
二ヶ月もあれば状況は変えられる
とはいえ、終わりが見えないと気が滅入ってしまうのが人間。適度な焦りと鼓舞を持ち続けるには、ある程度リミットを設定するのも必要で、最近は「とりあえず二ヶ月頑張ってみる」ルールを定めるようになった。
二ヶ月というのは、あくまでも私のペース。GLSLも勉強し始めて二ヶ月くらいでオリジナルを作り始めた気がするし、悩みや不調を完全に解消して、新たな指針を見つけるのにも毎回大体二ヶ月くらいかかっている。
二ヶ月というのが大体、私なりに何かを消化/昇華できるペースなのだろう。
常に危機感を持って変化し続けようとするのは良いことだが、すぐには変えられないことに真面目に向き合いすぎて、ペースが乱れたことが結構あった2023年。ちょっと生き急ぎすぎていたと思う。
短期目標を立てるなら、「二ヶ月後にはこうなっていたい」という基準で考えて、焦らず取り組むのがちょうどいいと思った。
そして一年という時間があれば、そのサイクルを6回も繰り返すことができる。そう信じてコツコツ頑張れば、2024年もちゃんと成長できる年にできるんじゃないかなと考えている。