亀岡的プログラマ日記

京都のベッドタウン、亀岡よりだらだらとお送りいたします。

「越境」するライブラリCodeer.Friendlyを紹介しに「越境」してきた話 #devlove #DevKan

これはDevLOVE Advent Calendar 2014 「越境」の11/16日分の記事です。 越境ネタ、ということで色々考えたのですが、題記のネタが今一番自分の中でホットになってますので、ちょいとこれでやってみます。

MVP Global Summitにいってきたよ!

MVP Global Summit というMS MVPが世界中からMSの本社に集う、というイベントに行ってきました。

イベント全体を通して興奮しっぱなしで*1、本当に楽しい時間を過ごせました。 わーわーうるさい新入りをめんどうみてくださった方や、仲良くなった各国MS MVPな人々に感謝(Facebookタイムラインにハングルとポルトガル語とスペイン語が増えました!!)

もちろん招いてくれたMSさんにも。

んでですね、MVPサミットの中で、Codeerのしゃちょー @StoneGuitar777 さんが開発しているOSSである、「越境」する外部アプリケーション操作ツール"Friendly"を、@StoneGuitar777 さんをはじめいろんなMVPと一緒に、有名人に紹介する機会がありました。 Friendly自体のコードにはあまりコミットできていなくて、いくつかの機能の提案をしたりしている程度だったりするんですが、一応多少は英語話せるということもあって、できるだけ積極的にサポートしてきました。その時の話を少しさせてください。

越境するライブラリ: Friendly

「越境するライブラリ」と紹介していますが、Friendlyがどんなライブラリかというと、プロセスの壁を「越境」して、対象プロセスをほぼほぼ自由に操作する、というライブラリです。 ・・・これだけ聞くとハッキングツールなんですけど、そうじゃあないんですよ!これを使ってテストを書くんですよ!!

という話は、いくらしても野暮なので、まずはYoutubeの衝撃のデモを。

そして、@StoneGuitar777 さんがソフトウェア品質シンポジウム(SQiP)で発表されたのがこちら。

これを、越境して世界にアピールするために、MVP Summitにて色々と暗躍することとなったのでした。

MVP Showcase

まず、降り立った初日に言ったのがMVP Showcase。これは各国のMVPがそれぞれの製品・サービスを紹介する、というセッションでして、まずここで道行く方々に声をかけて、色々話をしていくことにしました。

その時に見せていたのが上述のVisual Studio ハッキング デモ。

これはプログラマばかりか、SQLSharePointやってるような人にも大受けで、「一体どういう仕組で動いているんだ??」ということをかなり聞かれたりしました。

ちなみに、MVP Showcase、最後に投票がおこなわれるのですが、その結果はなんと2位。

驚く外人に説明するのは楽しくて、ついテンションが上がっちゃいましたね。そしてその結果、なんか色んな人に声を掛けに行くことになります。

Effective C# の著者 Bill Wagner

じつはMVP Showcaseの参加者にBill Wagnerさんが居るのは、出発前にわかっていました。Bill Wagnerさんといえば、Effective C# シリーズの著者、C#erなら誰もが知っている大物に、恐れ多くも(お酒の力も借りて)アタックを仕掛けました。 ブースにパソコン片手に出かけて行って、まずは「本読んでます!」と挨拶。その後に「うちもShowCase出しているんだけど、デモ見てくれませんか?」と聞くと快諾。 ビデオのデモや、もう少し詳しい説明を行いました。その結果は・・・

  • Amazing !!
  • んで何に使うの?あぁ、テストね!
  • 仕組みは??どうやってるの??

とかなり食いついてもらえたので、「開発者を紹介させてよ!」そのままブースに来てもらいました。*2 ブース周りは大阪のEffective C#読書会の参加者が大勢いたので、とりあえずサイン攻めでございます(ごめんねBill)。そのあと@StoneGuitarさんと引き合わせ。あとは別の人の対応のために離れましたが、楽しく写真撮ったりしてたみたいです。よかったよかった。

