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

仕様書をTracのWikiに記載する

「仕様書をSubversionとTracで管理する」に続いて、今回は仕様書をTracのWikiで作成する話。Tracの登場以前に、仕様をPukiwikiで書き始めたのがそもそも発端だけど、Wikiを使うメリットとして下記が挙げられると思う。 仕様同士のリンク経験的に言って、仕様…

コーディング規約を考える前に

開発プロジェクトのコーディング規約をどうすべきか相談を受けることがある。コーディング規約なんて探せばいろいろ出回っているし、自分たちでゼロから作っても良いとは思うけど、この数年はいつも下記のように答えることにしている。 「Code Completeを読…

考えるべき改善の方向性

ソフトウェアの品質を上げるための改善策を議論すると、決まって「チェックリストを追加しましょう」「確認作業を行いましょう」「仕様書を作成しましょう」など追加作業が必要になることが多い。確かに今まで何か足りないモノが有ったから問題が発生したわ…

面倒なUMLは要らない

ソフトウェア開発のモデリングに関する書籍を読んでいたら、クラスのステレオタイプとして「バウンダリ」なるものが設定されていた。そんなステレオタイプが有ったのかと思いつつ、ネットで検索してみたら下記の情報を見つけた。 ・バウンダリ(boundary):シ…

ルールを変えるのが仕事

ソフトウェア開発者と話をしていると首をかしげることが少なくない。曰く、 「これが社内の決まりだから、こうやるしかない」 「効率の悪い方法だが、グループの規則だから仕方ない」 「他に上手い方法はあるけれど、ガイドラインに従うと時間がかかってしま…

現状維持は後退に等しい

ソフトウェア品質を巡る議論にて、こんなやり取りがあった。 私:「やり方を改善しないのだから、品質が向上しないのは当たり前の結果です」 相手:「今までのやり方を守ったのだから、悪くならないで済んだと言って欲しい」 もちろん、絶対的な答えというも…

仕様書をSubversionとTracで管理する

議事録をTracへ載せる話は「議事録はTracへ」に書いたけれど、今度は仕様書の話。ソフトウェア開発の構成管理にはSubversionを使っており、その中にはソースコードだけではなく、WordやExcelで作った資料も入れるようにしている。以前はサーバの共有フォルダ…

CUDAで画像合成

今回はCUDAを使って画像合成(アルファブレンディング)をやってみた。元のソースコードは下記を参照。 http://d.hatena.ne.jp/hiroki0/20090914/1252931917 テスト環境は下記の通り。画像ファイルの読み込みには、MacPorts経由でインストールしたOpenCVを利…

真っ当な指摘をすると疎まれる

ソフトウェア開発の品質対策会議にて発言。 「時間が無いので次の機会に実施する」アクションを先延ばしにするのは、実行力が足りない証拠。自分で時間を作る、あるいは時間を作るための工夫をするのが開発者の仕事のはず。自分の実行力を棚に上げて、時間が…

コピペ開発の終焉

ネットを検索すればあらゆる情報が見つかる。その中にはソースコードの断片も含まれるわけで、そのコードをコピー&ペーストしてくれば、それなりに動くソフトウェアがたちまち出来上がってしまう。規模が小さいソフトウェア開発ならそれでも通用するのだけ…

技術士試験(機械部門)の問題を考えてみる

技術士(機械部門)を目指している人と情報交換を兼ねて飲み会。今年の技術士第二次試験(機械部門)では、スーパーコンピュータの性能アップに関するデータと共に、その利用方法に関する問題が出たとのこと。へぇと思いつつ、問題冊子を見せてもらった。 コ…

CUDAによる行列計算

CPUとGPUでどのくらい違うものなのか、CUDAの行列計算でベンチマークを取ってみた。Snow Leopard環境ではまだCUDAの問題が残っているようなので、テスト環境は相変わらずLeopadのまま変更無し。 MacOS X 10.5.8 CUDA Toolkit 2.3 MacBook Pro 13"/Core2 Duo …

Snow Leopardの技術解説

Mac

Snow Leopardについて、Ars Technicaに情報が出ていた。相変わらず凄い情報量なので、ざっと全体を眺めてみる。ユーザーインターフェースの変更箇所については国内のニュース系サイトにも載るけれど、技術的にコアな情報を入手するためにはやっぱり海外のサ…

ガラパゴス諸島の人々

「情報ガラパゴス」の中にいる人との会話。 私:「○×さんのブログですよ」 彼:「それ、誰?」 私:「△▽という書籍の著者の方です」 彼:「そんな本があるんだ」 私:「雑誌に□◇という記事を書いている方です」 彼:「そんな記事があるんだ」 私:「☆※という…

Snow LeopardとiMovieでトラブル

Mac

Snow Leopardにビデオカメラを接続して、iMovie '08でビデオを取り込んだのだが、今ひとつ調子が悪い。例えば、こんな症状が発生する。 取り込む動画がコマ落ちして、小さなシーケンスに分断されてしまう。 取り込み後、iMovieを終了させてもメモリの使用領…

