私がプログラマーだった頃と今の違い
ちょっと業界用語だが、
ITの世界で、ローコード、ノーコードというキーワードが流行っている。コードとはプログラミングコードのことだ。
今、小学校でプログラミング教育が始まった。
私はその目的に未だに懐疑的だが、体育や美術、音楽などの位置づけなのか?
国語算数理科社会の基本科目の位置づけなのか?
最近始まった英語とにたような考えだと思うが、世の中の流れ、グローバル化の流れに適応するためなのだろうか?
私は、20代にプログラマーとしての仕事を何年かしていた。やってみての実感は、少なくとも私がしていたプログラミングはクリエイテイブな仕事ではない。
単純化して説明する。
私は、よく建築の仕事と対比してソフトウェア開発を語ることも多い。プログラマーというのは大工さんと考えると良い。
では、一戸建ての家を建てる時、大工さんだけでできるのか?といわれると答えはYesだ。これと同じように、プログラマーもプログラマーだけでソフトウェアを作ることはできる。一人でする場合もあれば、複数でする場合もある。
建築であれば、建築士という役割がある。建築においては建築基準法が定められているので、建築士が設計をしないと作れない家の基準がある。そういう家は、施主が望む望まないにかかわらず、建築士が必要で、建築士は家の設計をすることになる。
建築士が必要のない家づくりもあるが、その場合は大工さんが全部行うことが出来る。
この対比で考えると、ソフトウェアを作るのに法律はない。
だから、依頼主と請負側の自由であるが、一般的には建築士にあたる役割がシステムエンジニアである。ようするにソフトウェアの設計をする仕事である。
私は20代で両方経験した。
しかし、いちばん、つまらなかったのは、設計をしないプログラミングである。
つまり、システムエンジニアが設計した通りにプログラミングをする仕事である。
まあ、プログラミングといっても、色々ある。事務処理系や技術計算系、今ならIoTでくくられているが制御系など多岐にわたる。だから、一概には言えないが、基本的には設計書が詳細に書かれている仕様書でプログラミングする仕事は、クリエィテイブというよりも単純作業だ。
もちろん、この時代は、プログラミングはとても大切な仕事であった。プログラマーがいなければ、ソフトウェアは出来ないのだから・・・。
ところが、時代は変わった。
誰しもが望んだことが出来るようになった。
急になったわけではない。徐々に決まりきったプログラミング作成は自動生成されるようになってきた。
考えてみればこの分野も当たり前にコンピューター化が進んできた訳である。
長年の試行錯誤を経て、今や大抵のソフトウェア作成にプロクラマーは必要ない。
仕様をきっちりとインプットするとソフトウェアが自動生成されるのである。
今更ながら、こういう時代にシステムエンジニアをやっていたかったと思う。
子供たちに、色々と教えるのは良いが、何を教えるかによってその意味はだいぶ違う。
ローコード、ノーコードの時代のプログラミングということを教えているのだろうか?
今なら、システムエンジニアという内容でないと役に立たないような気がする。
もちろん、科学の実験のように、コンピュータの原理を教えることは大切だと思う。0と1のビットの世界だ。仮にそうなら、科目の名前をコンピュータ入門にした方がよっぽと分かりやすいと思う。
せっかく昔取った杵柄。自分なりに子供たちの未来のために、コンピュータ教育をITを使ってすることを考え中である。
以上