「ソフトウェアは工業製品ではない」

コメントは受け付けていません

投稿日:2009年04月15日 作成者:yasunaka

@ITにRubyの作者であるまつもとさんの講演をまとめた「ソフトウェアは工業製品ではない」という記事が載っています。「コード(ソフトウェア)を書くというのは、組み立てのことではなく、製造業でいう「設計」に相当する」と述べています。以前、ひがやすをさんも同じようなことを言ってらっしゃいましたが、まさにその通りだと思います。

ソフトウェアを作るという行為は上から下まですべて設計であって、手順どおりに同じ製品を作り続ける生産工程ではないのです。

おそらく製造業との対比で言えば、工場に相当するのはデータセンターなのでしょう。

ただ、日本においては一般に、ソフトウェア開発というのは工場における製造と同じようなものと考えている向きが多いのではないでしょうか? コーディングなどの実際にプログラムを作る作業を「製造」と表現する場合がありますが、これなどはまさにその典型だと思います。

この考え方の根底にはウォーターフォール的な思考に基づいて、上流工程が設計のすべてであって、下流工程はただ単に機械的な作業をしているという考え方があるのではないでしょうか? しかしもしそのような機械的な作業ですむことであれば、ソフトウェアの世界ではとっくの昔に自動化されて、人間がやらなくても良い作業になっているはずです。

以前、何かの資料で読んだのですが、日本のソフトウェア開発は、コストは若干高めで生産性は低いそうです。なぜこんなことになっているのか考えてみたのですが、コード(ソフトウェア)を作るという作業を単なる「同じ製品を作り続ける生産工程」だと考え違いをしている間は、人材も育ちません。結果として、いつまで経っても生産性の向上は望めないのではないでしょうか?

タグ システム

素人プログラマ

コメントは受け付けていません

投稿日:2009年04月08日 作成者:yasunaka

日本のソフトウェア産業に関わる人って、普通どの程度「ソフトウェア」について勉強しているのでしょうか? こんなことを書くのも、職業プログラマの中にもあまりにも程度の低い、メンテナンス不能なプログラムを書く人が結構多いと感じるからです。

プレゼンテーション層(JSPとか)にごりごりロジックを書きまくる人。

クラス名や変数名に一貫性の無い人。

言語における「普通の」コーディング規約を知らない人。

インデントすら、まともに書けない人。

すべての処理をstaticメソッドで書き上げる人。

言語に標準で付いているライブラリを利用せずに、都度ロジックを自前で書いている人。

一度動いたら、自分の書いたソースコードの見直しをしない人。

意味を理解せずに、前の人と同じように書いているだけの人。

ソースコードのバージョン管理が出来ていない人。

ソフトウェアの技術動向に無頓着な人。

以前、SEとプログラマの対比をこのブログで書いたことがありました。私の持論としては、SEとプログラマの違いは職種の違いであって、上とか下とか関係ない、と思っているのですが、現状は違います。

その原因として、一般のプログラマのレベルがあまりにも低いことも原因のひとつではないかと感じます。

職業にするということは、プロフェッショナルなわけですよね。ところが日本のソフトウェア産業はプロフェッショナルを育てようという意識が希薄です。これではいつまでたっても日本のソフトウェア産業は世界に太刀打ちできないのではないでしょうか。


crossnote Ver 1.3.5リリースしました

コメントは受け付けていません

投稿日:2009年03月05日 作成者:yasunaka

本日、crossnote ver 1.3.5をリリースしました。今回のリリースでは以下のような機能改善を行っています。

1.更新チェッカー機能の追加

メールのような更新チェック機能を追加しました。タスクトレイに通知されます。

2.コミット時のメール送信などのコミット操作の改善

今まで指定された案件番号をリストから選んで入力できるようになりました。また過去入力したコミット・コメントもリストから選んで入力できます。

さらに、コミット時にメールで知らせる機能も追加しました。これで普段crossnoteを起動していない人に通知することも簡単になりました。

3.検索機能の改善

