Sunday, April 6, 2014

第5回 #渋谷java でトークしてきた

今日はこんなイベントに参加してきました。

第五.五回 #渋谷java - connpass

javaに関することなら何でもありのゆるふわjava LTイベントです。

参加される方はSIerの方や自社プロダクト開発の方やフリーランスの方など様々です。 LTの内容は初心者向け〜ガチ勢向けまで幅広く実施して頂いておりますので初心者の方もモヒカンの方お気軽にどうぞ!

2月にやるはずだったのが大雪のため4月に延期になったやつです。 私はセッション枠で20分ほどしゃべらせていただきました。資料がこちら。

その場でJenkinsを「ポチっとな」してMixer2のビルドとセントラルリポジトリへのデプロイ作業を生実演でお見せするという試みがけっこうウケたようで、うれしかったです。 ついでなのでプレゼンで語りきれなかったことを少し書きます。

perlならcpan, PHPならPEARやPECL, rubyならrubygems そしてJavaならmavenセントラルリポジトリのように、近代的なプログラミング言語のほとんどが、 パッケージリポジトリ=コンパイル済みで即利用可能な状態のライブラリの集積所=と、それをうまく使いこなすためのコマンド機構を持っています。

mavenはビルドツールではありますが、そのキモはmavenセントラルリポジトリとの自動的な連携にあります。これはGradleでもAnt+Ivyでも同じことが言えます。 java以外の言語でも似たようなものです。 だからこそ、現代のプログラマーはパッケージリポジトリのことをもっと意識しそこに貢献すべきです。今日のトークの動機はそこにあります。 ソーシャルコーディングに必要なのはGitHubだけではないのです。

mavenセントラルリポジトリにライブラリをupする権限を得るには審査が必要だという話をしましたが、 それはあくまで形式的なものです。 たとえばgroupIdが他とバッテイングしてないかとか、pomの書き方ちゃんとわかっていそうかとか、 MITかGPLかApache2かライセンスをちゃんと表示しているかとか、 なにかの商標にひっかかってなさそうかとか。。。 逆に言うと「おまえの作ったjavaライブラリはmavenセントラルに入れてもいいほどすっげえ便利かどうか」ということは考慮されません。 それはsonatype.orgの中の人が決めることではなく、全世界のjavaユーザーが決めることだからです。

門戸は開かれています。さあ、あなたもこれで、javaのOSSライブラリ開発者!

なお、他の方のトークで個人的に面白かったのがこちら。

@テスト
public void 文字列マッチャーのテスト() {
    文字列("テストなんとか", は("テスト".で始まる()));
}

っておいなんだこれw

最後になりましたが、運営の@seri_kさんほか会場設営などやってくださっているビズリーチ社の関係者の方々に感謝します。私も結構ガチで転職を考えております。w

参考リンク: 第五.五回 #渋谷java - Togetterまとめ