2016/02/20

Dominoデータをモダナイズする「LDC Via」ソリューション

IBM Connect 2016に参加するにあたり、テクてく Lotus 技術者夜会で「LDC Via」という海外ソリューションを視察してくる、という宿題を頂きました。
現地では、LDC Viaチームと2回ほどミーティングをさせて頂きましたので、簡単にご報告いたします。

LDC Via とは
イギリスで活動する4人の熟練の Domino 技術者が立ち上げた組織で、現在のNotesのデータ(nsf) をより活用するためのソリューションを提供しています。
彼らの言葉では、データや知識を "modernize" する、と呼んでいるようです。

主に以下の3つがこのソリューションのキーです。
1) NotesDBライクなクラウドデータベースサービス
2) Notesデータベース(nsf)とMongoDBとの同期
3) MongoDBのデータをUI表示するための機能

それぞれ、詳細は以下の通りです。(以下は全て私の理解であり、実際は異なる可能性があります)

1) NotesDBライクなクラウドデータベースサービス

これはバックエンドの実体にMongoDBを使いつつ、NotesDBのような使い方が出来るサービスです。
例えば IBMのDBaaSの1つである compose などの同類に聞こえなくもないのですが、特徴的なのは「Notesデータベースを強く意識している」という点です。

例えば、以下のようなことが実現されています。
- 読者フィールド、作成者フィールドに相当するセキュリティがある
- 返答文書などの階層構造がある
- Notesのリッチテキストデータを引き続ける
- 添付ファイルが格納出来る

基本的にはクラウドのDBサービスですので、データアクセスは REST API になり、上記の機能を含め、Notesの扱いを意識したAPIが大量にあります。
LDC Via API Reference
逆に、いくらバックエンドが MongoDB であったとしても、MongoDBのAPIを直接叩くことは許可されていないそうです。
MongoDBを使うことで、DBサイズやスケーラビリティなど、今の nsf 以上のメリットを受けつつ、Notes的なAPIを使った開発が出来ることになるそうです。
MongoDBを使うことの恩恵は他にもあるのでしょうが、それは利用者が直接使うのではなく、API経由などで提供されていく形になるようです。

REST API ということは、開発言語を問わないので、node.js や Java、そしてXPages も含め好きな言語でデータ取得に行ってよいというのが売りです。

2) Notesデータベース(nsf)とクラウドデータベースとの同期
既存のNotesデータベースと、LDC Viaクラウドサービス(実体MongoDB)とのデータの同期機能があります。現在は、Notes⇒クラウドDBの片側同期ですが、近い将来、双方向の機能がサポートされるとのことです。
この同期にはツールを使いますが、以下の2種類が用意されています。

(1) DominoでDDSを有効にし、クラウド側からJSON経由でデータを同期する
(2) DominoのJavaAPIで作られたツールを使って同期する

デモを拝見して会話したところ、JSON経由はデータベースを1つ1つ指定するため、一括での大量移行には向きません。まとめて移行する場合は、Javaツールを使います。
もちろん、この移行のときに、現行の読者フィールドや文書階層などが維持されるということのようです。

3) MongoDBのデータをUI表示するための機能
上記の通り、基本的な機能はクラウドデータベース機能+ツールなのですが、LDC Via Lens という機能を使うと、さらにデータを表示することが出来ます。
特に、Dominoアプリケーションの中でも代表的な
- ディスカッション
- 文書ライブラリ
- チームルーム
- メールデータベース
は、近代的な Responsive Web UI でモバイルを含む、マルチデバイスで、セキュリティや階層構造を維持したまま閲覧が可能だそうです。

さらに、Notes でフォームを作るように、フィールドマッピングを行いながら、任意のDBの表示フォームを作ることが可能なようです。
ただ、私が理解する限り、アプリケーションプラットフォームとして使えるほどではなさそうなので、REST API 以外のデータ閲覧手段の1つだと認識してます。
(Notesワークフローがそのまま動くとかではないと思います)

また、データベースの検索なども可能であり、いわゆる「全文検索」と「フィールド別検索」 の組み合わせなどが可能とのことです。
複数のDBを串刺し検索したいという要望も多いらしく、現在は REST API での自作が可能なレベルですが、トッププライオリティで対応すると言っておりました。