規格競争に乗り遅れる日本

今朝の朝日新聞(GLOBE)にこんな記事が載っていた。 EUのローズ規制に倣った化学物質規制は、その後、米カリフォルニア州、中国、そして日本へと広がった。ほかにも、家電製品などの安全規格の適合表示「CEマーク」や、すべての化学物質の管理を目指す規制「R…

Snow LeopardでMacPortsにはまる

MacBook ProをSnow Leopardにバージョンアップした。全体的な動作は極めて軽快、アプリケーションの動作も全然問題ない。良い感じのバージョンアップだったのだけど、MacPortの対応状況は少々悪い。下記のサイトに個々のパッケージのステータスは載っている…

やっとSnow Leopard到着

Mac

アップルにUp-to-Dateプログラムで注文していた980円のSnow Leopardがようやく届いた。確かに予定通りの配送だけど、まさかメール便で送られてくるとは。数百円くらいの配送料くらい負担するから、発売開始当日に届いて欲しかったです。(泣) 出荷日:2009/…

CUDAテストの続き

前回に続き、CUDAを試してみる。動作環境は以前のエントリを参照。 ソースコード 前回と同様に下記のサイトから拝借した。ソースはそのまま利用できる。 CUDAを使う - 初めてのプログラム:tech.ckme.co.jp Makefile CUDAのツールキット類をインストールする…

自己啓発の必要性

小俣光之氏の本を読んでいたら下記の文章に出くわして、少々ドキッとする。思わず知り合いの顔を思い浮かべてしまいました。悪気は無いです。(たぶん) 開発現場に長年固定されたり、あるいは方々の現場に飛ばされたりしながら、目の前の仕事をこなすことだ…

CUDAのテストソフト

前回に続き、MacOS X環境にてCUDAのテストを行う。今回は簡単なテストソフトをビルドして実行してみた。 準備作業 ドライバ、Toolkit等のインストールについては、前々回を参照。 /Developer内のフォルダをリネームしておく。(スペースを嫌うのは単なる個人…

ルーチンワークをやってはいけない

何だか恐ろしくつまらない単純作業を喜々としてやっている人がいるけど、あの人たちは自分の仕事に対する単価を計算したことがあるのだろうか?実際に見たことのある作業の一例。 メールの内容をチマチマとExcelの表にコピー&ペーストして一覧表を作ってい…

CUDAメモリ転送のパフォーマンス

前回に続きCUDAネタ。 メモリ転送の性能は、転送のサイズや、使用するシステムマザーボードのタイプなど、多くの要因に左右されます。 http://forum.nvidia.co.jp/EokpControl?&tid=10372&event=QE0004 そりゃ、確かに多くの要因に左右されるのは間違いない…

MacBook ProでCUDAを試す

ヒマだったのでMacBook Pro (13inch, 2.26GHz) にCUDA ver.2.3を入れてみた。廉価なノートパソコンとはいえ、NVIDIAのCUDA対応チップが入っているのだ。これは是非とも試さねばなるまい。 1. SDKインストール まずは下記のサイトからドライバや開発ツールを…

こんなリーダーでは戦えない

下っ端の技術者から見たリーダのいろいろ。こんなリーダが居座る限り、やりたいことも出来ないし、部門の将来性も見えないし、迷惑なだけなのね。 社内調整型いわゆる社内政治や部門調整は得意。取引先とのやり取りもそつなくこなすが、自分の主義主張が無い…

情報ガラパゴス

昔は新聞や雑誌をのんびり読んでいれば事足りたけれど、今はインターネット経由で毎日膨大な情報が出回るので、遅れずに追従していく必要がある。必然的に毎日の重要な作業の一つは、各ニュースサイトを見て回ったり、RSS readerでブログの記事を読むことだ…

MacBookからMacBook Proへ移行

Mac

外出用として持ち歩くことの多いMacBook(ホワイト/2.0GHz)を、MacBook Pro(13インチ/2.26GHz)に買い換えた。以下、簡単な覚え書。 環境移行にはTime Machineを利用Windowsの環境移行は非常に面倒だけど、MacOSXでは既存のバックアップであるTime Machine…

頭の中をかき回せ

こんな考え方は好きだなぁ。学生時代にこんな研究室に入っていたら、きっと人生の役に立っていたことだろうと思う。自分の守備範囲外の方面に視野を広げることはとても大切なことだ。年を取るとどうしても一つの凝り固まった考え方に囚われることが多くなり…

開発マッチポンプ

隣で開発作業を行っているチームの様子を見ていると、自ら問題の種を蒔いて仕事しているような気がしてならない。「不具合が見つかって初めて仕様が分かる」というお粗末な後付けの開発姿勢なのだ。 △□という仕様が不足していると分かったので追加対応します…

優れた開発者の条件

周囲にはいろいろなソフトウェア開発者がいるけれど、彼らを観察していると、優れた開発者にはある共通の性質があることに気づく。例えば、こんな感じ。 質問ができる渡された資料を噛み砕き、関連する情報を集め、何を作るのか認識できるくらいなら普通のレ…