例えば「画像は3色で保存されてるけど、それぞれ何色か知ってる?」と聞いたら
情報理論関係無くRGBを答える人は多いと思う(たまにこれすら答えられないプログラマーがいるが・・・)
ところが「JPEGって各画素に対して8bitなんだけどどうやって3色を割り振ってる?」って聞くと分からないプログラマーが多い
普段のプログラミングでJPEGを貼り付けるだけならこんなこと知らなくても問題無いんだが
ちょっと複雑なことをするときはこの手の知識が必要になってくる
同様に「人間の可聴周波数は?」とか「それをどうやってデジタルに保存してる?」とかも知らない人が多い
こういう知識を持ち合わせずに「音声認識結果が悪いのでハイレゾにしてみました」とか言ってきたりして頭が痛くなる
他にも情報量の概念を知らずに圧縮しようとしたり公開鍵のことを知らずにセキュリティに関する実装をしたりIPパケットを知らずにネットワーキングしようとしたり
基本的な知識を知らずにプログラマーになってる人間が多すぎて問題になってる
幹部なんかは「基本情報を持ってたらいいんだな!」「応用情報を取らせよう!」みたいな対策をやりがちなんだが
一夜漬けで終わらせる人がかなり多くて前述の質問に答えられない人もIPA資格は持ってたりする
普通に情報系の大学を出ていれば授業で単位を取得しているはずなんだが
大学はもっとザルで簡単に単位を取れてしまうので全くアテにならない
一番問題なのは、知識を知らなくてもプログラミングできてしまうので
下手に経験を積むと情報理論なんかの基礎を知らないまま「優秀プログラマー」として認知されてしまい
更に本人もその自覚を持ってしまってリーダー的な立ち位置になってしまう
画像と音声と暗号とネットワークと全部ごっちゃな会社ならその程度でいいんじゃないの? 知らんけど
1. 自分が一緒に働きたい人に持ってて欲しい知識をリストアップする。 2. それが載っている書籍や媒体をリストアップする。 3. それを展開する。 これをやった結果、頭の悪い新人には...