読者です 読者をやめる 読者になる 読者になる

Challenge Java EE !

Java EEを中心に趣味や仕事における開発メモを書いています。

nulabさんのカンファレンス「nucon」に行ってきました! #nucon

今日は平日午後を抜け出してnuconに参加してきました。
http://nucon.nulab.co.jp/

2/5追記
nulabさんのサイトで資料が全て公開されたようです(>_<)!!

http://nulab-inc.com/ja/blog/nulab/nucon-slides/

f:id:kikutaro777:20140204133023j:plain
(写真はかなり早めに着いたときに撮ったもので、基調講演が始まる時間にはコミコミに)

先にちょっと感想を書くと、Nulabの方々は本当に自社プロダクトを大切にしていて、これからも大事に育てようとしているんだな、というのが各種発表から伝わってきて、こんなシステム開発もあるんだな…できるんだな、と何かほんわかしました。

エンジニア一人一人が技術に長けている上に、チームワークもすごく良さそうで、良いサービスができる土壌みたいなものが揃っているんだろうな、と感じました。

帰り道に自分の所と比較して、そのあまりの違いに半泣きで帰りました…(苦笑

参加理由

nulabさんのサービスで自分が利用しているのは

の2つです。今日のnuconで正式リリースの発表があったTypetalkも使ってみたいです(^^)

で、これらのサービスを提供している会社、というだけでは、あまり平日抜け出して行くほどの気持ちにはならなかった気がしているのですが(すみません;)、個人的には前に買った「WEB+DB PRESS Vol.72」の記事を読んだことが、今回参加してみたいと思った理由です。

WEB+DB PRESS Vol.72
WEB+DB PRESS Vol.72
posted with amazlet at 14.02.04
近藤 宇智朗 生井 智司 Dr.Kein tokuhirom 森田 創 中島 聡 堤 智代 A-Listers はまちや2 竹原 川添 貴生 久保 達彦 道井 俊介 飯田 祐基 中村 知成 規世 やよい 後藤 秀宣 天野 祐介 奥野 幹也
技術評論社
売り上げランキング: 20,085

この記事でnulabさんでの開発について色々書かれていて、すごいなぁ、と思ったのがきっかけで、生で話を聞く機会があるなら行きたい!と思って参加しました。

参加したのは以下セッション。

  • 基調講演

Technical Track

  • 開発者がかたるヌーラボのコラボレーションサービス API 最前線
  • Cacooを支える技術 ~世界の100万ユーザを支えるドローツールの今と未来~
  • 職人任せにしないインフラ構築/運用 ~DevOps時代を生きぬくために~

General Track

  • 毎日使いたくなるサービスをつくるためのヌーラボ流レシピ

基調講演

基調講演では主にnulabさんのサービスに関する最新情報などを中心とした話でした。

主なトピックをまとめると
Backlog

  • 20万アカウント・10万プロジェクトほどの利用
  • 先日韓国語に対応して全部で5言語
  • Backlog for iPhoneが3月頃に出る予定

Cacoo

  • 110万アカウント・400万シートほどの利用
  • 利用の86%が海外でUS(13%ほど)、台湾(9%ほど)、そしてなぜかコロンビア(5%)が上位
  • Cacoo Enterprise Editionは自社サーバで使えるタイプ
  • SDK Editionは組込で使えるタイプ

Typetalk

  • 正式リリース
  • 2011/10頃からプロト作成(業務時間外で作ってた、とのこと(^^;すげー)
  • 2012/2頃から社内公開
  • 主な機能(Feature)
    • Like(いいね)…エフェクトは作り手がこだわったとのことで、確かに凝ってたw
    • 絵文字(Backlogではすでにある)
    • インライン表示 TwitterやCacooのURL貼ると画像付く
    • まとめて共有 あとで確認するのに便利な機能
    • メンションで通知 iPhone/Andoridでも
    • API OAuth 2.0対応
  • Roadmap
    • Backlog連携機能
    • デスクトップアプリ
    • 1対1チャット
    • プレミアムプラン

また、新たなサービスとして、Backlog、Cacoo、TypetalkでSSO(シングルサインオン)するためのnulabアカウントというのができるそうで、ますます便利になりそう(^^)

個人的に本当すごいな、と思うのは、社員が22名、そしてほぼエンジニアとのことで、その人数でワールドワイドに多くのユーザが利用するシステムを運営している点。ちなみに自分が所属する部門は16人。受託開発メインで業態が少し異なるとはいえ比較すると…。エンジニアのスキルもだいぶ違うなぁ…と思ったり。

開発者がかたるヌーラボのコラボレーションサービス API 最前線

このセッションでは、Backlog、Cacoo、Typetalkで使えるAPIに関してそれぞれのプロダクトに関わるメンバから紹介がありました。

Backlog

  • APIは主に課題管理の部分に関してのみ(ファイル共有はWebDAV、バージョン管理はSVN、Gitなので普通に使える)
  • Backlog ManagerというiPhoneアプリがあってAPIを利用している例
  • Jenkins Backlog Pluginがある
  • 様々な言語でAPIをサポートしたライブラリがある

※全てをメモれませんでしたが、Javaではbacklog4jというのがあって、nulabの方が作成されてるとのこと

  • backlog4jをオフィシャルライブラリとする予定

Cacoo

  • 図の内容をXMLで取得できるAPIがある

 このAPIを利用して、例えばAWSの構成図からEC2インスタンスを起動するなんてこともできるらしい

  • Cacoo miruというAndroidアプリ(発表者の方がnulab参画前に作ってたとかw)
  • 今後はCMS向けプラグインを拡充予定

Typetalk

  • API使ってbotみたいなのを作ることもできる
  • Jenkinsと連携して、ビルド結果をTypetalkで通知
  • モバイルTypetalkアプリを超えるようなものを作ってw

またNulab Developersとして、開発者向けにドキュメントなどの整備を進めていかれるとのこと。

Cacooを支える技術 ~世界の100万ユーザを支えるドローツールの今と未来~

Cacooを利用していると、これ本当にWeb…?と思ってしまうくらい凄いなーと思うのですが、その裏側のお話でした。

Cacooを構成する主なアーキテクチャとしては
Java
Apache Tomcat, Seaser2, Cubby, Mayaa
Flash
BlazeDS, Flex
DB
PostgreSQL

クライアントはFlexなんですね。知らなかった。
コンポーネントはFlexのコンポをそのまま利用しているとのことで、Cacooのスキンを付けてデザインを変えているとのこと。
スキンを取った姿を発表で表示していましたが、確かにFlexっぽかった(^^;

デザインパターンも多く利用しているようで、操作の状態はStateパターン、ユーザの操作をCommandパターンで制御しているとのこと。
共同編集の方法なども詳しく説明されていました。うーん、すごい。

主に

  1. FlexベースUIとカスタムスキン
  2. ActionScriptネイティブのバイナリデータ
  3. BlazeDSを使ったサーバサイドPush

を利用しているとのことで、イマドキだと…という話をされていて

  1. Canvas,CSS3を利用したリッチなUI
  2. JSONオブジェクト
  3. Socket.ioを使ったサーバサイドPush

になりますかね、とも。

ただCacooが生まれた2008年当時を振り返るとIEが7,8でSafari3、ChromeがベータでHTMLはドラフト発表、のような状態だったとのことで、技術の選択としては正しかったと。

技術の選択、に関する話を掘り下げていましたが、とても興味深かったです。
イマドキな技術 vs 枯れた技術、なんてのは常に現場で議論になる所だし。

CacooではFlashベースを大きく変えることはしばらくないとのことですが、ちゃんとHTML5技術を取り込んだり、新しい技術もうまく融合させていこうとしているのが凄いなと。

職人任せにしないインフラ構築/運用 ~DevOps時代を生きぬくために~

あとでスライド公開するので、細かいメモは不要~と冒頭に言われてたので、ここはスライド公開されたらそれをお借りしようかと(^^;

発表者の方を拝見したことがある気が…と思ったらJenkinsユーザ会を運営されてる方だったのですね!!なるほど。

話全体としては、インフラエンジニアに頼りきりな状態から、開発エンジニアもインフラを扱えるツールなどを取り入れて皆でやっていきましょう、といったお話でした。

AnsibleというChefと同じようなツールでサーバ構築が自動化しているとのこと。
Chefと比べた利点としては、サーバ側にPythonとsshdだけあればいい、という点とのことでした。

構成チェックをserverspecで自動化したり、Packerなども利用しているそうです。

自分はChefを(仕事ではなく)触ってみた、レベルの人間なのですが、こういう自動化を仕事でもっと取り入れたい…切実。

毎日使いたくなるサービスをつくるためのヌーラボ流レシピ

ここまでずっとTechnical Trackでしたが、最後はこのお話を聞きたくGeneral Trackへ移動。

最初に書籍の紹介をされていました。

開発現場に伝えたい10のこと
http://tatsu-zine.com/books/genba10things

このうち発表者の方の部分はnulabブログにて公開されており

「どうすれば価値を生み出すか」を知るためにヌーラボ で行っていること
http://nulab-inc.com/ja/blog/nulab/devlove-genba10things/

ここにある内容がベースとなっている発表でした。もうなんか、開発者として共感することばかりという。

多分ずっとうなずいてた(^^;

途中途中で引用される文がまたすごくうまくて、上記記事にもNintendoの宮本さんの言葉(今日の発表でも入っていましたが)や、今日の発表にあったノーマンの「誰のためのデザイン」からの引用なんかも心に刺さる感じががが。

そして最後の「早く行きたいなら、一人で行け。遠くに行きたいなら、みんなで行け。」(アフリカの諺)はチームワークを大切にする方ならではの引用だなと。

この言葉、ホント部内に広めたいけど、チームワークなんて何のその…という感じで独走するタイプが結構いるので多分無駄かなと…(-_-;

……

全体的にメモレベルになってしまいましたが、nucon非常に刺激になったし勉強になりました。こういう開発ができるように少しずつでも色々取り組んでいきたい所です。

にほんブログ村 IT技術ブログへ
にほんブログ村
にほんブログ村 IT技術ブログ Javaへ
にほんブログ村