人気ブログランキング | 話題のタグを見る

がっつりネタふり


by dc2keeper
カレンダー
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

「若造が」考える。Windowsソフト

みなさまこににちわ。

どんだけ落ち込んでても雨が晴れ上がっていると、「こんな俺でもやっぱり晴れ男なんだな」と口にするDC2Keeperです。

Windowsでも技術者は育つと思っているのです。開発に便利なだけがWindowsではないのだと思うのです。そこんとこを。

WindowsソフトにはWindowsソフトの作り方っちゅーもんがあると思うのです。運命のなせる技でそちらよりに少しだけ育ってしまったので、Windowsソフトを作るのがまず自分の宿命だと思うのです。でも、それが汎用機だったとしてもやります。

デバッグは、サポートの部門でもできると思うのです(むしろサポートの部門ができるようにWindowsはデザインされていると思うのです。)。そこまで汎用化できるのがWindowsの強みだと思うのです。WindowsにはWindowsのやり方があります。

(Windowsの)サービスを使うプログラムを書いている以上、メンテナンスするためのLogging機構を搭載したり、別途インターフェイスを用意するのは当然なのです。

悲しいかな、落ちるシステムといわれているWindowsでは落ちるときの作法というものも数存在しています。

コアのコードはM$が抑えてしまっているのでオープンではないというが、それを言う前に、ポコポコ部品を組み合わせてプログラムを作ってしまって問題を複雑化したのはアプリケーション開発者です。そこを言う前に、カーネル付近までデバッグできることも必要だと思うのです。

開発工数が抑えられるようにWindowsは設計されている。あるいは周辺ベンダーがひしめき合っている。逆に、Windowsの限界まで機能を使うことも、C++を利用してできる。

多くの会社が、お客様向けにサポートを行っているがシステムの使い方をサポートすることがほとんどだ。Windowsの恩恵をちゃんと利用すると、開発のコアをやっている人以外でもシステムに対して参加ができる。(そうした前提の開発を行うのも必要だが)

導入、移行、インストール、バッチ記載、ハード販売、そうしたことだけではない、本当のコアのコアはM$に抑えられているからこそ、OSの上にあるアプリケーションに対するデバッグの機構などはちゃんと用意されている。

つまり、製品そのものの品質を上げるために周囲の人がバグを見つけることはできるし、大人数が参加しやすい開発環境はちゃんと用意されている。サポート担当者でも本気になれば現場での原因解析はできる。お客様に対する技術的な裏付けという信頼感も勝ち得ることができる。
コアのコアまで調べることは技術力の向上にもなるしソフトウェアの品質管理も行き届く。開発以前に調べるという技術だけで一分野ができるほどの量はある。こうしたことを普段から考え、会社のノウハウとして蓄積する必要も個人の技術レベルとは別に必要だと思う。

システムを導入するコストが厳しかったり、品質管理が行き届かなくなったり、オペレーションサポートがきつくなったり、システムが肥大化してしまったソフトウェア会社に提言したい。Windowsはもっとできる。


ただ、単なる一プログラマだったり、一若者は、そういった理解ある環境を用意してもらう必要がある。言いたいのは、汎用機にも通じる技術はWindowsでも養うことができる。こうした機会を多く作って欲しい。


Windowsでデバッグばっかりやっていた日々を思い出したのです。全然できなかったんですけど、追っている楽しさがありました。

「Windowsプログラマのためのデバッグテクニック徹底解説」はWindowsソフトの品質管理のために必読だと思うのです。(.NET の項目も最近追加されました)
「プログラミング作法」を読んでも実践できなければ意味が無い…。のか。
コアな仕事ってもうないのだろうか。

Windowsの上でプログラムを書くことを教わるとき、こうしたWindowsの様々な作法、機能を教わることはない。次世代のエンジニアはそうしたことを意識しなくても良いとは思うが、技術力とか後継者とかってなんなんだろうと思ってしまう。

市場で競争できるエンジニアは育ってますか?

「大切なことはみんな汎用機から学んだ」――ミラクル・リナックス 小田切耕司氏
次代を担うITエンジニアは育っていますか
※: 登録が必要なサイトかも。(無料)
by dc2keeper | 2004-11-12 15:23 | コンピュータ、プログラム