LDC Viaソリューションの適用箇所
データをNotesの外に出していくわけですが、現行のNotes/Domino環境に対してポジティブに適用しているところが売りで、そこらへんはDominoコミュニティから生まれてくるだけのことがあります。

- 閲覧だけで使っているDominoの文書ライブラリをクラウドに移行し、オンプレ運用負担を軽くする
-外部へのデータ公開の1つのやり方として
セキュリティの維持や部分的な公開、マルチデバイスへの対応、検索対応など、良いとこどりを出来るのが売りみたいです。


よくある質問と、その回答
Q: 読者フィールドが守れるということは、ユーザーディレクトリの同期が必要なのでは?
A: やはりユーザー情報として、Notes階層名を別名として持つことが必要なようですが、APIで入れ込めますよう、とのことです。
なお、TDI のアダプターがあるわけではないですが、技術的には出来るでしょうとのこと。

Q: 読者フィールドがあるということは、パフォーマンスに問題はないのか?
A: 過去にパフォーマンスの問題があったNotesDBなどを使ってテストしてみたが、今のところパフォーマンス問題は見当たらない

Q: サイズ制限、DB数制限などは?
A: 特にないと思っている

Q: ノンコーディングで、どこまでアプリが作れるのか?
A: Lens機能の範囲で、フォームやビューを作ることが出来る。
(ワークフローなどは多分無理でしょう)

Q: ソーシャル連携を含め、外部連携はどうなっているか?
A: API で好きにつなげてください

Q: モバイルからのアクセスは?
A: Lens 機能で、例えば標準テンプレートは Responsive インタフェースで提供されている

Q: 串刺し検索は?
A: 現行はAPI。これから開発する予定。

Q: 文書リンクは機能するか?
A: 機能する (みたいです)

Q: Notesは出来るが、LDC Via が出来ないことは?
A: データベース機能という意味では、例えば現在データの暗号化の機能などはない。


最後に、UIやドキュメンテーションの日本語対応は現在されていませんが、日本のマーケットにも興味はあると言っていました。

以上が私の理解のサマリーになります。ご興味がある方は、彼らのホームページから、資料や動画が見れるので、確認してみてください。
LDC Via: modernise your Domino data

その他、詳細は、彼らの口から直接説明する機会が日本においてもあるかもしれません。
なお、IBM Champion でもあり、彼ら4人の1名である Mark Myers は日本が大好きで、よくプライベートで来日されるそうです。



なお、私はこの組織の関係者ではなく、テクてくでの宿題の結果としてこのエントリを書いております。

2016/02/16

IBM ConnectのセッションDB

先日、IBM ConnectのセッションDBについてを書きました。
IBM Connect 2016のスライド

が、slideshare を確認したり、ファイルで持っているのではなく、NotesDBでまとめてファイルを持っていたい方に朗報です。

Proud ProgrammerのBob Voith氏が素晴らしいものを公開してくれました。
以下で、セッションDBがダウンロード出来るようになっています。

IBM Connect 2016 session database with abstracts - just add presentations

また、IBM Connectに今年行かれた方は、セッションのスライドファイルを IBM Connect 2016コミュニティのファイルから zip 形式で一括ダウンロードが出来るのですが、それを自動的に各文書にインポートする機能が備わっていて、セッションの概要とスライドの添付ファイルが1つにまとまって使えるようになっています。とても便利です。
行かれた方限定ですが、是非お試し下さい。 

2016/02/14

IBM Connect を満喫する英語レベル

今回もIBM Connectにはたくさんの日本人が参加され、またオンライン動画を視聴された方も多くいらっしゃと思います。全てのセッションは英語で行われるので、全てを理解するのは難しいと思いますが、1人の日本人として私の感想を書いておきます。願わくば、次回自分が行く時はこれ以上の理解でありたいですし、他の方々の参考にもなればと思います。

私はここ数年何故かわりと英語を勉強していて、海外長期滞在経験はないのですが、資格だけで言えばTOEICリスニングは495点です。全部完璧に聞き取れて当たり前のように見えますが、実際はそんなことはありません。わからないことが多々ありますし、ある程度妥協しながら、重要なところだけ満喫出来ればよいかなと思いました。