ちなみにこの後Billとは何度もセッションが一緒になったので、MVP Showcaseの結果も伝えたりしてました。とても感じの良いおじちゃんでした!

C# の父 Anders Hejlsberg

それに調子に乗って、ではないんですが、C# のお父さん、Andersにもアタックです! とはいえこれは写真をとりに行くのが主な目的でしたけどねー。それにこれはほとんど @StoneGuitar777 さん単独アタック。 あんまり時間はなかったから、どんなものか理解してもらうのは難しかったかなー・・・。あとでチェックしてもらえてればいいんだけど!

WhiteのメンテナJake Donnovan

続いては、Friendlyのライバルツール、UI自動操作ライブラリのWhiteをメンテナンスしているJake Donnovanさんとも話をしました。これは @StoneGuitar777 さんが結構がんばって会う場をセッティングしたもので、僕はほとんど通訳w。

んで、反応は、、、

  • Wow! いいじゃんこれ!
  • UI Automationの制限にはホントに困ってる
  • でもインタフェースには言いたいことがある!
    • 例えば、async/await 構文使えるようにTask使おうぜTask
  • 英語ドキュメントも貧弱だよねー。書いてやろうか?
  • とりあえずクローンしてみてみるよ!
  • オーストラリアの奴らにも紹介してやるよ!

すこぶる好評!!

MSのOSS系の重鎮、Scott Hansellman

ここらへんまでで、だいぶ満足していたんですが、最後に個人的にこの人には!と思っていたScott Hansellmanさんを出待ちしてデモをしかけることに。

HansellmanのBlogGeek魂あふれていて大好きで、積極的にOSSに貢献していることもあって是非コンタクトして、あわよくばBlogで紹介してもらおうと思った次第。 また、彼のBlogはファンが非常に多くて、かつOSSに関しての特集記事も定期的に連載しているので、気に入ってもらえれば非常に影響が大きいだろうな、とも思ったのです。

セッション終わり、本当は部屋で話したかったけれど、人がひっきりなしに訪れていて接触できず。部屋から出てきたタイミングで突撃!

最初は、割と怪訝な顔で「いいけどさっさとしろよ」と言われたんですが、デモを見せると「Crazy!」の一言!んで、これCrazyだけど何に使うのよ??あとどうやってるの???とかなりマジに聞かれました。

テスト自動化を目指していること、中身の簡単な解説をしてると、なんと周りを通りかかった他の社員にも紹介したりとかなりのお気に入り用。名刺までもらって、チラシも渡して、個人的にはかなりの好感触。これでScottのBlogに紹介されれば言うことなし!って感じなんですが。

てなわけで雑惑

やっぱProduct Firstだよなー、とは思った次第。今回、FriendlyというProductがなければここまで積極的に動くことはできなかったし、動くものを見せられる、というのは非常に重要。てなわけで、あらためて @StoneGuitar777 さんはじめとしたFriendlyコミッター陣に感謝です。こんなに会話経験詰めたのもFriendlyのおかげだし。

あと今回の海外行き、英語はもちろん全部聞き取れたわけではないんだけれど、そこまで困らなくて、逆に聴講しているセッションに対する知識が低くて、全然質問できなかった、てのが多かった。あたりまえだけど、技術レベルを最新に保ったまんま追いかけつつ、英語を出来るようになる、という二足のわらじをはかんとどうしようもないですねー。ま、そこは頑張りどころというところで、また洋書をたくさん買ったりして勉強しよっと。

でも、ようやく純粋な「語学能力」が、国境を超えるのの一番のネックではない、というのがわかりましたね。1にプロダクト、2に技術。英語もやりながら、そこらへんのスキルを着実に上げて、世界へとちょっとずつ進んでみたいですね。

*1:興奮しすぎて携帯なくした

*2:ブースの場所を英語で説明でけんかった