幼児期にプログラミングを学ぶメリットがあるのか?

sasint / Pixabay

最近子供向けプログラミングスクールが増えてる。スクラッチなどの言語を使い、ゲーム感覚で学べる優れた言語も増えてきた。

資本を投入している親御さんには申し訳ないが、だからと言ってみんなプログラマーになれるわけではない。

なぜならプログラミングはアートだから。誰でも作ることを楽しめるものではない

楽器を学んだ人が全員コンサートで満員にできないように
数学を学んだ人が全員数学者になるわけではないように

あの技術には向き不向きがあることは知っててほしい。どんなに学んだってプログラマーとして仕事をできる人は限られている。

振り返ってプログラマーとして仕事している人の何人がプログラムを作ることが好きなのだろうか?

結構な割合で、ただ作らされてる人も多いんじゃないかと思う。
プログラムは自動車のように流れ作業で単純化したから誰でも作れるものではない。

同じコードを何度も書く、みたいな仕事はないわけじゃないけど、そんなに多くなく、それは大事でもないまさにAIに置き換えられる仕事だ。

役割によって求められるスキルは多少異なるが、プログラマー全員にあてはまることは全部のプログラマーは自分で設計し、設計を実現する手法を考える力が求められることだ。

プログラマーにうつとか精神障が多いのは、好きでもないことを設計し、考えさせることが起きるからではないかと思う。

美味しご飯やスポーツや恋愛より、自分の設計やコードや変数を愛せるか。

それは万人に求められることではない。このことは今後も変わらないと思う。
ではプログラムを学ぶことが無駄かというと全くそんなことはない。

プログラムを学ぶということは論理展開を学ぶことでもある。

曖昧なものはプログラムにならない。
展開を明らかにし、フローを明確にしないと思ったものは作れない。
実行したいことを整理整頓してフローチャート化する、その論理を学ぶことは自分の考えを整理し、機械でも分かるように伝えることには将来役に立つ。

そしてプログラマーの文化に触れることはもっと価値がある。

金のためではなく試行錯誤して不可能を可能にすることを誇りとするハッカー文化
周りのエンジニアやユーザーを幸せにするために無償で自分の知識や経験をシェアするオープンソース文化
多くの人で複雑な設計やソースコードを共有するためのコーディングマナー

これらはここ最近できたことで、その文化に触れること、その文化を大事にして仕事することは学ぶ価値がある。きっとプログラマーという人種と会話するときにも役立つだろう。これは過去なかった人類のかけがえのない進歩の一つだから。

私は小学校4年制でBasicを学んだ。マシン語はやりたかったけど手がつけられなかった(笑)
8bitだったからPascalからCに移り変わるところでは手が出なかった。

その頃の経験は今役に立ってる。でもそれはプログラマーとしてではなく、プログラマーという人たちのポリシーやフィロソフィーを知ったことである。

簿記会計みたいに学んですぐ役に立つことなんてそうはない。本来どんなことも学んだことが長期的に価値があることのほうがずっとずっと意味がある。

プログラムはそんな、長期的に価値があることだと思って学ばせたらいいんだろうな、と思う。ま、そんな短絡的な親はいないとは思うけどね。

Toshiaki Ejiri: Born in Fukushima, working as web analytics consultant since 2000.