メインコンテンツまでスキップ

「Javaにおけるnull。これまでとこれから」という発表をしてきた

Sato Taichi
yak shaver

JJUG CCC 2015 Spring(4 月 11 日開催) で発表をしてきました。

一コマ目であり、エントランスから一番近い入り易い場所だったせいもあるとは思いますが立ち見が出る程の盛況ぶりでした。発表を聞いて下さった皆様、本当にありがとうございます。

発表資料はこちらです。

発表者がどういう風に考えてコンテンツを作り、どういう準備をしているのか、というのは余り共有されていないように思います

このエントリでは僕がどの様に事前準備を行い、当日はどんな風に考えながら発表していたのか記録しておきます。

Meta-Annotations について

Sato Taichi
yak shaver

このエントリは、アイディアや情報の提供を呼びかけるためのものです。

結局何がしたいのか

自前の AnnotationProcessor で Meta-Annotation 的な機能をサポートしたい。

で、そもそも Meta-Annotation ってこんなんで良いんだっけ?というエントリです。

エクスプローラからGOPATHを設定した状態でコマンドプロンプトを起動する

Sato Taichi
yak shaver

go 言語において各種コマンドを実行する際には、GOPATHという環境変数が設定されている事が望ましい訳です。

絶賛 Windows ユーザですので CUI は余り好まないのですけども、全てを GUI で操作出来る訳でもない状況でありますので、Windows 標準のファイラーであるところのエクスプローラをレジストリを弄って拡張します。

AdobeのBracketsで拡張を書く話

Sato Taichi
yak shaver

少し前に GitHub の[Atom]が β テストを開始しましたが、Windows ユーザなのでアプリを利用できなくて哀しい思いをしましたが、僕は元気です。

WebKit ベースのブラウザを GUI アプリケーションのシェルとして利用して UI の大部分を javascript や CoffeeScript で記述するというアーキテクチャのアプリケーションとしては、 Adobe の[Brackets]もあります。

こちらは Windows で動きますので、今回は現在の[Brackets]を使いつつどの程度のことが出来るのか確認する為に拡張を書いてリリースしてみました。

尚、[Brackets]の拡張は[公式レジストリ]が運用されており誰でも気軽に拡張をリリースできます。

JavaのTimSortがバグってる件について

Sato Taichi
yak shaver

Python で実装され、その後 Java にも移植されたソートアルゴリズムである TimSort が盛大にバグっていることが発見されました。

このバグがどのようにして発生するのかについては、以下のドキュメントを精査して下さい。