9. Japan Java User Group
Sun Microsystems
• Javaの生みの親
– 1982年創業のハードウェアメーカー
• 創業16年で売上100億$に達したベンチャー企業
• UNIX OSであるSolarisが有名
• しかし、技術開発に失敗し、2000年代には後退
• 2010年にORACLEが74億$で買収
– 積極的な情報公開やオープンソースへの関わ
りで、エンジニアのファンが非常に多かった
• Solarisの基がフリーソフトウェアライセンス(後
のGPL)のBSD版UNIX
• (当時)悪の帝国マイクロソフトと戦う勇者
9
10. Japan Java User Group
Scott G. McNealy
• 元SUNの共同創業者、CEO/会長
– 素晴らしいビジョナリー
• The Network is the Computer
– でも、毒舌で有名
• 「マイクロソフトは人類の敵」
• 「サンは共有するが、マイクロソフトは盗む」
• 「元CEOで現CTOの連絡は、いつも船舶電話だ」
– http://www.publickey1.jp/blog/15/java20javaonejava10javaone_2015.html
10
11. Japan Java User Group
James Gosling
• 「Javaの父」と称される人物
– いまでもJavaOneに遊びに来る大柄なおじい
ちゃん。
– いまはAWSの人
11https://www.youtube.com/watch?v=1CsTH9S79qI
12. Japan Java User Group
Oracle
12
• 2010年にSunを買収
– Oracle Databaseで知られているが、いまで
は多くのERPを抱えるソフトウェア企業
– オープンなSunとは対照的な気質で知られ、
買収を残念がる技術者が多かった
• OSS関連では多くの”事件”が起きている
– Javaは維持され「 」も残った
• 一方で、顧客の声をよく聞く企業である
– Sunはビジョン優先しすぎることがある
13. Japan Java User Group
Java
• Java !
– Javaは1990年に社内プロジェクトとしてス
タートし、1995年に1.0を発表
• C++への複雑さを解決するために開発
• インターネットに着目した言語だった
– 特徴(完全ではないが安全な言語)
• 静的型付け(オブジェクト指向言語)
• OS非依存(仮想マシン)
• メモリ管理の自動化(ガベージコレクション)
13
14. Japan Java User Group
Java VM
• Write once, run everywhere
– 仮想マシンによって実行環境差異を吸収
• 今では当たり前になったが当時は画期的
– ソースコードはコンパイルされることでバイ
トコードになる
• バイトコードであれば、どんな言語でもよい
• 標準Java以外にScala、Kotlinが有名
– JRuby、Jythonなど、多言語の移植も行っている
– その他、独自言語を自分で作ることもできる
– Java VMそのものの安定性や性能が魅力
14
15. Japan Java User Group
仕様と実装
• Javaは標準仕様を決めて各社が実装する
– 仕様に対して、沢山の実装がある
• Java SE:OpenJDK、J9など
• Java EE: WebSphere、WebLogic、Payara、
GlassFish、Wildflyなど
– 部分的な実装としてはTomcat、Jettyなど
– 各社は標準をベースに、独自の拡張をするこ
とで差別化している
• 安定性、性能、可用性、保守性の強化
15
16. Japan Java User Group
JCP
• Java Community Process
– https://www.jcp.org/en/home/index
– 標準Javaの仕様を策定するプログラム
• Java仕様を決めるのはOracleじゃない
– 過去はSunを中心にベンダーだけが決定
• その後、ユーザーグループも参加可能に
– 仕様への意見は誰でも言える
16
17. Japan Java User Group
JCP
• 簡単なプロセス説明
– 1.JSRが提出される
• Java Specification Request(Java仕様の提案)
– 379:Java SE 9 Platform Umbrella JSR
– 376:Java Platform Module System
– 2.EG(Expert Group)の組成
– 3.ドラフトの作成と意見収集
• Early Draft Review -> Public Review ->
Proposed Final Draft
– 4.最終承認投票
– 5.仕様をリリース
17
18. Japan Java User Group
OpenJDK
• 現在のJava SEの参照実装
– 2006年にSunの持っていた実装をオープン
ソース化して開始
– この前後の経緯がややこしい
• そもそも、当時のJava SEは仕様が肥大化してお
り、各社個別実装が厳しくなってきた
• そこでオープンソースベースでの共同開発と、そ
のうえでの商用カスタマイズというプロセスが求
められた
• Apache HarmonyというOSS実装がはじまったた
め、それに対抗する形で公開に
18
23. Japan Java User Group
JUG
• Java User Group
– 世界中にあるJavaコミュニティの総称
• 頭に地域名を付ける(例:Japan JUG)
• 日本ではJJUG、関西、岡山、広島、女子部など
• https://community.oracle.com/community/java/jug
– あくまでも「ユーザー」の集まり
• 自主的に始めて、自主的に続けるもの
• Oracleは支援する立場で各国で関係性は異なる
• 北米では関係が薄く、アジア圏では関係が強め
23
24. Japan Java User Group
世界のJUG
• 有名どころはJCPにも積極的に参加
– ロンドンJUG
– SouJava(ブラジル)
• Devoxx
– https://devoxx.com/
– 2001年に始めたカンファレンス
• 主催がベルギーのJUG
– いまでは世界各国で数千人規模になった
24
25. Japan Java User Group
JJUG
• Japan Java User Group
– 2007年に設立
• 初代会長は丸山 不二夫さん
– ちょうどSunが落ち目に
なっていたころ
• 2006年:Java SE 6
• 2011年:Java SE 7
– 日本のJavaを盛り上げよ
う!ということでスタート
25
34. Japan Java User Group
Java
• Sunのオープン文化がJavaを成長させた
– Java自体がオープンソースであり、仕様決定
もオープンなプロセスになっている
– 色々あったが常にユーザーグループが流れを
作ってきた
• 企業は戦略的にオープンソースを活用しなくては
ならないし、その過程でエンジニアとの関係性を
考えて行かないと行けない
34
35. Japan Java User Group
JJUG
• Japan Java User Group
– 日本におけるJavaコミュニティ
– 目的はJavaエンジニアがハッピーになること
• 運営はボランティア
– 全員ボランティアでやってます
– そして、応援してくれるスポンサーがいます
35