この記事は LTS Group Advent Calendar 2024 の11日目の記事として執筆しています。
最近の生活を通じて感じた「基礎の重要性」について、技術的な視点も交えながらお話ししたいと思います。
※技術記事というよりは、体験談を中心とした内容です。
はじめに
「基礎は大事」と言うと、今さら感があるかもしれません。しかし、日々の生活や仕事を振り返る中で、私自身が改めてその大切さを痛感する出来事がいくつもありました。
まずは私の背景について簡単にお伝えします。
私は新卒3年目のWeb開発エンジニア兼データエンジニアです。
主に Ruby on Rails を使ってきましたが、9ヶ月前から Python に本格的に取り組むようになりました。
Djangoを使ったWeb開発とデータ加工のスキルを同時に身につける必要があったため、「とにかく書いて動かす」というアプローチでPythonを学びました。
正直なところ、基礎をじっくり学ぶ余裕はありませんでした。
しかし、最近ではコードレビューを担当することが増え、後輩たちの成長に触れる中で、自分も「もっとPythonを深く理解したい」と強く思うようになりました。
そこで、改めて「基礎の重要性」を実感した出来事をお話ししたいと思います。
1. ひよこ鑑定士の基礎力
「若いうちにしかできないこと」を調べていた際、「ひよこ鑑定士」(正式名称「初生雛鑑別師」)という職業に興味を持ちました。
この仕事では、生まれたばかりのひよこの性別を判別する技術を習得します。資格取得には、約5ヶ月間の集中講習が必要です。
その過程で、日本チャンピオンに輝いた方の記事を読みました。
この方は訓練初期段階の「脱糞」と呼ばれる基礎技術に苦労し、同期が応用技術を学び始める中でも、基礎練習に専念して努力を重ねたそうです。
私が同じ状況であれば焦ってしまうところですが、チャンピオンの方は「基礎の先に飛躍がある」という考えのもと、焦らず黙々とやっていたとのことでした。
私は、この記事を読んだ後、それまでなんとなく使っていたPythonの標準ライブラリのソースコードを読む習慣を始めました。今まで、ライブラリという基礎を疎かにしていたなと感じたためです。
最初はライブラリを読むのにも苦労しましたが、徐々にPythonの流儀のようなものが掴めてきたように思います。
また、基礎を深く理解することで、以前はあまりよく分からずに時間がかかっていたエラー解消がより短時間でできるようになりました。
2. 祖父の体験談:叩き込まれた基礎が築く信頼
私の祖父は冠婚葬祭業で経営者をしており、働き方や今後の相談をする際に、昔の経験談を聞くことがあります。
その中でも、特に心に残っているのが、祖父が18歳頃に経験した話です。
祖父は高校卒業後、京都の仏壇具職人の元で丁稚奉公をしていました。
そこで業務外ではありますが、興味で仏壇の原価計算表を3ヶ月間読み込み続けた結果、仏壇具を見ただけで原価をほぼ正確に判断できるようになりました。
当時、祖父は見積もりを任される立場ではありませんでしたが、急な依頼時に控えめながらも正確な見積もりを助言することで、徐々に信頼を得ていきました。
基礎力を元に、自ら築く信頼の大切さを教えてくれました。
この話をきっかけに、私はレビュー時のコメントの比重を変更しました。
今までは、ここはもっと短く書けるのでは?ということをメインでコメントしていましたが
基礎に則って「できるだけシンプルに」「同じことを繰り返さない」という原則に重きを置いたレビューに変更しました。
ここは短く書ける、というのはその場でのコメントであって、信頼の高いコードを書くにはもっと原則に忠実なコードが重要だと思ったためです。
3.「世界一流エンジニアの思考法」から見た基礎力
最近読んだ『世界一流エンジニアの思考法』という本にも、基礎の重要性が強調されていました。その中でも特に印象に残ったのが、次の一文です。
基礎的なことがうまくできない段階で、下手に試行錯誤して自分流に考えてアレンジすると、かえってめちゃくちゃになって成功しない
この言葉が示しているのは、基礎の重要性です。
基礎が整っていない状態で応用に手を出すのは、砂の上に建物を建てるようなもので、最終的には全体が崩れてしまう、ということです。
しっかりとした基礎があれば、余計なエネルギーを使わずに、コードを完全に理解しながら効率よく読み書きできるようになります。
さらにこの本では、何も検索せずにすぐ実装できるレベルの基礎をどれだけ増やせるかが、長期的な効率を左右する旨も記されていました。
現在の私は、困るたびに検索を頼ってしまいがちですが、本を読んで「基礎力を鍛える必要性」を改めて感じました。
この本を読んだのを機に、私はこれまで苦手意識があった正規表現の基礎を学び直しています。
正規表現を何も検索せずにすぐ実装できるレベルまで持っていければ、当面の間の時間効率が上がると感じたためです。
練習を通じて、以前は敬遠していた正規表現が、実は分解して考えると面白く、効率的な記述法を探る面白さに気づきました。
これも、基礎力を鍛えられたからこその気づきだったと思っています。
結論
「基礎を固めること」は地味で時間のかかる作業です。若手のうちは、早く成果を出したいという気持ちから
知らずのうちに基礎を軽視していることもあるでしょう(私がそうです)。
しかし、長期的なスキルアップを目指すのであれば、基礎はやはり大切です。
ひよこ鑑定士の訓練、世界一流エンジニアの思考法、祖父の体験談はどれも、「基礎が応用を支える」ことを教えてくれます。
私も引き続き、基礎力を高める努力を続けていきます。この記事を読んでいるあなたも一緒に、基礎をより積み上げませんか?