Sessions / JJUG CCC 2014 Fall(11月15日開催)

JJUG_CCC_2014Fss
InformationTimetableSessionSpeaker

Registration

K-1 基調講演1

橋本 吉治 (日本Javaユーザーグループ副会長)
本基調講演(キーノート)では、Java、クラウド、AIなど技術の進化の方向性を見ながら、今後来たる社会状況の変化を予測します。その上で、我々Javaエンジニアが今後どのように生きていけばよいのかを展望します。
あわせて、JJUC CCC 2014 Fallの注目のセッションについてもご説明しましょう。


K-2 基調講演2

Java は生誕20周年を間近に控え、成熟し堅牢で、スケーラブル、セキュアなプラットフォームになりました。また常に、最も人気のあるプログラミング言語のリストのトップに位置づけられています。Java は Java EE 7 のリリースの後も Java SE 8, Java ME 8 を提供し、新しいアプリケーション開発や、新しい配備プラットフォームに対するニーズに対応するために、今なお進化を続けています。本セッションは
Big Data、クラウド・コンピューティング、Internet of Things や関数型プログラミングに対応する今日の Java が提供する素晴らしい機能について紹介するほか、今後の 20 年を見据え、Java がより最適なプラットフォームに進化するためのいくつかのアイディアもご紹介します。
Simon Ritter (オラクル・コーポレーション)


H-1 Javaが見るニュータイプの夢 ~これからJavaはどう変わるか~

きしだ なおき

現在、次期Javaの開発プロジェクトとしてValhallaとPanamaがたちあがっています。これによって、Java言語だけではなくJava VMにも変更が行われ、Java自体の性質もかわっていきます。Javaにどのようなニュータイプが求められているかを中心にこれらのプロジェクトを解説します。


R1-1 私がTDDできないのはどう考えてもお前らが悪い!~エンタープライズJava開発でのTDD適用の勘所~

大中浩行

テスト駆動開発(TDD)は、技術者コミュニティの中で受け入れられ、今日一定の地位を確立しました。しかし、現場に適用する上で、以下の様な問題をいかにクリアするかということについて、ノウハウの共有が進んでいるとは言えず、その事が導入への妨げになっています。

・データベース(RDBMS)が関係するテストをどう扱うか
・モックをどのように使うか
・スローテスト
・「どうしてもfailするテスト」をどうするか

本セッションでは、上記の課題をどうクリアし、どう現場にTDDを定着させるかという点について、スピーカーのJava開発プロジェクトおよびコミュニティ活動での知見を元に、発表を行います。


R2-1 いよいよ始められるJava EEでのWebSocket

田中孝清(日本IBM株式会社)

Java EE 7に含まれるWebSocket API。Windows XP/MSIE 6.0のサポート終了で対応するモダン・ブラウザの普及率もいっきにあがり、商用アプリケーションサーバーでのサポートも開始され、いよいよ業務での使用も現実的になってきました。このセッションでは、IBMのアプリケーションサーバーの話題を中心に、開発環境のセットアップから関連ソフトの対応状況など、WebSocketをJava EE環境で使用するための情報をお伝えします。


R5-1 IntelliJ IDEA 14最新情報 / ハンズオン

山本裕介(株式会社サムライズム/JetBrains s.r.o.)

評判のJava IDE、IntelliJ IDEAの最新バージョン14の新機能紹介とハンズオンを組み合わせたセッションになります。
既にIntelliJ IDEAをご利用になっている方も、これから始めたい方も是非ご参加下さい。前半(〜14時)は新機能の紹介、後半(14時〜)はハンズオンとなります。後半のパートにご参加の方はIntelliJ IDEAの最新バージョンとJava 8インストール済みの十分に充電したラップトップをご持参ください。前後半いずれかのパートのみのご参加でも結構です。


H-2 ステップ・バイ・ステップで学ぶラムダ式・Stream API入門

多田真敏

