エンジニアのソフトウェア的愛情

または私は如何にして心配するのを止めてプログラムを・愛する・ようになったか

2005-01-01から1年間の記事一覧

がんばりの不条理

賢く、がんばらずにすむように、うまく仕事をこなした人よりも、 無策で、無駄にがんばり続けて、ほうほうの体で仕事した人の方が、 評価が高いという不条理。へこみます。

問題を解いてしまう、という間違い

問題の解答を間違える。これはミスなわけで、あからさまな間違いなわけで。でも、まだましだと思う。重篤な誤りでなければ、やり直すことで解決できるから。解く問題を間違える。無駄な労力というか、それを解いてもしょうがないというか。いくらがんばって…

上司を使えない人、と、使えない上司

他部門との交渉を、うまくできないからといって、わたしにやらせようとする人。わたしが中継したところで、直接交渉しなければ、なにも解決しないので、断りました。途方に暮れているようなので、そういうときこそ上司の管理職を使うときでしょう、とアドバ…

欠陥、失笑、反省

先日のグループミーティングでの話。 とあるグループのトラブルがどうにも解決しないという話。納入も真直で、皆それなりに神経質に話を聞いていました。トラブルの原因はつかめていない。ただ、連続で動かすとメモリが減っているという。どっかでメモリリー…

時間と方法の関係

新規開発が始まったとき、工数を見積もります。正確には、各々の担当者に見積もりを出してもらいます。例えば「設計:3週間、コーディング:1週間、テスト:2週間」。ほんとは、もう少し細かいのですが。 しばらくたって、動作も安定してから、機能を追加…

心理的コスト

現在の開発が、まもなく一段落を迎えます。ほっとするまもなく、次の開発が始まります。次の開発は、現在のソフトウェアを利用し、その上に変更を加える差分開発。今以上に短期開発が求められています。一つの締め切りが過ぎ、次の締め切りまでの時間ができ…

知らないこと、を知る

ひとり、プロジェクトから抜けることになりました。幸か不幸か、開発規模は以前よりも小さくなっているので、人月上の労力の計算では不都合はないのですが、プロジェクトに必要な知識は、全部置いていってもらわないとなりません。頭を悩ますのは、引き継ぐ…

ないものが見える、ないものを視る

不完全な資料から、設計書を書き起こす人がいます。どうやってその資料からそんなふうに設計したのか、と訊いてみると。関連する資料から、従来の設計から、過去の経験から、そして想像から、不完全な資料の不完全さを補って設計書を書いていました。なぜ、…

言葉を導く

