オルタナティブ・ブログ > 一般システムエンジニアの刻苦勉励 >

身の周りのおもしろおかしい事を探す日々。ITを中心に。

NotesのNotesっぽいところ

»

丸山さんがLotus Notesについてエントリを投稿しておられましたので便乗です。

ドーダスドニノようこそ! > ■3分程度で理解ですノーツの魅力! : ITmedia オルタナティブ・ブログ
http://blogs.itmedia.co.jp/donino/2008/03/post-b3ad.html?ref=rssall

丸山さんがブロガープロフィール欄で『”ノーツ”大好き』と言っているのに対して自分は「VB.NET, ASP.NET, Lotus Notes」なんて3番目に紹介しちゃったりしてますが、本当はSEになって一番深くやった(やっている)のがNotesです。家のPCにはDomino/Notesを入れていませんが、ドミノ懇談室では回答側として何度か登場したこともありましたっけ。

私が以前に考えた新人のIT技術者にとってのNotesの良いところは以下の通りです。

  • 画面設計が早い
  • 内部設計が少ない
  • メールなど、(Notes上の)他システムとの連動が簡単
  • アクセス制限が強力かつ便利
  • ユーザ登録などの運用が簡単
  • 運用ツールが充実している
  • 配布がやりやすい

デメリットはこちら。

  • SQLが覚えられない。
  • 表間の制約を自分で作りこまなくてはならないケースがある。
  • 「Notesが得意なこと」を提案するという消極的な提案になりがち。
  • アクセス制御周りが充実し過ぎていてそれに依存してしまう。なので自分でデザインする機会が少ない。
  • Notes自身のバグが多い。

ここに対する付け加えとして、技術者としてNotesに感じたNotesっぽい点を考えてみました。

イベントが大きい

イベントが大きいですね。これはやはりこれまでNotesが大企業を中心に販売されてきたことによると思います。その事でNotes開発技術者は大企業を相手とする人が多く、イベントに来る技術者も大手のSIerに所属している人が多いです。一方、開発者向けのコミュニティは他の技術と異なっていまいち盛り上がりに欠けるような気もします。情報漏洩対策で掲示板へのアクセスを遮断しているSIerが少なくないからかもしれません。

Windowsクライアントで色々

ECLの設定がきちんとされていれば、メールのボタンを押すだけでスタートメニューを作ったり、ファイルを作ったり消したりということが簡単にできます。EXEファイルやVBSファイルをメールで配布するとウイルス教育上よくありませんが、Notesメールなら権限のない人から送られてきた実行可能なスクリプトは警告メッセージが出ますので安心です。Webアプリケーションではなかなか真似のできない芸当だと思います。(ラブレターウイルスの時はとにかくVBSファイルに気をつけるよう言われましたね)そして色々な事でNotesメールを使っていると、それはNotesでやらなくても……ということまで「こんなことできない?」という相談が持ち込まれるようになり、そこをサービス精神で乗り越えると一層いろんなことができるようになっていきます。Notesを始めて日が浅かった頃にNotesメールからVBSを呼び出しても動くということに気付き、MyDocumentやデスクトップなどのSpecialFoldersに簡単にアクセスできることを発見したのが興奮でした。

自分のプロジェクトもNotesで管理

進捗管理ですとか、設計ドキュメントのバージョン管理などの品質管理までNotesで行うと非常に簡単です。後述するnsfやntfファイル自身の管理はNotesの基本機能だと物足りない感じがします(設計要素ごとのバージョン管理ができないため)バグ改修管理表のようなものは非常にNotesと相性が良いです。

設計要素の管理ができない

CIAOなどの外部ツールを導入しない限り、基本的にはnsfファイルを分解して管理する事はできません。エージェントの書き出し・読み込みはできますが、実行すると設計要素の最終更新日が変わってしまい、変更管理には使えません。VBやJavaのほうが開発環境が整っていると思います。

開発環境が不安定

VisualStudio.NETと比較するのがいけないのかもしれないですが、あまり使いやすいものであるとはいえません。6.5.x移行は使ったことがありませんが、予測入力機能にしてももう少しキビキビ動いてくれるとありがたいです。そんなことは些細なことで、Designerが落ち過ぎだと思います。落ちた瞬間に開いていたnsfファイルを巻き込んで破損していたりすると「ははは。ういやつめ。」と言って許してあげます。不安定っぷりはR5から変わってないので伝統なんじゃないでしょうか。(7~で直っていましたらすみません。Eclipseに期待してます。)

いろいろ不安定

