fc2ブログ

makopi23のブログ

makopi23が日々の生活で感じたことを気ままに綴るブログです。

「Spring in Summer ~ 夏なのにSpring」に参加しました

2015/8/28(金) 「Spring in Summer ~ 夏なのにSpring」に参加してきました。

DoorKeeper
https://jsug.doorkeeper.jp/events/27682

場所は東京駅スグのグラントウキョウサウスタワーです。
参加申し込みは430人を超えてました。スゴいですね。

私がこのイベントに参加した理由は2つあります。

  • ウチの部で開発しているStruts1ベース(笑)の社内標準の開発フレームワークに、Spring Frameworkが追加されたこと。
  • 横浜道場スプリントで開発しているアプリのフレームワークにSpring Bootを採用していること。

というわけで、個人的には微妙なSpringブームなのです。
特に後者はちょうど、実践中なのです。個人的には以下の書籍で写経したりして勉強しました。良書ですね。



この日、私が参加したセッションは以下です。


あと、冒頭の「R1-1.オープニングセッション」は、向かう電車の中でスマホからUstreamで聴講してました。
JSUG会長の長谷川さん、Seaserや寺田さんに向けた辛口ジョークは相変わらずでした。(笑


R3-2. 今日から始めるGradle入門ハンズオン (2時間)
R3-2.今日から始めるGradle入門ハンズオン (2時間)

Springのイベントなのに、なぜかGradleのハンズオンに参加・・・
20150828_jsug3.jpg

(スライドが公開されたらココに貼る)

@grimrose さん主催の#yokohamagroovyに参加してたので、「プログラミングGROOVY」は一応、一通り読んではいました。

プログラミングGROOVY
プログラミングGROOVY
posted with amazlet at 15.08.28
関谷 和愛 上原 潤二 須江 信洋 中野 靖治
技術評論社
売り上げランキング: 294,550


ただ、この本の次に「Gradle徹底入門」も読書会で読むつもりだったのですが、都合が合わず参加できず・・・

Gradle徹底入門 次世代ビルドツールによる自動化基盤の構築
綿引 琢磨 須江 信洋 林 政利 今井 勝信
翔泳社
売り上げランキング: 10,417



ということで、Groovyの知識は多少あっても、Gradleはほとんど初心者なのでした。
ちなみに上記のGradle本を担当していた翔泳社さんが、部屋の後で書籍を税込み3500円(お買い得!)で売ってました。
あと、参加者の皆さんには翔泳社の15%引きクーポンが提供されました。

この日は初心者向けということで、Gradleとはなんぞや、から始まる講義と、簡単なタスクを作るハンズオンの構成でした。
Gradleの特徴はやっぱ、Groovy DSLでスクリプトを記述できることでしょうか。
昨今、「Infrastructure as Code」という言葉も登場し、なおさら注目ですね。

ハンズオンではスタッフさんにいろいろ聞いたりしながら、なんとか概ね動かすことができました。
でも、work4の課題で、GradleタスクからTomcatの起動ができない・・・。



task startTomcat {
"C:/{途中略}/gradle/apache-tomcat-8.0.26/bin/startup.bat".execute()
}


20150828_jsug2.jpg

環境はWindows7(x64)です。「startTomcat」はUP-TO-DATEになってるのに、起動してこないのよね。
コマンドプロンプトから普通にTomcatをstartup.batで起動すると問題ないのに。このコード、どこがダメなんやろ。・・・
とりあえず解答公開待ち。



R1-5.キーノート The Macro of Microservices
R1-5.キーノート The Macro of Microservices

午後最初のセッションは、34時間かけて地球の裏からやってきたJosh Longによるキーノートです。



同時通訳は専任のプロ2名体制で、聴講者全員には通訳レシーバーの機器が貸与されるという充実ぶりw

Springの話はほとんどなく、マイクロサービスをテーマに、アジャイル開発や継続的デリバリーなどを絡めたお話でした。
特にクラウドの重要性を強くアピールされていて、CloudFoundryなどを上手に使っていくことを推していました。
顧客の価値に直結しないような環境構築に時間を掛けている場合ではない、ということですね。

あと、アメリカの夜のネットワーク帯域の80%はNetflixが占めている、という話に驚きました。
日本にも上陸寸前のNetflix、その突出した技術力も有名ですが、アメリカでの影響力は凄まじいですね。
ちなみにNetfilixは、エンジニア初日に、本番環境へのデプロイを経験させるとのこと。
これにより、「安全にデプロイができる」ということを実感させるのだそうです。
プロセスの中に安全を組み込む仕組みが構築されているNetflixの姿勢が垣間見えます。

あと、短いスパンでフィードバックを集めて改善していくこと、効率よりも新しくデリバリーすることの重要性を盛んに主張されており、その中で「OODAループ」という言葉が出てきました。

Wikipedia 「OODAループ」

監視(Observe)- 情勢判断(Orient)- 意思決定(Decide)- 行動(Act)のサイクルを繰り返すという概念だそうですが、私、この単語初めて聞きました。

Joshのプレゼンは情熱的でユーモアに溢れ、こーゆうエンジニアっていいなぁ、と思いました。
あと、ハイレベルな同時通訳があったものの、やっぱ英語って大事だなぁ、と思い知らされた・・・


R3-6.エッセンシャルCore Spring - Handson (3時間)
R3-6.エッセンシャルCore Spring - Handson (3時間)

Springのハンズオン、みっちり3時間です。この日はDIとSpring MVCの2つがテーマでした。
Pivotal社主催のCore Spring研修というものがあるそうで、この日のハンズオンは、その教材から題材を抜粋してきたそうです。
ハンズオンの資料やプログラムはこちらからDLできます。

ハンズオン資料


ハンズオン資料補足


3時間ありましたが、比較的ゆっくりな進行でした。
DIはXMLやアノテーションでやることが多いそうですが、今回はJavaConfigを使いました。
XMLによる定義はType Safeにならないので、JavaConfigでソースコードでDI情報を紐付けてコンパイラによるチェックの助けを借りるとのこと。

Spring MVCは、Struts1を知ってると理解しやすいと感じました。Struts1もMVCが基本だし。
ただ、Struts1は規模が大きくなるとXML地獄になりますが、Spring MVCはその辺、何か工夫があるのだろうか。



他の発表資料集
私が聴講したセッションの裏も、かなり充実したセッション構成だったようでした。
Ustreamでリアルタイム放送してましたが、後日でも見れるような形で公開いただけると嬉しいです。
以下、8/28時点で公開されている資料集。











懇親会
全てのセッションが終了後、そのまま41Fで懇親会がありました。
東京駅スグのビル41Fからの夜景は綺麗ですね~。

料理もお寿司やお肉やお惣菜、ビールやカクテルなど豪勢でした。無料なのに素晴らしい。

20150828_jsug1.gif

キーノート他2セッションを担当したJosh Longの音頭で乾杯後、しばらくしてLT大会になりました。
皆さんお酒も程よく入り、楽しく歓談しながらLTにも耳を傾けます。



ブログ冒頭で紹介した「はじめてのSpring Boot」の著者でもある @making さん。
スタッフ業に忙殺された鬱憤を晴らすがのごとく、酔っ払いながらのLTならぬLong Talkでした。



そしてLTの最後を飾るのは、まさかの寺田さん。


転職してJavaの派閥的な何か(?)から開放されたようで、無事このイベントにも参加できるようになったようです(笑

LT、全部で6人くらいだったかな。


★感想:
丸一日、Spring尽くしでした。
この日はハンズオンを中心に参加したのですが、とても参考になりました。帰宅して残った演習をやってみたり。

あと、無料のイベントなのに運営が素晴らしいですね。
スタッフさんの数も多いし、懇親会のお料理も豪勢だし、Josh Longのリアルタイム通訳者のレベルも高かったし。
尽力してくださった運営の皆さん、スポンサー企業さんに感謝です。

随分前に購入したSpringの本、本棚から引っ張りだしてきたのですが、ちゃんと写経して勉強しようかな。

SpringによるWebアプリケーションスーパーサンプル 第2版
株式会社クロノス 阪田 浩一
ソフトバンククリエイティブ
売り上げランキング: 251,053



発表者やLTの皆さん、ホントSpringが好きそうで、楽しそうにしゃべっていた姿が印象的でした。
楽しい1日を過ごすことができ、とっても刺激を受けたので、明日は丸1日SpringAngularJSのコード書く。

関係者の皆様、ありがとうございました。

-->