今夜はNHKの「英会話エンジョイ!スピーキング」を見ました。留学生のための英語の授業をそのまま放送しています。授業の内容も面白く勉強になりますが、講師の授業の進め方も勉強になります。今夜の授業の内容は、ものを肉親に見立てて家族の紹介をしたり(…

強制と環境

会社の、雑多なサーバ機能を載せたLinuxマシンにSubversionを入れました。今のプロジェクト、ファイル管理の体制が、よくありません。手作業でファイルを格納し、記録ファイルに履歴を書き込み、それでもリリースとなれば記録とファイルが合わずに一日右往左…

「先輩」は後輩が作る

少し前に、理不尽な要求に、ぽん!と感情を破裂させてしまったことがあります。実際に声を荒げたり、暴れたりしたわけではありませんが、自分の中では、はじけてました。面白いのは、自分でも感情的になっていることがわかっていることです。それに、要求を…

味方であることを伝えるのは、難しい

おそらく、言葉をいくら重ねても、「自分はあなたの味方です」と訴えても、納得はしてくれないでしょう。今日、仕事に不満を抱えているように思える、協力会社のエンジニアの方と一時間ほど話をしました。彼が何を思っているのか、知る必要がありあした。し…

「考えを伝える」ということ

3ヶ月前に「分析、即、実装」というのを書きました。設計と実装の狭間の話題を、この「ソフトウェア的愛情」の中で何回も繰り返しています。それだけ、ソフトウェア開発をする中で自分が、問題だな、と感じているのだと思います。ともに開発にあたっている…

孤立したエンジニア

孤立したエンジニアがいます。職場で孤立しているわけではありません。技術が孤立してしまっています。 現在の開発には、社内社外を問わず大勢の人間が関わっています。その中にフリーのエンジニアが一人います。明らかに一人だけ、違うコードを書きます。他…

人が多過ぎる

いつもいつも人手不足で困っているソフトウェア開発の現場ですが、人が多過ぎることが困難の原因のような気がしてきます。余っているわけではありません。みんな忙しく働いています。人が多過ぎるから、忙しいと言えるのかもしれません。最近、一つはまって…

期待する動作

「『要求仕様』というから、わかりにくいのかもしれない」などと考えてみました。「期待する動作」という言葉でしたら、わかりやすいような気がします。気がするだけかもしれませんが。言っていることは、同じですが、印象が違って感じます。「期待する」部…

「降格がないことによるメリット」

日本のサッカーリーグの話。 ご存知のように、日本には、プロのJリーグディヴィジョン1、ディヴィジョン2(通称それぞれJ1、J2)、その下部にアマチュアのトップリーグJFLがあります。Jリーグでは、そのシーズンの成績によって、J1からJ2への降格、J2からJ1…

C++の代入演算

知りませんでした。というか。勘違いしてました。C++では「代入式への代入」が可能なんですね。 int a = 0, b = 10, c = 20; (a = b) = c; // a:20, b:10, c:20 奇妙な式なので、代入演算子をオーバーロードするときは、代入式に代入できないように「const T…

プロジェクトを遅らせる方法

プロジェクトの完了を遅らせるには。無謀な強気の締め切りを設定して、残業と休日出勤を繰り返す。これだけで、強気な締め切りはもちろんのこと、本来の妥当な締め切りを超えて、いくらでも完了を遅くすることができます。 デマルコの著作の中で、なんどもな…

日本語を日本語に翻訳する

「パターン指向リファクタリング入門」を読んでいます。一つ一つの事柄を読んでいくと、普段わたしがソフトウェア開発をする中で、よく感じることが裏付けを持って書かれてる、と感じます。本家「リファクタリング」を読んだときもそうだったのですが、自分…

ダメな設計は…

ダメな設計は、その設計を変更できない頃になって、ようやくダメとわかる再び引用風ですが、引用ではなくて、わたしの今日の心象です。以前から、作りがよくないと思われていた、社内のライブラリ。そのライブラリが、さまざまな状況で利用されるようになる…

相手を変えるには、相手の考えていることとその理由を理解し、尊重しなければならない

「相手を好きになり、気づかわなければ、人にちがうことをさせることはできない。相手を変えるには、相手の考えていることとその理由を理解し、尊重しなければならない」トム・デマルコの「デッドライン」の一節です。一年ほど前に読んだ本ですが、最近にな…

悲しいとき(2)

よほどわたしの言葉がわかりにくいのか、はたまた、わたしの周りには理解を共にしてくれる人がいないのか。 今日は、メールを介して議論をしているつもりでした。二度三度意見を交換したあとに、相手から届いた言葉は「全然、わかりません」。脱力しました。…

いつ失敗させるか

新しいことをやると、大抵は失敗します。あからさまな失敗でなくても、自分が得たい結果を得るために、最初は試行錯誤。わかっているのに、どうもそれが仕事の話になると、そのことを忘れてしまうようです。わたしも例外でないですが。「仕事での失敗=マイ…

「メンテナンス容易性」という品質

一緒に仕事をしているプログラマに、昨日また、おおよそプログラマであれば考慮しなければならない「メンテナンス容易性(たとえばここ)」を説いて、そして説得に失敗しました。一ヶ月以上ことあるごとに説いてきましたが、連敗中。我慢強くないわたしは、…

いつオブジェクト指向を学ぶか

仕事でソフトウェア開発をするのでしたら、開発が始まる前に学習しておくのが本来でしょう。実際は…ある意味予想通り…開発の現場で学習する、という事態になっています。わたしは、当然のように、この事態は間違っていると信じています。しかし、これがエン…

悲しいとき

ソフトウェア開発を続けていますが、その中で、プログラマから言われて、悲しい思いをした言葉があります。設計変更があったときに、わたしも一つのアイディアを提示したのですが、それに対する反応は「意味がわからない」というものでした。反対の意見であ…

二番目の言語

「プログラミングの心理学」を読んでいます。 二番目の言語を教えるとき、一番抵抗を受けるとありました。そもそも最初の言語を覚えるときは、抵抗がありません(いかなる学習に対しても抵抗するような場合は、おいておくとして)。三番目以降の言語を覚える…

subversion

subversionをインストールしました。まだimport/checkout/commit/updateを試しただけですが。CVSと違ってディレクトリも管理対象になるようなので、使いやすかったら全面的に切り替えようと思っているところ。仕事でも。

言葉に左右される思考(2)

ソフトウェア開発をしていると、思考が、プログラミング言語によって左右される場面にでくわします。特に悪いという思いはありません。でも、そのことに気づかず、「プログラムはかくあるべし」という考えにとらわれてしまうときがあります。後になって、な…