パスワードを忘れた? アカウント作成
15398683 journal
日記

ChaldeaGeckoの日記: なぜプログラミングを学ぶとバカになるのか? 3

日記 by ChaldeaGecko

それはプログラミングは強烈な成功体験を与え、具体例をそのまま一般化する思考が身についてしまうからです。「過去の成功体験を繰り返そうとする」という、愚かさの代表みたいなものです。
抽象的な思考がすでに身についている人であれば、これはとくに問題になりません。半ば無意識に抽象化とのバランスをとるからです。スラド民の多くはここでしょう。しかし同僚や発注先に「ヘボプログラマ」を見たことがない人もいないでしょう。

たとえば、「undo可能なツリー構造エディタ」であれば、ノードはimmutableな関数型にしたほうがいいでしょう。しかしオブジェクト指向の成功体験があると、ノードにundoメソッドをつけてしまいます。しかしこれでは、ツリーそのものが変わるような場合にうまく対応できません。一から設計するなら関数型を選択するプログラマでも、undoが追加の要求であれば、それまでうまくいっていたオブジェクト指向を放棄するのはとてもむずかしい。そういう事情を知らずにコードだけ渡された人は

void undo() {
    if (!deletedChildren.isEmpty()) {
    ...
    }
    ...
}

といったものを目にして血圧が100ほど上がるのです。

小学生の多くも抽象化能力は十分に発達していないと思われます。したがってプログラミングの「義務教育化」は好ましくない結果を招くことは必然です(もちろんデキる子は別です)。

プログラミングが有用なスキルであることは明らかですが、学ぶべき時期というものがあります。幼いころはバイオリンの演奏や抽象化能力を鍛えた方がいいでしょう。簿記も有用なスキルですが、高校以降がいいでしょう。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2021年08月28日 23時01分 (#4101173)

    まともな提言とか!(プンスカ

  • by Anonymous Coward on 2021年09月06日 17時37分 (#4107169)

    ①『もっと』と『芸術的創造は脳のどこから来るか?』を読みました。次に読むといい本ありますか?
    ②私は仏徒なんですが、師匠によく「勉強したことは脳の中に部品として残るだけで、瞑想をせんと使える道具として組み上がらない」ということを言われます。これってセロトニン系の話から説明のつくやつですか?

typodupeerror

私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike

読み込み中...