大切なのは基礎学力
こんにちは、高木です。
これまでの自分の人生を振り返ってみると、結構長い期間プログラマーとして活動してきたなあと感じます。
プログラマーといっても、自分で営業して仕事を取るなど、決してプログラミングだけに専念してきたわけではありませんが……。
その間に関わる外部の技術者はオープンソースの活動をしている人たちなど、結構レベルの高い人達が多かったように思います。
若手の経験が浅いプログラマーと関わる機会はほとんどなかったので、そうした人たちの状況はあまり知らずにいたのです。
若手で経験の浅い技術者にも、優秀な人は少なからずいます。
「優秀な人」といっても、経験が浅いだけに実際の実力は大したことはありません。
けれども、これから伸びるだろうと確信できる人たちなのです。
一方で、かなり将来が厳しいのではないかと心配になる人もいます。
これから経験年数だけは重ねていけるかもしれませんが、歳相応の実力を身につけられるとは思えないのです。
両者を比べてみたとき、何が違うのかを把握するのは大切なことです。
ひとつは、生まれ持った素養のようなもので、これはほとんど遺伝で決まるのではないかと思います。
もうひとつは、基礎学力の違いです。
生まれ持った素養については、ジタバタしたところでどうすることもできないと思います。
ですので、もし将来が不安視されるような技術者は、自分の基礎学力がどうなのかを検証してみるとよいでしょう。
基礎学力ですので、大学や専門学校で習うような高度なことではありません。
主には小学校や中学校、すなわち義務教育で習うようなことが、どれだけ身についているかが重要なのです。
たとえばこういうプログラマーがいます。
自分が書いたソースコードにミスがあってコンパイラがエラーを出したとします。
エラーになったことはわかるけれども、エラーメッセージが英語なので拒否反応を起こして手も足も出ないのです。
コンパイラのエラーメッセージが英語だったとしても、中学校程度の英語力があれば容易に理解できるはずです。
けれども、辞書を引くでもなく、英語で書かれると「とにかくわけがわからない」と決めつけてしまうのです。
中学や高校のころに英語が苦ってだったのかもしれません。
それはそれで別にいいんです。
けれども、仕事で必要になったのなら、子供のころに習得できなかった学力を血の滲むような努力で挽回するしかないじゃないですか!
英語だけではありません。
画面に絵を描こうとすれば、ごく簡単なものでも幾何学が必要になります。
これも義務教育で習ったことが役に立ちます。
中学校のころ、数学が苦手な生徒は決まってこういっていました。
「こんなことを習ったところで生活には何の役にも立たない」と。
けれども、プログラマーになった以上は、そのころに習ったことが仕事に直結するわけで、それはすなわち生活に直結しているのです。
屁理屈をこねて中学時代に勉強を怠ったツケは確実にまわってきます。
私は学歴だけで人物を評価することはまずありません。
しかし、学力、とくに基礎学力は必要不可欠なものだと考えています。
学力に乏しい人物が人間として価値が無いとか、そういうことではありません。
仕事をする上で必要な学力が無いのであれば、それを補うために必死で努力すればよいのです。
努力もできないのであれば、学力を必要としない職業を選ぶべきです。
いろいろ偉そうなことを書いてしまいました。
それについて私を非難することは一向にかまいませんが、私を非難したところで学力が向上するわけでもなければ、現場で窮地に立たされている若手の技術者を救えるわけでもありません。
もし現時点で窮地に立たされている方は、現状を正確に把握し、足りないものがあれば一刻も早くそれを補う努力を始めるべきなのです。
スタートが1日遅れれば、それだけ状況は悪化します。
仮に今、25歳だとすれば、中学1年生から勉学を怠ったのであれば、すでに12~13年分のツケが溜まっているのです。
フルタイムで勉学に取りくめたときにできなかったことを短期間で取り戻すには、どれほどの血と汗と涙が必要になるかを想像するのは難しくないはずです。