経済卒だけに、日常や人生のあらゆる面に効用の(俺の中の)概念を当てはめてる。意味がないことや、非効率的なやり方を我慢するのが難しかったりする。もちろんその分の金もらえるなら、我慢の限度も上がる。それでも短期的な効果がみえにくいことや進捗が測りにくいものは苦手。
そして言語が好き。別にプログラミングに限らず、言語のこと読んだり、使い方とかの入門をみたりするのが楽しい。例えば去年の今ころはアステカのナワトル語がマイブームだった。数年前はアイヌ語だった。今はハマる前提でどの(今回はプログラミング)言語にしようかを検討してる。
問題は、ナワトル語にせよアイヌ語にせよ、母国で上級まで勉強してきたドイツ語でも、日常的に使わないと絶対できない意識はある。人間の言語はまだ、本を読むとか、ネットでそれを使うコミュニティーに参加するとかはできるが、身につけるのが難しいし、熱が冷めちゃう。プログラミング言語はそれもできない。さすがにコードをみるだけでその書き方とか考え方がパパッと身につくほど頭の性能がよくない。
ならば使うしかない。運良く、今日ではプログラミング言語で”しゃべり合う”場がネットにある、それはオープンソースの世界。皆で協力してソフトを作る。その書き方とか、考え方とか、設計の仕方とか、教え合う。それならできる気がしてきた。
現状は何に協力するかはまだ模索中。プルリク1つだして、もう一ヶ所にコメントで訂正を提案した位で、まだ一歩目。
だが俺はこれが正解だと思ってる。
OSSに参加することによって一番効率的に能力の向上を図れる。ハードルが高いと思う人はギットで新人用ってタグがついてるものを探せばいい。大きなプロジェクトはたっぷりある。怖がらない人は躊躇なく新機能を提案したり、開発の全線に迷惑かけにいってもいいと思う。
大きな作品、大きな共同作業に参加することでチームの一員としての自分に必要な能力も身につく。小さなアプリや社内のものばかりみても、世間がどうなってるかわからないし、あの専門家この専門家が言ってる”ベストプラクティス”とかデザインパターンやあれこれ指向設計は、実践でどう使われるかが見える。
OSSが企業のものとくらべて責任感が薄いので、いつも最前線になる。会社のものではさすがに試せないがここで許されるなら実験できるというのもある。さすがにインフラ設計は難しいとは思うが、それを支援するプロジェクトだったら理解のある人がきっといる。貢献できなくても、質問はできる。(最悪無視される。)
個人的に月一でどっかのプロジェクトにプルリクあげるという方針にしたい。それくらいはさすがにできる。(通るかどうかはおいといて。)