■ 検索の対象範囲を特定のプロジェクトやフォルダなどに限定できるようになりました。
■ 複数の検索キーワードの結果を切り替えられるようになりました。
■ テキスト、WordやExcel、PowerPointなど、外部ファイルの中身も検索できるようになりました。(ただし97-2003フォーマット)

なお最初の検索処理は時間がかかる場合がありますが、そのようなときにはバックグラウンドで実行させておいて他の作業をすることが可能です。

他にも、質問・コメントビューアーの追加や表示倍率に「表示幅に合わせる」を追加など、様々な機能追加を行っています。

タグ crossnote

Excel 2007を元のメニューに戻す方法が欲しい

コメントは受け付けていません

投稿日:2009年02月05日 作成者:yasunaka

最近Office 2007を使い機会が徐々に増えています。その中でも使うことが多いのはExcel 2007なのですが、Excel 2007ってリボン化に伴い、メニュー体系が大幅に変わりましたね。

最近Excelファイル中の図形をちょっと修正しようと思い、Excelを立ち上げたら2007で、どこをどう探しても2003まであった図形描画のツールバーが表示されません。

ちょっと直線が引きたかっただけなのに。(罫線じゃないです)

ヘルプファイルを見たり、カスタマイズ機能を探したり、散々いろいろして、最終的にはもちろん何とかなったのですが、それだけのことを実行するのに、軽く10分近く要したかな?

たかが10分と侮ってはいけません。「なんでこんな基本的なことが簡単にできないんだ!」 イライラの絶頂になります。最高の不機嫌状態です。マウスを投げつけたくなります。もしこれが締め切り間際の仕事の最中に起こったら、完全にアウトです。

リボン化そのものは別に悪いことではないと思うのですが、メニュー体系がまったく変わってしまうのはいただけません。バージョンが変わる度に一度覚えた操作体系をまた覚えなおさなければならなくなるというのは、いかがなものでしょうか?

Officeは仕事のためのソフトなのですから、見た目がちょっとカッコいいという部分を追求してしまったためにバリバリ仕事に使っている人たちが躊躇してしまうような変更は避けてもらいたいと、切に思いました。

# ちなみにメニューを2003風に戻すアドインが出回っているらしいです。

タグ 雑談

SaaSの良さが実感できたとき

コメントは受け付けていません

投稿日:2009年01月23日 作成者:yasunaka

最近、あるシステムの事例で、SaaSという仕組みの良さを(逆説的に)実感できたことがありました。

残念ながらその事例について詳細を話すことはできないのですが、1つあらためて深く感じたことは、企業内ではシステムが長い期間使われ続けるということです。一旦稼動しだしてしまえば、長年使われ続けるというのも、当たり前のことなのですね。

この結果、例えば業務用のパッケージソフトが10年以上に渡って使われ続ける、なんてことも当たり前にあるわけです。

でも問題なのが、OSとハードウェアです。伝統を誇る(?)IBMのAS400(今はeServer iSeries)ならいざ知らず、例えばWindowsだってMacOSだってUnixだって、10年前のOSというのは大抵メンテナンス対象外になっています。

これはOSメーカからすれば仕方ないことですが、業務用パッケージを使っている側からすればそんなことは関係なく、使い続けたいわけです。でもそのためにいちいち自分達で手をかけて(すなわちコストを時間をかけて)、OSやパッケージソフトのバージョンアップ作業をこまめに続けていく企業なんて、そうそうないでしょう。

でもSaaSならば、サービス提供者側が黙っていても勝手にやってくれるのです。サービス提供者側はサービスを提供する上で障害となることは排除しなければなりません。ですので、サーバ側の基盤とするOSやハードウェアはサービス提供者側の責任で、バージョンアップしていくことになります。

SaaSのメリットというとオン・デマンド的な部分が強調されがちですが、長期間使い続けるという観点でも、基盤環境のバージョンアップをサービス提供側が継続的に実施するというのは大きなメリットなのだと感じました。

タグ システム

crossnote Ver 1.3.3リリースしました

コメントは受け付けていません

投稿日:2009年01月11日 作成者:yasunaka