今年Java SE 8がリリースされ、ラムダ式・Steama APIという今までのJavaと異なる概念が導入されました。多くの解説記事がネット上に掲載されていますが、いきなり10行くらいのメソッドチェーンな例を出されて、「これは自分には読めない!」と思ってしまう方も多いのではないでしょうか。
本セッションでは、題名の通り「ステップ・バイ・ステップ=一歩ずつ」でラムダ式・Stream APIを解説します。まずは2~3行程度のコードから始めて、段々とコードを長くしていき、最終的には10行前後のコードが理解できることを目指します。
また、併せてラムダ式・Stream APIを学習するためのコツも解説します。


R1-2 Spring Boot + Doma + AngularJSで作るERP(統合基幹業務システム)

松崎 学 (@matsumana)

Spring Boot + Doma + AngularJSで開発したアプリが、弊社が提供しているERPサービスで2014年5月にローンチしました。
ERPというミッションクリティカルかつ、ライフサイクルが長いシステムでAngularJSを採用した理由や、
開発から運用までのお話、JavaEE6(JSF)と比べた所感など(元々、弊社サービスはSeasar2(Teeda)とJavaEE6(JSF)で開発・運用しています)を事例として発表致します。


R2-2 KDDI Business IDにみる疎結合/高可用を実現するアーキテクチャ

佐々木 徹

KDDIは、2014年8月末より、法人のお客さま向けに様々なクラウドサービスのIDを1つに束ね、安全に利用いただける
「KDDI Business ID」の提供を開始致しました。
認証を司る基盤やキャリアサービスでは、高い信頼性、可用性が求められる一方で、昨今の技術的な進化に追従可能な構成とする必要がありました。
本セッションでは高信頼性・高可用性を実現すべく開発上で考慮したアーキテクチャのポイントと、拡張可能なアーキテクチャを実現すべく疎結合を意識した設計について、実例を踏まえてご紹介致します。


H-3 Java EE の新たな旅立ち : Java EE 8 へ向かって

寺田佳央 (日本オラクル)
Java EE 7 が正式リリースされてはや1年、これから世界だけではなく、日本でも本格的に Java EE 7 が普及していきます。その一方で、はやくも次のバージョンの提供に向けて初動開始しました。本セッションでは、2016 年にリリース予定の Java EE 8 の新機能候補を具体的なソースコード例をまじえながらご紹介します。また、Java EE 8 に含まれる予定の各種仕様と、各仕様に対するフィードバック方法などもご紹介します。
Java EE 8 はまだはじまったばかりで、これから詳細が煮詰まっていきますが、今まさに作られようとしている最新仕様をできる前から把握し、フィードバックを行う事でより使いやすいフレームワークへとさらに成長します。是非、皆様最新仕様をご注目ください。


R1-3 実例トラブルシューティング! 稼働中のシステムを立て直した半年間の軌跡

谷本 心 (Acroquest Technology株式会社)
世の中で稼働しているシステムが、必ずしも完璧に動作しているわけではないことは皆さんすでにご存知のことと思います。
このセッションは、そんな「完璧ならざるシステム」の一つであった某有名企業のECサイトに対して行なった、トラブルシューティングとパフォーマンスチューニングの軌跡をご紹介します。

頻繁に発生するシステムエラーに、どう立ち向かうべきか?
アクセス集中時に発生する購入エラーを、どう救うのか?
本当にそのスケールアップは正しいと言えるのか?

これらの問題に対して、ElasticsearchやKibanaを導入して問題を可視化した成果や、問題のトリアージ、MySQLのパフォーマンスチューニングなど、実際に行なったトラブルシュート事例を説明します。


R2-3 リクルートにおけるソリューション開拓と実装展開 ~Elasticsearchによる検索基盤の展開と新ソリューションの開拓状況

宮川典久

リクルートグループのIT・ネットマーケティング基盤の開発を担う機能会社であるリクルートテクノロジーズ。弊社では先端技術の研究開発にも取り組んでおり、OSSの活用も積極的に行っています。
本講演では、Elasticsearchの活用・運用事例と、その他OSSの研究開発の状況についてお話しします。