1. OGSの英語
 OGS(Opening General Session)は今回2つありました。
IBM Connect 2016-GS Part 1
最初に登場したJason Silva氏の講演は私は多分80%くらい理解出来ました。情熱的でところどころ速いので、集中力を欠くとついていけなくなります。
tool の話と、exponentially のキーワードと、billionaire の再定義の話が理解できればよいかなという感想です。
 
次のWatsonの技術者の話は同じようなテンポ(やや速)ですが、ずっと聞き続けて、多分集中力が切れる人も多いと思います。ジョークの一部は理解出来ないものも多々あります。全体的に私の理解度は高くないです。

ケニアからのスピーカーは、訛り以外は問題なかったと思いますが、訛り慣れしてないと厳しいでしょう。一応理解出来たつもりでいます。

最後のディスカッションは、Katrina TroughtonのNZ訛りがやや聞きにくく、あと真ん中の女性が早口で、彼女が本気で内容の濃い話をしたら多分ついていけません。内容はほぼ理解出来ましたが、一字一句聞けてるわけではなくて雰囲気で判断してます。

IBM Connect 2016-GS part 2
OGS Part2 はようやく製品系デモが出てきますが、まず最初に、GreenWell社がいきなり出てきて、この仮想会社がOGSで登場することを知らないと状況理解がついていけなかったと思いますし、私もロールプレイの整理がすぐに出来ませんでした。
Part1はTED風プレゼンで、素直に理解しやすいのですが、Part2 は得意の製品系デモのはずなのに案外理解が弱いです。
- いきなりのロールプレイ理解の難しさ
- デモ画面の詳細が会場だとあまりよく見えない
といった理由で、私も現地1回だけでは6~7割くらいしか理解しておらず、実際には、後からYouTube動画を再生して詳細を確認しました。

今回の雰囲気だと、ゲストスピーカーのお話は TED のようなものだと思って、聞けばよいと思います。
製品デモに関しては、念のため過去数年のOGSでのデモを見ておくと、理解しやすいと思いました。来年は、多分ホストが Jeff Schick ではなく、Inhi Cho Suhになるので、彼女の TED などで慣れておくとよいと思います。


2. セッションの英語
セッションはスピーカーによってだいぶ違うのですが、私の理解は平均して 30%~90%くらいです。聞き落としの原因の多くは
- スピーカーがインテリ過ぎる
- 技術に馴染みがない
- 文化的な話が入る
- 早口すぎる
- 訛りがキツイ
- ボソボソ話す
などです。

有名人を例にすると:
まず Ed Brill のセッション。以下は過去のIBM Connectのセッションです。

IBM Connect 2013 - Whats New in IBM Notes 9
この例はNotes9の話でわかりやすいですが、Ed の最近のVerse社内展開の話は、やや速いスピードで格調高い単語・表現が使われたりするので、私はそんなに完璧には聞きとれません。おおよそのエッセンスはわかります。
(なお、私は今回 Ed のセッションは取りませんでしたが、すれ違うたびに挨拶だけしました)

もともと IBM Champion で今はIBM社員となった Mat Newman。以下も過去のセッションの例です。
Mat Newman - Lotusphere 2012 - BP102 - User Blast!
典型的なオーストラリア訛りですが、プレゼンが上手で、案外引き込まれてしまいます。私は今回のMatのセッションは80%くらいは理解出来ました。「ちゃんとリハーサルもやってるんだよ」とも言っていましたし、わかりやすいセッションだったと思います。時々オーストラリア訛りに対する脳内アイエイ変換が不発で聞き落とすこともあります。(特に、メールがマイルになるところ。。)

早口の例としては、カリスマ IBM Champion の Chris Miller。いつも素晴らしいコミュニティ活動をされています。
以下は彼がやっている Podcast から、今回の IBM Connect 2016の紹介です。
IBM Connect 2016 OGS and Day 1 review | IdoNotes Episode 145
このPodcastでも、やや早口なところもあるのですが、なんとか聞き取れます。
ところが、実際のセッションの中でのトークの速いこと速いこと。しかも、親切なことに、スライドに書いていない重要情報を大量に話すのです。残念なことに、私のリスニング力では、50~60%といったところです。


