人とか機械とか

デジタルガジェットやコンピュータについてのブログです。

Dev2.0


 いままで仕事で書いていたファームウェアや、テストツールなんかはだいたいフルスクラッチ。なんかmemcpyまで自力で書いてた。コンパイラにそのくらいついてたのに・・。信じているソフトウェアはコンパイラとリンカくらいか。むしろ、それらにもバグがあったりするので疑ってかかっていた。あと、自分一人でなんとかしようという思いが強かった。これは自分の性格というのもあるし、ヒマしていて頼れてすぐ手伝ってくれるような人もいなかった。
こういうのは新人以来ずっとついていた上司の影響です。まあ100%悪いとは言わないけども・・学んだこともあるし。もうその上司じゃなくなりましたが。右も左もわからない新人だった頃は、直属の上司の言う事を聞いて必死についていくしかできなかった。

あと、組み込みだから規模が小さく、その手法でもなんとかなっていたから。ギリギリ。でも、死ぬかと思った。


 意識せずに使っているモノの仕組みがどうなっているか?をちょっとだけでも知っておいたほうがいい。文明の利器が無くなったときの代替手段を考えておいたほうがいいのは確かだ。ただ、普段はその文明の利器を使うに越したことはない。
たとえばレジ打ち担当は、普段は高性能なPOS使えばいい。停電したらソロバン使えるようにしておけばいい。でも時代の流れは、そこでソロバンが使えないような人間を量産する方向に流れている。



今後の舵取りは

大まかに言うと、他人や機械(ソフトやハード)を信じること。
  • それは信頼と実績のあるものかどうか?
  • ライセンスや契約は問題ないか?
  • どのような性質、特徴、弱点をもっているか。
  • プロジェクトに適しているか?
  • それがミスを犯したときダメージはどれくらいか?フォローする代替手段はあるか?
  • 正直、自分が直接制御してないモノがあることに抵抗感を覚えることもある。いままで持っていなかったブラックボックスを採用することだから。気持ち悪い。でも慣れるしかない。
具体的には
  • ほかの人の開発,設計手法を見る。トレンドを知る。OOPUMLを使えるところに使う。
  • ライブラリや過去のコードを使う。newlibとかGNUとか。
  • アルゴリズムとか理論を勉強する。ハッシュとか。
  • ツールを試す。SVNとか。Eclipseのプラグインとか。xUnitとか。
  • 得意な人に任せる。もっと作業分担する。マネジメント。