R5-3 Spring Bootハンズオン~Spring Bootで作るマイクロサービスアーキテクチャ!

@making

バズワード化の気配漂うマイクロサービスアーキテクチャ。

そんなマイクロサービスを構築するのにぴったりなフレームワーク「Spring Boot」を使ってみるハンズオンです。
マイクロサービスアーキテクチャは概念的な話が多いですが、このアーキテクチャを構築するために解決しないといけない課題(Distributed Configuration、Service Discovery、Circuit Breaker、Load Balancing等)とその実現方法についても、既に実践しているNetflix社の例を用いてご説明します。

まずは「Spring Boot」で簡単なマイクロサービスを作成して「Spring Boot」に慣れ、
次に「Spring Cloud」と「Netflix社のOSS群」を組み合わせて一歩進んだマイクロサービスアーキテクチャを体験しましょう。
(前半は初心者にも分かるように説明しますが、後半は上級者向けになると思われるので、Web開発初心者な方には消化不良になるかもしれません。)
事前に以下のハンズオンを実施しておくと、当日の理解が深まります。
http://www.slideshare.net/makingx/grails-30-spring-boot


H-4 Javaエンジニアのためのアーキテクト講座

鈴木雄介

Javaテクノロジーに詳しいだけでは良いソフトウェアを構築できません。本講演は、Javaエンジニアを対象に、アーキテクチャの役割や目的、および設計の進め方について説明します。また、昨今のアーキテクチャパターンにおけるJavaの役割についても触れていきます。


R1-4 Gradleで始めるGroovy expand

@grimrose

GradleをJavaまたはAndroidで使っているプロジェクトが増えてきましたが、Groovyについて知らない人は不安になっていると思います。
そこで基本的なGroovyの使い方から、Gradleでの使い方まで、明日から使えるTipsを紹介します。


R2-4 (JavaOne/OOW再演) Java EE 6 Adoption in One of the World’s Largest Online Financial Systems (日本語)

岩崎浩文(楽天株式会社)

金融系システムにはJava EEの力が必要だ! しかしどうやって? 内製化を推し進める楽天が、何故100%自前で、どうやってノンストップ金融系システムを作ったのか。今年開催されたJavaOneおよびOracle OpenWorldで発表した2コマのセッション(英語)を、JJUG CCCに向けて特別再編集版で日本語にて再演致します。


R1-5 JavaでやってみるThe Twelve-Factor App

nabedge

Adam Wiggins氏(元Heroku CTO)が2012年に提唱した””The Twelve-Factor App””。
JavaのWebアプリケーションでこれを実践するにはどう設計すべきなのでしょうか。
Maven、Logback、Java Service Wrapper、バイナリパッケージリポジトリ(NEXUS)、
組み込みTomcat、そしてSpring Framework。
一見バラバラな技術要素を組み合わせてゆくと、12-factor Appが現れます。


R2-5 Javaだからこそできる、ビズリーチの攻めのDB変更

久保雅彦 (@jflute)

変化の激しいサービス開発の中で、Javaのコンパイルセーフを最大限活かし、スピードと変化を両立しているビズリーチの攻めのDB変更を紹介します。

DBFluteを使ったスピード実装と柔軟で安全なDB変更時の運用を、デモを交えながら伝えていきたいと思います。


R5-5 Migration from Swing to JavaFX

櫻庭 祐一

Java SE 8 から標準 GUI ライブラリとなった JavaFX。新規に GUI アプリケーションを書くとしたら JavaFX 一択ですが、まだまだ Swing で作られたアプリケーションが巷にはあふれています。

そこで、本セッションでは Swing から JavaFX へのマイグレーションについて、具体的な例を挙げながら説明していきます。


R1-6 Concurrent Mark-Sweep Garbage Collection 再入門

KUBOTA Yuji (@sugarlife)