自身が会社で使っているものも含めて、Notesクライアントも安定していません。比較的安定しているバージョンだとは思いますが、「bookmark.nsfが破損しました」ですとかメールのフレーム情報が破損してしまって開かなくなったりということがあります。nsf自身の破損も経験していますが、自分のメールDBの管理者は弊社の社内システム部門なので自分では「load compact -c mail/yohei.nsf」なんてことができません。直るまで待ちぼうけー待ちぼうけーという感じで待っていました。また、過去に開発環境で一度names.nsfが破損したというログが出力されたことがありました。開発環境のことなのでものは試しとcオプションで圧縮したらサーバが停止しました。バックアップからnames.nsfを戻して再起動したら直りましたがびっくりしました。

チューニングがよくわからない

これは個人の問題です。すみません。ただR5から6.5xになってはっきりと負荷が改善しました。のでチューニングなんてする必要もなかった、ということで。スケールアウトの方向についてもクラスタ機能による対応が可能で、安心の設計になっていると思います。しかし中小企業向けではあまり関係ない機能でしょうね。サーバ不要のP2P型Notesがあったら「それなんてGroove?」ってな感じなのですが。

レプリカが便利

レプリカ機能を使いこなすとネットワークの負荷を下げる事ができたり、色々と便利です。しかしながら私の過去の経験からすると正常に配信されない文書が出たり、DBが破損したり、Notesクライアントが破損して再セットアップが必要となったりと信用ならないやつです。そういえば、インターネット上のnsfをレプリカする方法があったかと思いますが、社内proxyの関係で80番ポートや8080番ポートしか開いていなくてもレプリカできるのでしょうか。

編集モード・表示モードとquery/postのsave/closeがユニーク

Notesではセーブする前後や画面を閉じる前後にNotesっぽいイベントが発生します。私の経験からするとquery系のイベントでContinue=falseとして自力でセーブ処理っぽいものを書いてSaveOption=1などとしている設計は危険な状態になっていることが多いように感じます(勿論そうしないとできないものもあるでしょうが)。経験が浅い技術者が乗り越えられない壁の1つであり、上手に利用するととても便利な機能です。

移行できない

色々な意味でNotesからNotes以外のシステムに移行できません。設計書はNotesがわかる人でないと読めません。式言語は他の言語習得の役に立ちません。そしてNotesデータはエージェントでCSVやXMLに書き出さないとなかなか外に出てきてくれません。RDBとの連携はoracle以外は研修でDB2に連携させた経験があるだけですが、両者ともすんなり動きました。移行できないのは下のような理由もありますね。

意外と重要なところに食い込んでいる

HOSTからのデータを各端末に配信する役目だったり、直接つながらないシステム同士の連携役を担っていたりと、(しかも一度に移行する気力を失うほどデータベースのサイズが膨れ上がっていたり)意外と重要なポジションにいることがあります。技術者として他システムとのインターフェース調整は勉強になるところが多いですし、他システムの仕様に詳しくなれるので良い思いができます。「それはNotesじゃできません」という言葉も覚えますが。

敵が多い

NotesのDBを読み取って変換できるツールを無料で配布したりですとか、はたまたそのまま読み込んでしまうという恐ろしげなソリューションまであるようです。マルチなソフトだけあって敵も多いですね。導入しっぱなしであとは知らん顔をされるよりは、そういった会社から「本当にNotesで良いんですか?」という提案を受けることで反対にNotesに対する信頼感を強めているところも少なくないと聞きました。下の問題を除いて。

ライセンス料が……

「へー。Notesって思ったより安いね」
「年単位ですけどね」
「……」
「……」
「永代供養じゃないの?」
※フィクションです

最終的には

Notesを愛し、自身をもってNotesを推薦する人が多いのがNotesの素晴らしい点であると思います。自分も悪口をつらつらと書きましたが、実はVB.netの悪口をこれだけ書けと言われても書けないでしょう。それは「ここんところがこうだったら良いのにな」という思いがNotesほど強くないからだと思います。

Notesが愛される理由のひとつに、過去から今までビジネスの現場を支え続けてきた歴史があるソフトであるという点があると思います。スピードの速い今の社会において過去の実績など無意味であると思う方もいるかもしれませんが、私はそう思っていません。これまでNotesがビジネスを支えてきた歴史(メモの交換~webへ)を眺めると、この流れを支え続けてきたNotesを開発する側の人とNotesで開発する側の人のノウハウの蓄積は大きなものであるように感じます。

けんじろう と コラボろう! > Lotus Notes/Dominoの歴史(日本語) : ITmedia オルタナティブ・ブログ
http://blogs.itmedia.co.jp/kenjiro/2007/10/lotus_notesdomi_a634.html

これからも素敵な製品でワクワクドキドキさせてください。よろしくお願いします。

Comment(3)