本日(日曜日ですが…)、crossnote Ver 1.3.3をリリースしました。

今回のリリースでは、ドキュメントの整理方法の改善(複数ビュー対応)、質問カテゴリーの設定機能の追加などの機能改善を中心に行い、さらに細かな使い勝手の改善などを行いました。

1.ドキュメントの整理方法の改善(複数ビュー対応)

ドキュメントの整理方法として、crossnoteにはビューという仕組みがありますが、これを強化しました。ビューとはドキュメントを分類するキーのことで、ワンタッチで指定したビューに所属するドキュメントの一覧を表示することができます。

例えば、こんな使い方ができます。

■プロジェクトに新規に加入した人が読むべきドキュメント一式をまとめておきたい
■プロジェクト管理上、社内規定で必須のドキュメントに印を付けておいて、簡単に引き出せるようにしておきたい

ビューは、ワークスペースからワンタッチで指定できます。使い勝手はちょうどExcelの「オートフィルタ」のような感じです。
ビューの例

今までは1つのドキュメントに1つのビューにしか割り当てることができなかったため、例えば「成果物」の1つで、かつ「最初に読む」ドキュメント、という指定ができませんでしたが、今回のリリースより、1つのドキュメントを複数のビューに割り当てることが可能になりました。

下の図は、ドキュメントの新規作成画面です。複数のビュー項目がチェックできるようになっています。
ドキュメントの新規作成画面

ビューはプロジェクト毎に設定可能です。

2.質問カテゴリーの設定機能

質問の際のカテゴリ項目をプロジェクト毎に設定することができるようになりました。

質問のカテゴリーを選択する

下図はその設定画面(プロジェクトプロパティー)です。

質問のカテゴリーの設定画面

3.その他、細かな使い勝手の改善

■Sift+マウスホイールで水平スクロールができるようにしました。

なお、Ctrlキーを押しながらマウスホイールをまわすと表示倍率が拡大・縮小します。

■画像ファイルを図形枠にD&Dできるようにする

図形枠に対して直接画像ファイルをドラック&ドロップできるようにしました。

タグ crossnote

正月の出来事

コメントは受け付けていません

投稿日:2009年01月08日 作成者:yasunaka

正月に実家に戻ったときの話です。PCの具合が悪いというので、ちょっとチェックするということになったのですが、あまりにも示唆に富む内容だったので、ここに書いておきます。

まず背景として、私の親はWindows 95時代からコンピュータを使ってワープロしたり、インターネットしたりしていたので、比較的早くから親しんでいたほうだと思いますが、そうはいっても基本的に素人です。仕組みがわかっているわけではなく、単に「使っている」というだけです。

で、実家にはワープロとしてバリバリ現役のWindows 95マシンと、インターネットに接続するためのWindows XPのノートマシンがあります。Windows 95マシンは主に母親が自分の作品を書くためにワープロとして使っているのですが、ウィルスチェックソフトで動くものはもう存在しない&あったとしても動かすと遅くて使い物にならなくなるので、外部には一切接続しないで使っています。インターネットを使って調べ物をするときにはXPのマシンを使います。

なぜ、2つのマシンを使う必要があるのか? それは1つにはノートのキー配列が使いにくいというのもあると思いますが、もうひとつ、XPのマシンのほうが動作が遅いという事情もあります。

CPUを比較すると、Windows 95のマシンは初代Pentiumの200MHzぐらいで、一方のXPのマシンはPentium 4の2GHzぐらいのマシンです。しかしWindows 95マシンとXPマシンを電源起動時からの全体で比較すると、どうもWindows 95のほうが早くWordを起動することができ、かつ動作も十分快適なのです。!!!

CPUの速さで比べたら、圧倒的にXPマシンのほうが早いはずなのに、です。

さて、ここで輪をかけて事態を悪化させることが起きていました。家族の者が、XPマシンにこっそり最新版のOffice 2007をインストールしてしまったのです。

さて、どうなったと思います?

