Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JJUG CCC 2022 Fall: JJUG初心者のための
Javaコミュニティのススメ

JJUG CCC 2022 Fall: JJUG初心者のための
Javaコミュニティのススメ

JJUG CCC 2022 FallのJJUG提供セッションのスライドです。

Sugiyama Takaaki

November 28, 2022
Tweet

More Decks by Sugiyama Takaaki

Other Decks in Programming

Transcript

  1. JJUG初心者のための 
 Javaコミュニティのススメ JJUG CCC 2022 Fall 杉山貴章 JJUG CCC運営副委員長 


    西川彰広 JJUG 幹事 @zinbe #jjug 
 #jjug_ccc_d @Logico_jp
  2. 今日伝えたいこと #jjug 
 #jjug_ccc_d

  3. “Don’t Be Shy”ɹ ɹ #jjug 
 #jjug_ccc_d (Sun初期メンバーのエライ人) - John

    Gageɹ ɹ
  4. 今日の内容 •Javaのこと •Javaコミュニティのこと •JJUG (日本Javaユーザグループ)のこと •海外のJavaカンファレンスのこと #jjug 
 #jjug_ccc_d

  5. Javaのこと #jjug 
 #jjug_ccc_d

  6. Javaの歴史 #jjug 
 #jjug_ccc_d • 1995年に発表、1996年に1.0リリース • Sun Microsystemsが開発 •

    2010年、Oracleが74億ドルでSunを買収 • 標準仕様を策定し、実装する • Java SEは「仕様」 • OpenJDKは「実装」 • 標準仕様の策定プロセス • API仕様の追加や変更 → JCP • JDKへの仕様変更提案 →JEP
  7. JCP #jjug 
 #jjug_ccc_d • https://jcp.org/ • Java Community Process

    の略 • Java関連の仕様を策定するプロセス • JSR (Java Specification Request) が提示され、EG (Expert Group) がドラフトを作成 • 公開レビューを経て、EC (Executive Committee) の投票で承認 • RI (Reference Implementation/参照実装) とTCK (Technology Compatibility Kit/技術換性キット)を作る • 現在のECリーダーはHeatherさん
  8. OpenJDK #jjug 
 #jjug_ccc_d • https://openjdk.org/ • Java SEの参照実装として提供されるJDK •

    Sunが公開したHotspot VM、標準クラスライブラリ、 各種開発ツールがベース • GNU General Public License, version 2, with the Classpath Exception • 改変可能だが、ソースコードの公開義務がある
  9. JEP #jjug 
 #jjug_ccc_d • JDK Enhancement Proposalsの略 • Java言語やJVM本体、関連ツールの機能拡張の提案

    • Java 19のJEP • 405:Record Patterns (Preview) • 422:Linux/RISC-V Port • 424:Foreign Function & Memory API (Preview) • 425:Virtual Threads (Preview) • 426:Vector API (Fourth Incubator) • 427:Pattern Matching for switch (Third Preview) • 428:Structured Concurrency (Incubator)
  10. JSRとJEPの関係 #jjug 
 #jjug_ccc_d • 本来 → JSRで標準仕様が策定されてから、OpenJDK 
     で実装の開発が行われる 


    • 現在 → JEPを元にOpenJDKで実装が行われ、それを 
     元にJSRが提出される • 開発速度を優先するために変更 • JSRの承認プロセスも簡素化されている
  11. Jakarta EE #jjug 
 #jjug_ccc_d • Java EEからJakarta EEへ •

    2017年にOracleがJava EEをEclipse Foundationに移 管することを決定 • Java EE仕様、GlassFish (参照実装)、TCK、仕様ドキュ メントなども含めて移管 • Java EE 8 → Jakarta EE 8 • Jakarta EE 9 • Jakarta EE 10 • javax商標問題 • パッケージ名をjavax.*からjakarta.*にすべて移行する
  12. いろいろな事件 #jjug 
 #jjug_ccc_d • Apache Harmony事件  • ApacheライセンスのJDK実装が提案される

    • それに対抗する形でOpenJDKが開始され、その後合流  • Android訴訟事件  • Google vs OracleのJava API裁判に発展  • APIに著作権はあるのか? → ある • AndroidのJava API利用はフェアユースか? →フェアユース • Java EE Guardians事件  • Java EEの開発が停滞したことでコミュニティが呼びかけ • Java EEをオープンソース団体に寄贈 →Jakarta EEへ  •
  13. いろいろな事件がオープンソースを後押しし、 コミュニティが望む形に進化してきた #jjug 
 #jjug_ccc_d Java SE/EEのオープンソース化も コミュニティの後押しがあって実現

  14. 現在のJavaは コミュニティによって開発されている #jjug 
 #jjug_ccc_d

  15. Java #jjug 
 #jjug_ccc_d コミュニティと共に成長・進化してきた言語 =

  16. Javaについて知るには 
 コミュニティを活用するのが一番の近道 #jjug 
 #jjug_ccc_d

  17. Javaコミュニティのこと #jjug 
 #jjug_ccc_d

  18. JUGとは? •Java User Groupの略 •公式に認定されたJavaコミュニティの呼称 •世界中にたくさんある •https://dev.java/community/jugs/

  19. JJUGとは? •Japan Java User Group (日本Javaユーザグループ) •https://www.java-users.jp/ •2007年に設立 •メンバー:11,937名 (2022/11/27現在)

    •Doorkeeperに登録した時点でメンバーです! •世界有数規模のJUG •主な活動 •日本におけるJavaコミュニティ活動の支援 •CCC、ナイトセミナーなどのイベント運営 •海外Javaコミュニティとの交流
  20. その他の日本のJUG •関西Javaエンジニアの会 (関Java) •https://kanjava.connpass.com/ •岡山Javaユーザ会 •https://okajug.doorkeeper.jp/ •広島Javaユーザグループ •https://hiroshima-jug.connpass.com/ •Javaユーザグループ北海道 (Java

    Do) •https://javado.connpass.com/ •Java女子部 (Javajo) •https://javajo.doorkeeper.jp/ •日本GlassFishユーザ会 •https://glassfish.jp/
  21. JJUG CCC •CCC=クロス・コミュニティ・カンファレンス •年2回開催(春・秋) •2020年からはオンラインで開催 •運営はすべてボランティア •セッションは公募制 •CfP (Call for

    Proposal) と呼ばれる方式 •だいたい、2月と8月あたりに募集します •Doorkeeper、Twitter、Facebookなどでアナウンス
  22. JJUGナイトセミナー •原則として毎月開催 •毎回違うテーマで、約2時間の勉強会 •2022.12 Quarkus World Tour 2022 ←New •2022.09

    Java 19リリース記念イベント •2022.08 おうちで!ビール片手にLT大会! •2022.07 Jakarta EE特集 •etc... •2020年3月からはオンラインで開催 •2022年11月からハイブリッド? •JJUGのDoorkeeperで参加者を募集
  23. CCC / ナイトセミナーを 
 もっと楽しむためのポイント #jjug 
 #jjug_ccc_d

  24. JCCC / ナイトセミナーを 
 もっと楽しむためのポイント •質問しよう •チャット・Twitterで質問を募集しています •ブログ・SNSにレポートを書こう •学んだことを整理してアウトプットしよう •どんな感想でも、登壇者・主催者は嬉しいです

    •登壇しよう •最初はLTからでもOK •CCCには登壇初心者枠があります •アンカンファレンスにも参加してみよう
  25. あなたの知っていることは 他の人が知らないことかもしれない #jjug 
 #jjug_ccc_d

  26. “Don’t Be Shy”ɹ ɹ #jjug 
 #jjug_ccc_d - John Gageɹ

    ɹ
  27. 海外のJavaカンファレンスのこと #jjug 
 #jjug_ccc_d

  28. JavaOne •1996年から毎年開催されている(いた)Java開 発者のためのイベント •2016年から「Oracle Code One」に名称変更 •対象をJava以外の技術にも拡大(という名目) •2020/2021年はCovid-19のため中止 •過去には日本でも開催されたことがある •2001年,2002年,2005年,2012年

  29. 2022年のJavaOne •Oracle Cloud World との併催 •開催期間:10月18日から20日(3日間) •開催場所:ラスベガス(シーザーズ・フォーラム) •セッション数:142セッション •キーノート:        3 •通常セッション:      92

    •ライトニング・セッション: 22 •ハンズオンラボ:      10 •BOF:           8 •ハッカソン:        7 •一部セッションはオンライン配信あり
  30. None
  31. None
  32. None
  33. None
  34. None
  35. None
  36. None
  37. 350m

  38. その他のJavaOneの写真はここ! https://www.flickr.com/photos/skrb/albums/

  39. JavaOneの魅力 •Javaを開発しているキーパ ーソンの話を直接聞ける •他の国のエンジニアと直接コ ミュニケーションできる •世界のJavaコミュニティの 熱気を直に感じてモチベーシ ョンが上がる 昔の思い出の写真

  40. 日本から来ている他の参加者と一気に親しくなれる 2018年 Code One後の蟹パーティ(蟹One) @サンフランシスコ

  41. 今年の参加者は…

  42. 来年のJavaOneに参加しませんか? ラスベガスで9月18日〜21日まで https://www.oracle.com/cloudworld/javaone/

  43. “Don’t Be Shy”ɹ ɹ #jjug 
 #jjug_ccc_d - John Gageɹ

    ɹ
  44. その他の海外のJavaカンファレンス •Devoxx - 世界各地 •Voxxed Days - 世界各地 •JAX London

    - イギリス •JBCNConf - スペイン •JCConf - 台湾 •JFokus - スウェーデン •etc...