この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
最近小学生くらいの保護者がプログラミング教育を望んでいるような話を聞いた。個人的には色々な理由があり子どもとくに小学生からプログラミング教育は不要ではないかと思っている。中高生くらいになれば必要な部分だけやればいいと思うがスクールにまで入ってやるのはどうかと思う。
詳しくはこちら。
プログラミングスクールはやめとけ~プログラマ歴30年以上の筆者がおすすめしない理由~文部科学省が言っている論理力を身に着けるためのプログラミング教育とやらも筆者からみるとかなり怪しいものに見えてしまう。プログラミングに関わりの深いICT業界ではプログラミング知識の重要度は低い。伸び盛りの子どもが意味のないプログラミング教育で時間を潰されるのは切ない。
プログラミング教育に求められるプログラミング的思考とはなにか?プログラミング教育については筆者の個人的な見解です。これが正しいというわけではありませんので他の意見もご確認しご判断ください。本稿は参考程度の情報とお考え下さい。
目次
システム開発失敗の原因は何か?
プログラミングスキルはシステム開発の成功要因とならない。
システムの7割以上の機能が使われない現実
SE界隈では有名な話なのだが企業向けシステムを構築した場合7割以上の機能が使われていないのだとか・・・。要件定義の段階で現場が「せっかくだからこれも要望しておこう」的なのが多いのだろうか。根本はビジネス分析の失敗だと思うが気合を入れて作った機能は使われていないのである。
8割が要件定義のミス
システム開発の失敗プロジェクトを分析したところ8割が要件定義で躓いていることがわかった。この情報はグループ会社に共有され上流工程の大幅なテコ入れが実施された。そうなるとプログラミングにまったく関係ない所が重要になってくる。どんなに保守性高く堅牢なプログラムを作っても上流工程でコケてたら意味ないのである。
そもそもビジネス分析に失敗している
ちょっとだけ上流工程に関わったときに知ったのがシステム構築以前の問題で「お客様のビジネス目的がブレている」ことが多いのである。そもそもそのシステム必要なんですか?ということ。出来る人が入ってきっちりとリビジネス分析ができていればいいのだが立ち戻って目的を考えることなど普通はできない。
子どもとプログラミング教育
好きならやってもいいが注意が必要である。
論理思考を鍛える目的ではない
前述もしたが論理思考など時頭を鍛えるためにプログラミング教育を使うのは無理があると思う。筆者からみると小学生のプログラミング教育は「職業訓練」にしか見えない。
プログラミング教育に求められるプログラミング的思考とはなにか?過程を飛ばしてしまう
パソコンやプログラムを使うことで色々と便利になると思うがデメリットもある。答えに辿り着く前を子どもたちがすっ飛ばしてしまうのではないだろうか?パソコンを使って短時間に効率的に処理できたとして子ども達は本当に成長するのだろうか?こういった便利すぎるツールは子どもの可能性を奪ってしまうのではないかと筆者は考える。
プログラムを使う目的が明確でない
システム開発で重要なのは要件定義であることは前述した。子どもたちの人生で重要なことも同じである。技術よりも自身の目標や目的が優先されなければならない。プログラミングを覚えるのは自身の進むべき道がみつかってからでも遅くないだろう。かえってそのタイミングの方が伸びるハズだ。
好きならやっても良い
筆者は子どものころプログラミングが好きで1983年くらいにハマっていた。当時のコンピュータはインターネット接続はなくカセットテープに記録したりなどものすごく不便なものであった。プログラミングが好きでしかたがないのであればやっていいと思う。ただし、昨今のパソコンはインターネット接続もありかなりリッチな環境となっている。じゃっかん小学生レベルには刺激が強すぎると思うので保護者がバランスを考えた方がいいだろう。
まとめ
40年以上プログラムを経験してきて、20年以上システムエンジニア(兼プログラマー)として働いてきて技術よりも人間力の方が重要であると思った。SE職は職人っぽい感じなので技術に目がいってしまうが、顧客(クライアント)の想いを形にするのが仕事である。相手の想いを汲んで形にできるSEさんになるにはプログラミング教育ではなく別のことを学んだ方がいいのではないだろうか。
- プログラミングスキルはシステム開発にとってそこまで重要ではない
- システム開発は要件定義やビジネス分析が成功のカギとなる
- やりたい事のためにプログラミングを道具として使うならアリ
プログラミングは目的ではなく手段です。