マシンは起動してまともに使えるようになるまで、数分かかるようになってしまいました。IMEは遅くてまったく使い物になりません。(ちなみにこの件は以前このブログで回避法を書いています) 母親は、これではあまりにも遅すぎてインターネットで調べ物も出来ない、とこぼしていました。

でも実家の者でOffice 2007をインストールしたことで動作が遅くなったということが分かる人は誰もいなかったのです。まあ、当然です。普通の人だったら、そもそもそんなことを調べようとも思わないでしょう。最新版をいれたのだから、普通は何か良くなることを期待するでしょう。悪くなることを想定できる人はシステム屋さんだけです。遅くなったら、ああ、よくわかんないけど、遅くなったな、ということで単に我慢してしまうのではないでしょうか?

ちなみにこのXPマシンはOffice 2007をアンインストールして、元の状態に戻りました。原因を特定してアンインストールして…というのに私の数時間を費やしてしまいましたが。

そういえば、会社でCore 2 Duo + VistaのノートPC + Office 2007を使っていても、使いやすくなったと感じることはないなぁ、と思いました。

ソフトウェアは何のために進化しているのか? ちょっと考えさせられる出来事でした。

タグ 雑談

あけましておめでとうございます

コメントは受け付けていません

投稿日:2009年01月06日 作成者:yasunaka

あけましておめでとうございます。
今年もよろしくお願いいたします。

最近ブログをあまり更新できていませんが、少しずつ書いていきたいと思います。

タグ 雑談

WindowsPCがだんだん遅くなる

コメントは受け付けていません

投稿日:2008年12月09日 作成者:yasunaka

最近会社のWindows XPのPCがだんだん遅くなってきました。どう考えても買った当初と比較して目に見えて遅くなっていると思います。特に起動時がひどいのです。

ディスクのデフラグなどをしてみたり、要らないファイルを消してみたり、さらにはアンチウイルスソフトを入れ替えてみたり、いろいろ試してみたのですが、一向に戻りません。もしや変なウイルスにやられてはいないかと心配になり、Windowsのプロセスをチェックしているうちに、wuauclt.exeというプロセスがやたら太っていることに気付きました。

?と思い、ググってみたところ、ありました。

wuauclt.exe って何?

試してみると、明らかに起動スピードが違います。なるほどね。

(試される方はOwn Riskでどうぞ)

タグ システム

crossnote Ver 1.3.2リリースしました

コメントは受け付けていません

投稿日:2008年12月01日 作成者:yasunaka

昨日 crossnote Ver 1.3.2をリリースしました。

今回のリリースではワークスペースの使い勝手の改善、目次機能の強化、キー・アシスト機能の強化、管理ツール関連の改善、パフォーマンス改善などを行いました。

■ ワークスペースの使い勝手を改善しました

ドキュメントのコピーや移動について、Windowsでの操作と同様にコピーやペースト、やり直し(1回のみ)が可能になりました。マウスによるドラッグ&ドロップの機能も強化し、位置が移動できるようになっただけでなく、crossnoteの外にドラッグすると、自動的にエクスポートして取り出せるようになりました。例えばワークスペースのドキュメントをそのままドラッグ&ドロップでメールに添付させることもでき、使い勝手が大幅に向上しています。

■ 目次から該当ページへのリンク機能を強化しました

目次からダブルクリックで該当箇所にジャンプするようになりました。なお「戻る(ALTキー+←)」でジャンプ元に戻るようになっています。

■ キー・アシスト機能の強化

キー・アシスト機能を強化し、キー操作だけで操作できる内容が増えました。特にCTRL+Mによるエディタ画面の最大化の機能はノートPCなど、狭い画面で利用する際に便利です。

■ 管理ツールの改善

管理ツールのプロフィール管理をcrossnoteのプロフィール管理とは分離して管理するようにしました。それぞれデフォルトのIDをもつようになりましたので、管理ツールとcrossnoteを切り替えて利用する際に使い易くなりました。

■ 大量のドキュメント利用時のパフォーマンス改善

大量のドキュメントを利用する際のパフォーマンスをアプリケーション全体に渡り改善しています。

タグ crossnote