次に、life-time champion となった、Nerd Girlsでもリーダーシップを発揮している Gabriella Devis。
以下は、過去の Nerd Girlsセッションの動画です。
Gabriella Davis and Taking That Jacuzzi Time | Spark Ideas by the Nerd Girls
正直、かなり訛りがきつくて、私は理解が苦しいです。 今回はセッションに行っていませんが、場合によっては50%くらいしかわからないことも過去にありました。
彼女は、Connections を中心に、今後 Dominoエンジニアがフォローしていかなければいけない技術領域をリードしていて、もっと積極的に彼女から学ぶ必要があるのですが。

3. Ask the developer
名物セッションで、質問に対して開発者・製品マネージャが回答します。
スライドがないので、リスニング能力が全てです。
私は今回、90%以上は理解出来ました。質問も回答もわかりやすかったと思います。 (このセッションをこんなにすっきり聞けたのは今年が初めてでした)

4. 全体的なリスニング感想

私個人としては、今回の滞在で以下のようなシチュエーションが大変苦手でした。
日本で勉強しているだけだと、陥りやすいのだと思います。

1) ぶっきらぼうな人との会話
入国審査、タクシーの運転手、レストランでの会話、など。
さすがにこのような人は、IBM Connectの中では見かけませんが、通じない経験というのはそれなりにショックです。

2) うるさいところでの会話
例えばソリューションEXPOや、SpeedGeekingでは、とにかく周りが煩くて、日本語ですら聞くのが大変です。また、大きい声で話そうとすると、どうしても発音が母音が強くなり、こちらが話すことも通じにくくなります。しかし、今後に向けて特に対策はありません。。。

3) ぼそぼそと話す人
開発者に多いのですが、セッションによっては何を言っているかさっぱりわからない人がいます(今回はBluemixの担当者)。マイクを付けているのか付けていないのかわからないような人です。これは理解できなくても仕方ないだろうと、私は思いました。

4) 訛りがきつい人との会話
ヨーロッパ系もそうですが、ラボなどでは、中国人・インド人もたくさんいて、やはり不慣れだと会話に苦労します。私は実践経験が少ないので、訛りは苦手です。
普段から極力、YouTubeで、セミナー動画などを見ておくとよいかと思いました。特に、最近の OpenMic や、他の領域(例:Bluemix)ではインド人スピーカーのセッションも多くて、勉強になります。

5. 自ら話す機会

自ら望まず、業務上の必要性がなければ、ほぼおそらく話さずに終えることも出来ますが、折角の機会なので、以下はカタコトでも挑戦したほうがよいと私は思います。
- 憧れの人に挨拶する。セッション終了後や、ラボ、あと名前を見かけたら強引に。(私も今回憧れのChampionと会話が出来て感動しました)
- TechLab に行って、質問をたくさんする。これは日本から準備したほうがよいですが、うまく担当者が見つからないこともあるので期待し過ぎない程度に。
- Solution EXPO で会話する。 海外のトレンドと日本のギャップなどがわかって、ビジネスチャンスにもなるし、ガラパゴス化防止にもなります。


私が今度何年後に行くことになるかはわかりませんが、今年よりもさらに充実度があがればよいと思い、今年の感想を書いてみました。
本当は全部100%わかるに越したことはないのですが、日本では平均以上の英語力があると見なされても、こんな程度しか理解出来ないものですので、苦労があったとしてもあまり気にせず、また、日本人みんなで未来に向かってノウハウ共有したり、WWに向かったモチベーションが高まればよいなと思います。

2016/02/11

IBM Connect 2016のスライド

世の中には、Lotusphere / IBM Connect のスライドを読むのが大好きな人がいるようです。私もその1人で、毎年年初に「今年はスライド100本読む!」と思いつつ、結局年の前半に数十本読む程度になっています。めげずに今年も頑張ります!

