当社はハードウェア寄りのソフトウェアが得意な会社です。ものを売るという特性上、ハードウェアの話が多いですが・・・
そんな中、当社のエンジニアたちがいくら金を積まれても絶版になったら絶対売らないという書籍をご紹介します。
日本は民族としてハードウェアが得意なので、メカや電気ハードの人が出世しやすいようです。出世するのは構わないのですが、「ソフトはいつでも変更できる」という誤った考え方でプロジェクトを遂行する傾向があります。私が見てきたプロジェクトで、大抵そのようなプロジェクトは最後の最後に重大で後戻りできない問題を抱える傾向がありました。
言ってしまえばプログラマの地位が上がらなくてもいいですが、プロジェクトが遂行できないと問題ではないでしょうか。
しかも、商品の全体を把握しているのはプログラマだったりしませんか?
「管理職」と名のつく業務を行う人にはぜひ読んでほしい一冊です。
組込みソフトウェアを担当してしばらくすると、プログラム全体をビルドする仕事にも関わることでしょう。Makefileはスクリプトですが、プロジェクト内の万人受けするMakefileを書くにはそれなりの知識が必要です。
そもそもデバッグするときには、ビルドするプログラムの最適化が変化したり、デバッグコードを組み込んだりしなければなりません。デバッグモードでは動くけどリリースモードでは動かない理由を突き詰めていくと、実はMakefileが原因(Makefileは悪くない。ちゃんと記述されていないだけ)という場合があります。
ソフトはソースコードで動くんじゃないんです。バイナリコードで動くんです。偉い人はそれがわからんのですよ。
プログラムをネットワーク経由で更新するというのは、難しいようで難しくありませんが、最近のプログラミング環境はそうした難しくないところを意識せず書けてしまいますし、仮想環境なんかが主流の今、「プログラムコードがどこに配置されているか」なんて聞かれても「質問の意味がわからない」となるでしょうね。
とはいえ、そういう機能を作れと言われたらどこから勉強していいのかわからないでしょう。なぜなら、コンピュータが動く基本のキを知らないからです。
その「キ」を教えてくれる良書はなかなか出版されませんでした。なぜなら基本で当たり前だからです。その「キ」を教えてくれる良書です。
また、GPL違反やLGPLに機敏な方も読むべき本です。大抵の言語は言語が簡単だから書きやすいのではなくライブラリが揃っているから簡単なんです。ところがそのライブラリには著作権があります。市場に出てから著作権違反が発見されたら出荷停止、どころか回収、返金です。
組込みプログラマのリーダークラスになったら必ず読むべき本です。