多くの商用環境で使われている Concurrent Mark-Sweep GC (CMS GC) の再入門セッションです。GC ログや OpenJDK のソースコードから解説していきます。

このセッションでは
・CMS GCログの読み方。
・各ログは CMS GC のどういった処理を表しているのか。
・CMS GC を使う際に注意すべき状況(concurrent mode failure等)。
について解説していきます。


R2-6 ElasticsearchとKibanaではじめる検索&アナリティクス

大谷 純
Twitter: johtani
Blog: http://blog.johtani.info

オープンソースの分散検索・解析エンジンであるElasticsearchは検索エンジンとして様々な企業により利用されています。最近では、可視化ツールとして話題になってきているKibanaとの組み合わせでデータの解析・可視化にも利用されてきています。本セッションでは、ElasticsearchおよびKibanaの概要をデモを交えて紹介します。また、10月にベータリリースされたKibana 4についても紹介します。


R5-6 Modern Web Development with ninjaframework

吉田貴文(@zephiransas)

ninjaframeworkはRailsライクなWeb開発環境を提供するピュアJavaのフレームワークです。
ninjaframeworkは全てを1から作り直すのではなく、既存の仕組みでも良いものを取り入れ、また、シンプルな構成になっています。そのため、従来のWeb開発者にとっては導入しやすく、学習も容易です。
当セッションでは、その概要とデモを通じて、ninjaframeworkに対する理解を深めます。
JavaEEとはひと味違う、今どきのWeb開発環境を紹介したいと思います。


R1-7 1から10までJavaで書いた話

tokuhirom

LL でゴリゴリとコードを書いていた人が、ある日 Java をやることになった時、どういう考え方で開発を進めたか。開発を進める上で、何を自分で書いて、なにを出来合いのライブラリですますことにしたのかという話をさせていただきたいです。

私は当初、Dropwizard や Spring Boot などを採用しようとして評価していたのですが、最終的にはかなりの部分を自前で実装することにしてしまいました。

具体的には以下のようなライブラリを開発しています。
– tinyorm という O/R Mapper の開発
– Avans という web application framework の開発
– mech というサーブレットのテストを簡単にするライブラリの開発
– routes という HTTP ルーティングライブラリの開発
この辺りの開発から得られた知見などについてのお話です。


R2-7 Java女子部設立から10ヶ月…私たち、こんなことしてきました!!

Java女子部メンバー

2014年1月に立ち上げたJava女子部、どんどん勢いづいています!

メンバー数は50名を超え、定期的な勉強会も開催中。その輪は広がり、今月11月には関西でのイベントも実施することができました。

今回のCCCでは、これまで女子部がどんなことをしてきたか、参加したメンバーが何を思ったか、これからどうしていきたいか…、振り返ったり未来に思いを馳せたりしながら、あれやこれやお話したいと思います♪

まだ参加したことない方は女子部について知っていただきたいです。既にご参加済みの方はJava女との交流をますます深めてくださいね。

19時からのゆっくりスタートなので、寝坊しても大丈夫!夕飯が待てない方はお菓子を食べながらで大丈夫!是非お気軽に遊びにいらしてください。

※今回は男性の皆さんも、よろしければ是非お越しくださいませ!優しく見守ってください。


R5-7 JSR 371 MVC 1.0を通じてAdopt a JSRを知ろう!

槙 俊明
宮川 拓

Adopt a JSRという仕組みを通じて、大企業や団体に属さないJava開発者が、ユーザグループの一員として、仕様策定に関わることが容易になりつつあります。本セッションでは、Adopt a JSRをはじめとしてJSR、JEPなど、仕様策定に関する仕組みについてご紹介します。

JJUGではAdopt a JSRを通じて、次期Java EEに含まれるMVCフレームワーク仕様 (JSR-371) への取り組みを行います。セッション後半では、MVCフレームワークのあるべき姿についてディスカッションを行います。
Java仕様策定への貢献に興味のある方、またMVCフレームワークに興味のある方は、ぜひご参加ください!