今年も IBM Connect が終わって、スライドが様々な形で公開されています。
まず、IBM Connectに出席された方は IBM Connect のポータルサイトから各セッションごとにダウンロード出来るようになっています。
 しかし、なかなか1つ1つダウンロードするのが面倒だと思います。
 その時は、是非こちらをお試し下さい。まだ、スライドが全て出揃ったとはいえないので、暫定版みたいなものです。ブログ主さま(kenio.carvalho)曰く、来週アップデートして下さるそうです。

List of links to download Connect2016 presentations | mySphere

ところが、残念なことに、ファイル名だけでは、どのセッションだかよくわかりません。
それへの対策として、同じブログで今度はリネームようの Javaのコードが提供されていますので、自力で出来そうな方はやってみると幸せになれそうです。

How to rename all Connect 2016 presentation files at once | mySphere


それ以外にも、出席出来なかった方向けに、スピーカーの方々、特に IBM Champion たちが積極的にスライドを共有してくれています。

 まずは、Chris Millerが作っているセッションDBです。
2013年からのスライドのポータルになっています。
このエントリでそのことが多少紹介されています。
IBM Connect sessions database for 2016 | IdoNotes (and sleep)

セッションDBの実体は以下です。私は、今後のアップデートに期待してフィードリーダーに入れてあります。
IBM Connect Sessions & Lotusphere Slides


その他、開発系の方々は、ここも便利にまとまっていると思います。
XPages and more: IBM Connect 2016 - Overview of the session slides, blog posts and videos
XPages and more: IBM Connect 2016 - Session Slides Application Development


現地に行ってたとはいえ、参加者は4日間の最大で20セッションしか聞けないので 、私もこれからいろいろと楽しく読みたいと思います。

2016/02/07

IBM Connect 2016

先週行われた IBM Connect 2016 に参加してきました。私が参加するのは、2001年、2007年、2013年に続いて今回で4回目です。
やはり参加するといろいろと刺激を受けるもので、怠け者の私も、精力的に活動する IBM Champion たちを見習い、たまにはブログを書いてみたいと思います。

今回の発表、Domino, Connections, Verse の将来や、新しい Project Toscana については既に報告がありますので、ひとまず、軽い感想や、私が現地でやったことを書いてみます。

Opening General Session:
今年から、Part1 と Part2 の2つに分かれ、間に45分の休憩が入りました。このお休みが不要ではないかという声もありましたが、一方で、海外ブロガーの間では、この時間に情報整理が出来たり、EXPOに行けたり、また久しぶりの再開が出来てよかった、などの声も見られました。
製品関連の話は、Part2 に集約され、Part1 は中身がなかったという声もあるのですが、外部からのIT業界に対する期待のようなものを感じることが出来て、私には多少の刺激になりました

新製品などにご興味ある場合は、以下の YouTube ビデオが公開されています。
IBM Connect 2016-GS part 2 - YouTube

各種セッション:
昔は Notes/Domino に関するセッションだけ行っていたのですが、ここにきて、業界としての範囲も広くなり、私が必要とする範囲も広くなり、ストラテジーに行くか、製品系に行くか、ノウハウ系に行くか、技術でも開発系、運用系、などセッション選びが悩ましかったです。また、日数が1日短くなったこともあり、泣く泣く見送ったセッションもありました。
会社の垣根を越えて、参加される技術者同士で、事前に戦略など立てておくとよいかな、と思いました。

Jump Start セッションは、以前は入門系セッションが多かったのですが、今回は単なる技術セッションになってしまったような気がします。

Ask the developer:
最終日の名物セッションです。3年前は Mat Newman がまだIBM社員ではなかったので、たくさん質問していたのが印象的でした。
今回は前回までと少し勝手が違ったと思います。私が知っている限り、これまでは developer が回答していましたが、今回は product manager も一緒に回答していたため、わりと流れがスムーズだったと思います。あっという間の1時間でした。

Solution EXPO:
パートナーが、自社のソリューションを紹介するブースです。コンパクトにまとめられていましたが、とにかくざわついていて、なかなか会話が困難です。印象として、これまではNotes関連のソリューションが目立ちましたが、今回はあちこちで Connections の画面が見られました。
日本にいると、海外のソリューションを知るきっかけはあまりないので、とても参考になります。セッションで忙しくて、なかなかゆっくり回る時間がないのが難点です。お勧めは初日です。ビール飲み放題です。

SpeedGeeking:
ここ数年のConnect名物で、Solution EXPO の一部を使って、1人5分のプレゼンをします。聞き手は、だいたい1テーブル、数名です。PCの画面を見ながら、うるさい会場でマイクなしでやりますので、大変ですが、IBM Championなどの有名人と接触のきっかけになったりするので私は好きです。
今回は
- ブログアクセスを倍増させる方法
- OpenNTF運営の苦労
- 1つのコンテンツを複数デバイスで編集
- Connectionsのユーザーアダプション
- Notesの複製のトラブルシューティング
などなど、でした。いろいろ聞きましたが、よくわからなかったものも多い。

Technical Lab:
製品開発者がいるブースです。日ごろの悩みを直接開発者にぶつけることが出来る、限られた機会です。開発者といえど何でも知っているわけではなく、彼らが協力してくれるようなよい質問をするのが大事かなと思いました。実践系ではなく、どちらかというと、純粋な技術・アーキテクチャの質問をすべきだと感じました。
私が尊敬する IBM Champion の Daniel Nashed は、 スキルを付けたければ、ここに来なければダメだ、と言っていました。

なお、OGS でのWatson連携のデモについて、Verseの開発者に、「この言語認識機能は日本語も大丈夫なのか」と聞いてみたところ、「自分たちも今のところわからないけれど、大丈夫じゃないかなー」と言っていました。開発者は案外、自分の本当の担当エリアしか知らなかったりするので、全てを期待しすぎてもいけないのです。

また、Technical Lab ではありませんが、朝食を食べているときに、Verse の UI を開発しているという女性から話しかけられて、今回の印象や、ユーザーとして Verse を使った時の印象について話をしました。
食事のときの会話は、なかなか難しいのですが、運が良いとこういう遭遇もあったりします。彼女も、日本語大丈夫じゃないかしらーねと言っておりましたが、UIの担当ですので参考程度に聞いておきました。

IBM Champion との交流:

私は世界各国のIBM Championをとても尊敬しています。Championのセッションを受講出来るものありがたいですが、機会があれば、直接交流が出来るのもとてもありがたいです。
Java/XML/XPagesで活躍する友人の Paul Calhoun と挨拶出来たこともよかったですし、何より今回は、私が長年ずっと尊敬し続けている Daniel Nashed と直接交流が出来たのがよかったです。

また、実際に現地に行くことで、私が知らなかった、すごいChampion がいることを知れるのもよかったです。今回発見したの、Ytria社のBen Menesiです。多少挨拶したのですが、今後彼の講演のスライドなどはチェックしておきたいなと思いました。 (というか、Ytria社の技術ブログを購読リスとに入れました)

海外ソリューションの視察:
今回、テクてくLotusにて私の宿題として、LDC Via というソリューションを視察してきました。まず、このソリューションに対する疑問を解消するために1時間のミーティングを行い、その後、日本でソリューション展開が可能であるかどうかについて、30分のミーティングを行いました。
これについては、別途ブログで概要などをご報告したいと思いますし、機会があればどこかでお話したいと思います。

Senior Product Managerとの製品改善ミーティング:
私が今期参加した ノーツコンソーシアムの「ノーツ&コラボ技術研究会」では、製品改善要望をまとめていたのですが、たまたま私が IBM Connect に参加したということもあり、製品担当者にインプットしてきました。
わりと一瞬で却下される要望が多いのかな、と思いながらミーティングに臨みましたが、一件一件、その背景などを丁寧に聞いてくれて逆に驚きました。

SC Notes Onboarding担当者との顔合わせ:
私はWWで展開中の、SC Notes Onboarding研修の講師も担当しているのですが、WWの責任部門のメンバーと今回初めて顔合わせが出来ました。日本人は、わりとドメスティックに活動していますが、世界的には Connect の価値はこういうところにあるのだと感じます。



もし、行ってみたくなった方がいらっしゃれば、是非来年以降、体験してみてください。出来れば私も、またご一緒したいです!