ラベル 講演 の投稿を表示しています。 すべての投稿を表示
ラベル 講演 の投稿を表示しています。 すべての投稿を表示

2023/06/19

合同勉強会 in 大都会 2023 Summer

このエントリーをはてなブックマークに追加

イベント続きの最後は、大都会での合同勉強会です。

久しぶりのIn Personの合同勉強会です。Javaな人は少数派なので、もうちょっと一般的な話ということでプレゼンの話をしてきました。

 

時間が20分と短いので、ほんとに導入編という感じです。

ちゃんとプレゼンテーションの目的意識を持ちましょうということをはじめに話しました。

誰(ターゲット)に対して話すのかということと、その人にどうしてもらいたいのか(アクション)を明確にしましょうということです。

ターゲットが変われば使う言葉も変わります。アクションもそうです。社内で予算確保のためのプレゼンであれば、ターゲットは予算を持っている上司、アクションは予算承認になります。予算承認のためのプレゼンで技術のおもしろさを説いてもしかたないですよね。その技術を使えば、どのくらい工数が減るとか、品質が上がるとか、なんらかの会社に対するメリットを説明するはずです。

ということで、ターゲットとアクションをちゃんと意識しましょうということです。

後半は資料の組み立てという体裁で話しましたが、どちらかというとプレゼンのストーリーの組み立てについてです。

ちゃんとストーリーを考えましょうということで、いきなりパワーポイントで資料を作り始めるのではなく、下書きをしましょうということです。

個人的には、プレゼンは準備8割、本番2割ぐらいに感じています。

もちろん準備8割の中に資料作成も含まれているのですが、あくまでも資料は話の補助的な役割であると思っています。

でも、資料先行しちゃう人が多いんですよね。

ということで、今回のまとめはこちら。

とりあえず、好評だったようでよかったです!

2019/06/15

JJUG CCC 2019 Spring

このエントリーをはてなブックマークに追加

もう1月も前ですが、5月18日にJJUG CCC 2019 Springが開催されました。Oracle Codeの次の日ですね。

今回はProject LoomのFiberについてプレゼンしました。資料はこちら。

Fiberはいわゆる軽量スレッドです。

プレゼンではなぜ軽量スレッドが必要なのかという部分について、かなり時間をかけて説明しました。

OSに強く結びついたThreadを使った場合、コンテキストスイッチにコストがかかります。時間もかかるし、メモリも多く使用します。

これは、スレッドごとに用意されるJVM Stackをすべて退避させたり、もどしたりする必要があるからです。JVM Stackは、そのスレッドでコールされているメソッドコールのスタックで、メソッドで使われるローカル変数やオペランドスタックも含みます。

また、OSがスレッドのスケジューリングを管理しているため、コンテキストスイッチがいつ行われているかもJava側からは管理することができません。

そのために求められているのが、JVMで管理する軽量スレッド、つまりFiberというわけです。

これに対し、Fiberを使えば、ワーカースレッド上で動作するため、スケジューリングはJVMで管理でき、状態の退避用のメモリも少なくてすみます。

Fiberでは、スケジューリングには既存のFork/Join Frameworkが使用されます。コンテキストスイッチには処理の中断、再開のための仕組みが必要ですが、これはContinuationで行います。Continuationはいわゆる継続を実現させるための仕組みですが、JavaのContinuationは限定継続になります。

プレゼンの中ではContinuationをかなり強引にwait-notifyAllと同じようなものと説明してしまったため、誤解させてしまったのではないかと反省しています。もちろん、Continuationもwait-notifyAllも処理の中断・再開をするという機能はありますが、一般的なContinuationでできることは処理の中断・再開だけではありません。ちょっと説明不足でした。

しかし、今のところProject LoomではContinationを積極的に活用するようなシナリオはないように見えます。現状は、I/O待ちのためにパフォーマンスが落ちていることに対して、Fiberを使ってI/O待ちをなるべく解消することがメインの目的のようです。

これは、処理の中断・再開を行うFiberのparkメソッド、unparkメソッドがデフォルトのアクセス制御であることからも分かります。park/unparkを使用しているのは、ReentrantLockクラスなどのロック系のクラスや、java.nio.channelパッケージのソケット通信などのクラスなどです。

プレゼンの中では前日に行ったOracle Codeのデモについても説明しました。JDKに含まれているHTTPサーバーであるcom.sun.net.httpserver.HttpSErverクラスを使用して、Fiberを指定しているだけです。これだけで、既存のExecutorServiceインタフェースを使用した場合よりもスレッド数やスループットが向上しました。

とはいうものの、現状Fiberはそこまで速くありません。

コンテキストスイッチが起きないようにうまくタスク分けして、I/O待ちも多重化するなどして待たなければいけないスレッドを最小化するなどのチューニングを行えば、Fiberより高いパフォーマンスを得ることができます。

ただ、それをするには設計やチューニングなどの高度な知識や経験が求められます。Fiberを使うことで誰でも簡単にパフォーマンスを向上させられるということが、Fiberの意義の1つなのではないかと感じています。

また、Fiberのさらなるパフォーマンス向上のためにJVM Stackを操作することも考えられているようなので、今後に期待したいですね。

 

さて、以下は会場やsli.doでの質問とその回答です。

Q Fiberの中断前と再開後でワークスレッドが変わることがあるのか?

A. あります。

キターーーーーーー 「この分野は素人なのですが」な質問!!!

なんとか答えられてよかったですw

さて、現状はFiberはシリアライザブルではないのですが、シリアライザブルにする計画があります。このため、ワークスレッドが変化することもありますし、処理途中のFiberを他のCPUに移動させてそこで再開というシナリオも考えられます。

質問した伊藤さんも心配されていますが、ロガーのようにスタックトレースを保持させるようなものは、Fiberにするとやばいかもしれません。

Q. ある時点の処理で中断していたものを複数回再実行することはできるか?

A. 一般的な継続だとこれができるのですが、今のところJavaのFiberでは計画されていないようです。

Fiberは継続を行うための状態管理に既存のJVM Stackをそのまま使っています。そのため、再実行を行うには、JVM Stackを操作するバイトコードが必要になるはずですが、そこまでやるとかなり大がかりになってしまうためかもしれません。

Q. ワークスレッドは自動的に用意されるのか?

A. されます。

デフォルトではForkJoinPoolを利用してワークスレッドの割り当てを行っています。もちろん、他のスレッドプールに置き換えることもできます。

Q. OSによらないThreadがFiberだとしたら、Green Threadのようなもの?

A. まさにGreen Threadです。

Javaの初期のころ、Solaris向けのJavaはネイティブのスレッドではなく、JVMが管理するスレッドを使用していたのですが、それがGreen Threadです。

Q. Kotlinのcoroutineと何が違うのか?

A. Kotlinのことをよく知らないのですが、同じような機能のようですね。

Q. Continuationのscopeがよく分からない。コンテキストスイッチを行いたい複数のFiberからなるグループのようなもの?

A. 継続処理を行いたい範囲をしめすものです。

どこからでも自由に中断・再開を行うのは難しいので、継続ができる範囲を決めているという感じです。Fiberも内部でスコープを持っていて、Fiberのタスク処理の中だけで継続を行っています。

Q. ThreadとFiberの使い分け指針が知りたい

A. I/Oの待機やロックの取得を含む非同期処理であればFiberを使うのがよいと思います。

計算処理だけであるならパラレルストリームやFork/Join Frameworkを使いましょう。それ以外だったらThreadになると思いますが、今でもExecutorServiceにタスクを渡すのが主で、Threadを直接使うことはまずないはずです。

Q. 既存のThreadをFiberに置き換えるイメージがつかめません。ExecutorServiceでThreadを使うようなことはFiberでもできるのでしょうか。

A. Fiber.scheduleメソッドがExecutorService.submitメソッドのような感じです。

Fiber.scheduleメソッドはstaticメソッドなので、ExecutorServiceのようにExecutorsクラスでExecutorServiceインスタンスを生成して、それからsubmitするまでを行っているような感じです。

Q. Loom入りのJDKを含んだDocker Imageは公開されているか?

A. 私が調べたときにはなかったです。

Docker上でLoomのJDKをビルドしようとするとなぜか落ちてしまうので、私はローカルな環境でビルドしてからそれをコピーするDockerfileを作ってDockerのイメージを作ってました。

Q. Loomのリリース予定は未定だとしても、現時点での目標とかはあるのでしょうか?

A. 明確なリリース予定時期がFiberを作っている人たちの間ではあるのかもしれませんが、私には分からないです。

少なくとも、Windowsで動作できるようにならないとリリースはできないので、そこが最低限の目標となるのではないでしょうか。

2017/06/03

Oracle Code Japan Tour

このエントリーをはてなブックマークに追加

今年も Stephen Chin さんと Sebastian Daschner さんはオートバイに乗って日本各地の JUG を回っているのです。

去年は Nighthacking Tour でしたけど、今年は Oracle Code Tour。

でも、去年は沖縄と札幌だけは飛行機だったのです。どうやら、Steve たちは、沖縄はともかく、札幌にバイクで行けなかったことを悔やんでいたらしいです。

で、今年はすべての行程をバイク。札幌もバイクでした。

全行程を示すと...

東京 - 名古屋 - 大阪 - 岡山 - 広島 - 熊本 - 福岡 - 福井 - 仙台 - 札幌

だそうです。セミナはありませんでしたけど、四国にも彼らはいっていたようです。

櫻庭は去年と同じく、週末だけのスポット参戦。広島札幌で登壇させてもらいました。

広島で講演するのは 2013 年以来。@soudai1025 さんに誘われてオープンセミナー広島に登壇したのでした。その時は Java SE 8 について話したのですが、今回は Java SE 9。

札幌は去年の Night Hacking Tour でも講演させていただいたので、2 年連続。

去年は大韓航空機が羽田で事故を起こしたせいで、札幌に来るまでが大変でした。今年はそんなトラブルもなく、無事に講演することができました。

両方とも内容は Java SE 9 です。Java Day Tokyo の資料を日本語にして、Jigsaw と JShell をくっつけています。

広島と札幌では微妙に資料が違うのですが、それらを統合したものを slideshare にアップしてあります。

2017/05/20

JJUG CCC 2017 Spring

このエントリーをはてなブックマークに追加

Java Day Tokyo の後は、CCC です。前回の秋は出なかったので、1 年ぶり。

今回は、Project Jigsaw です。

しかし、今月になって Jigsaw の JSR 376Public Review Ballot が否決されてしまうと波乱があったばかり。こんな状態で、なんの話をすればいいのでしょう?

Ballot の意見を見ていても、結局は過去とのマイグレーションをどうすればよいかという点が指摘されています。OpenJDK の Jigsaw の ML でも、マイグレーション関連について活発に議論されています。

しかし、このあたりのことは Java Day Tokyo でのキーノートや Jigsaw のセッションでは一切触れられていませんでした。

そこで、このセッションでは発表時点で分かっていることはなるべく盛り込んで、話をしています。しかし、セッション後にやはり変更された点や追加議論が必要とされている項目も出てきています。

そういう点については、また稿をあらためて紹介できればと思っています。6 月の Public Review Reconsideration Ballot の後ですかね。

さて、発表資料はこちら。

すでに、ほぼ確定の module-info.java の書き方や、ビルド/実行の方法などについて触れた後、残りの 1/3 の時間を使ってマイグレーションについて話をしました。

特に既存の JAR ファイルをモジュールとして扱う Automatic Module について紹介しました。しかし、その Automatic Module が JCP での議論のトピックになっているわけです。とりあえず、セッションでは改定案を紹介しましたが、最終案がこうなるとはかぎりません。

あっ、1 点だけ、セッションで失敗したと思ったことが...

標準で提供されている Platform Module を調べるために java コマンドに --list-modules オプションがあります。これで調べた結果を示したのですが、JRE の java コマンドを使ってしまいました ><

JDK の java コマンドと JRE の java コマンドだと使えるモジュールも異なるのです。たとえば、jdk.jshell などは JDK の java コマンドだけです (もちろん、JRE でも --add-modules すれば使えます)。その点をすっかり忘れて、JRE でやってしまったのでした。

 

このセッションでは質問を受け付けるために sli.do というサービスを使いました。

Java Day Tokyo で @bitter_fox さんが、このサービスを使っていたので、私もまねしてみたわけです。

セッション中にオンラインで質問を投げられるし、それに対して「いいね」をすることもできます。なかなかいいですね、これ。次回も使ってみよう!!

というわけで、セッション中にいただいた質問をここで答えておきます。

 

Q. JASRACのひとがやってくる危険が危なくないですかww?

A. あー、あー、聞こえない、聞こえない

Q. mavenでは、moduleとどうやって整合とるのでしょう

A. Maven の動きをあまり追いかけていないのですが、問題となるのは Jigsaw のモジュールと artifacts が違うものだというこということにあると思います。どうやって折り合いをつけるかということは、まだ決まっていないようです。

プレゼンテーションにも登場させた Stephen Colebourne がこの件についてブログで言及しているので、ご参考までに。

Java SE 9 - JPMS modules are not artifacts

Q. メタ情報なのに.javaっていうのがちょっと嫌。JSONじゃダメなんだろうか。

A. Java で JSON を扱うのは意外に面倒なので... module-info.java を扱うのは javac なので、Java の構文解析がそのまま使えるのがいいのではないでしょうか。

プレゼン中にも言及しましたが、JSON-B が Java SE でも使えるようになったら変わるかもしれません。あくまでも個人的な意見ですが。

Q. moduleやrequires, exportsなどのキーワードはmodule-info.javaでのみ有効な予約語?の位置づけでしょうか

A. module-info.java のみで使用できる予約語です。

Q. モジュール化した場合としない場合でアプリの起動時間にどのくらい差がでてきますか?

A. 大きいシステムでモジュールを多くロードするようなシステムであれば差がでると思いますが、私自身は試してないのでよく分かりません。小さいシステムだと、それほど差がないように感じます。しかし、計測を行ったわけではないので、あくまでも感想レベルだと思ってください。

Q. module-info.javaが小文字始まりになった理由は何かあるのでしょうか

A. パッケージの情報を記述する package-info にならったのだと思います。

Q. // puckage export typo?

A. タイポはなかなか気がつかないので、ご指摘ありがとうございます! 公開している資料では修正してあります。

Q. モジュール版のmavenセントラルができることになるんですか?

A. 今のところそのような予定はないです。個人的には Maven セントラルが利用できれば一番いいのではないかと考えていますが、そのためには前述した artifacts とモジュールのすり合わせを行う必要があります。まだ、道は遠そうです。

Q. 昔、jarの中にjarを入れるsuper packageみたいな話があった気がしますが、そっちの話はどうなったのでしよう

A. JAR をまとめたパッケージングに関しては JSR 277 で JAM (Java Archive Module) というのが提案されていましたが、棄却されています。super package は言語側の拡張提案で、JSR 294 で提案されていましたが、こちらも棄却されました。これらを受け継いだのが、Project Jigsaw になります。

Q. Jigsawにはバージョンを管理する仕組みはないのでしようか? モジュール名にバージョン番号を入れる?

A. バージョンをつけることは可能です。バージョンをつけるには、jar コマンドの --module-version オプションで記述します。ただし、そのバージョンを使用して、バージョンを指定してビルドするなどは、現状ではサポートされていません。

Q. exportsで指定したパッケージのサブパッケージは公開されるのでしょうか?

A. 公開されません。公開するにはサブパッケージも exports 文を記述する必要があります。

Q. MANIFEST.MF に名前がなかったらどうするのでしょう

A. ファイル名が使われると思いますが、確認はしていません。

Q. testだけでパッケージを公開(exports, opens)したい場合やmoduleをrequiresしたい場合はどうするのが良いのでしょうか?

A. これは非常に難しい問題で、現状 Jigsaw では同じパッケージを複数のモジュールに分割することはできません。そのため、ファイルツリーを src と test に分割している (ビルドしたクラスファイルも別ディレクトリ) 場合はモジュールにしてしまうと、テストを実行することができません。

櫻庭もこれに対する最適解を見つけている最中なのですが、現状はテストの時はモジュールとして扱わないようにしています。コンパイルや実行に他のモジュールが必要な場合、--module-path と --add-modules オプションを使用して必要なモジュールをロードするようにしています。

2017/05/17

Java Day Tokyo 2017

このエントリーをはてなブックマークに追加

今年も Java Day Tokyo で講演してきました。

講演内容は Java SE 9 の全般。資料はこちらです。

裏話を書いてしまいますが、私のセッション、内容がなかなか決まらなかったのです。

当初、Jigsaw についてを要望されたのです。しかも、Alex Buckley が Jigsaw の応用的な話をするので、入門編をやってくれということでした。

というか、Alex ですよ!! Jigsaw の JSR 376 のスペックリードですよ!! 私ごときが、Alex と同じ話題を喋るなんて、恐れ多い。

でも、結局 Alex と Bernard Traversat さんが Jigsaw を話すことになったわけです。

その他に、Java SE 9 関連だと JShell を @bitter_fox さんが話すので、Java SE 9 の注目 2 機能はとられてしまったわけです。

そこで、Jigsaw と JShell 以外の全般について話すことになったわけです。

話題的には次の 3 つ。

  • コンパティビリティ
  • 新機能
  • 改良された機能

特にコンパチの話は、今まで使えていたけれども使えなくなるモノがいろいろあるので、それを中心に説明しました。

メソッドもほんとに使えなくなったり、Deprecated になったものが多くあります。多くは Jigsaw に起因するメソッドですが、Jigsaw では今後いろいろと隠されてくことになるはずです。

ツールもいろいろなくなっています。個人的には VisualVM がなくなってしまうのがイタい。便利なのになぁ...

新機能としては、主に Reactive Streams を紹介しました。

残念ながら、Java SE 9 では Reactive Streams を導入しただけで、それ以上の機能は自分で作りこまなくてはいけないのがつらいところです。Publisher だけは実装クラスである SubmissionPublisher クラスが提供されていますが、Subscriber は実装する必要があります。

改良された機能は、Milling Projet Coin と Stream API、そして Collection を紹介しました。

Collection のファクトリメソッドである of メソッドは、Java SE 9 で導入されたメソッドの中で一番のヒットではないかと思っております。

また、String クラスの内部構造が変更されたことなどにも触れてます。

もっと多くの機能について触れたかったのですが、講演時間は限られているので、これぐらい。

ITpro の 最新 Java 情報局 でより詳細な情報を執筆しているので、ぜひそちらも参考になさってください。

 

さて、こういう多くのトピックがある話題を話すプレゼンって、とても難しいです。

単に、「続きましては...」とかで次のトピックにつなげていくだけにしてしまうと、ぜんぜんおもしろくないどころか、聞いている方は退屈してしまいます。

実際、こういうセッションをしている人が過去に何人もいたのです。そして、聞いている私は、完全に退屈してしまったわけですww

トピックがズラズラと続くだけなので、盛り上がりにも欠けてしまいます。

「いつまでこの調子で続けるの?」と思われてしまっても、しかたないですよね。

そのために、今回はどうやったかというと、トピックをツリー状に構造化して、今話しているトピックが全体の中のどこに位置しているかを分かるようにしてみました。

具体的には、こんなツリーになっています。

Topic Tree

ツリーの葉は 3 つ以上にならないようにしています。それ以上になってしまうと、聞いている方が今どのあたりを話しているかを把握できなくなってしまうからです。

そして、話している時も、なるべく今話しているトピックが分かるように、かつ、なるべくトピック間に関連をもたせるように話してみました。さて、結果はどうだったんでしょうね。

2007/11/22

今日のジェネリクス

このエントリーをはてなブックマークに追加

というわけで、悲しみを乗りきって、ジェネリクスのセミナです。

基礎セミナなので、かなり簡単にしてみました。

櫻庭としては、なぜジェネリクスが導入されたのかを理解していただければ、十分です。

ジェネリクスはワイルドカードとかを使わなければ単純なので、必要になればすぐに使えると思います。でも、なぜジェネリクスを書かねばならないのか、というところを理解しているのとしていないのでは大違いです。

理解できていれば積極的に使うだろうし、理解できていない場合は警報がでるからしかたなくという態度の差に表われてしまい、結局は品質向上が望めないと思います。

途中、だれないように Java Puzzlers の中からジェネリクスに関連のあるものなどを出題したりしたので、楽しんでいただけたと思います。

しかし、参加者が少ない orz

やっぱり、J2SE 5.0 はまだまだニーズが低いのでしょうか? 今、現在使っていなくても、未来のために聞いておいてもらいたかったのですが...

ちなみに、人気がなかろうと何だろうと、J2SE 5.0 は続ける予定です。

とりあえず、考えているのはアノテーション、JSR 201 (enum や拡張 for 文など) です。

この他に、リクエストがありましたら、ぜひお願いします。コメントでも JJUG の ML でもかまいませんので、じゃんじゃんお寄せください ^ ^;;

2007/10/05

今日の java-ja

このエントリーをはてなブックマークに追加

今日は java-ja の「第一回チキチキ 19 時だよ全員集合!! ライトニングトーク大会」。ちなみに、java-ja のイベントはすべて第一回です。

ヨシオリさんの Keynote を使い倒す宣言のでたプレゼンとか、いきなりホワイトボードでしかも中途半端で終わる nekop とか、iPod touch でプレゼンするかさたにさんとか、Java でアレを作っちゃった ApplePedler さんとか、ブルースクリーンでウクレレで歌を唄うようちゃんとか、体操の未来を憂うよういちろんさんとか、ケイタイでプログラミングする cafistar さんとか、タップダンスしてくれた NAGASE さんとか、ZO-3 持ち込んだ tfunato さんとか、いろいろ楽しかった。

琴線に触れたのは iPod touch とケイタイプログラミングかな。tfunato さんはもっと ZO-3 弾きまくってくれればよかったのに。

java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
カンパーイ!
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
カンパーイ!
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
オカザキさん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
Isoparametric さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
yamashiro さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
かさたにさん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
nekop さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
everes さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
ヨシオリさん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
onk さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
ようちゃん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
とのうちさん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
NAGASEYASUHiTO さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
共演?
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
よういちろうさん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
onk さん、倒立!
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
よういちろうさんも負けじと...
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
gaooh さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
Ewigkeit さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
rhaco さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
ApplePedlar さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
tfunato さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
daffy さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
cafistar さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会 java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会
矢野勉さん
java-ja 第一回チキチキ 19時だよ全員集合!! ライトニングトーク大会

ゴングが用意されていなかったので、Java で 5 分で作りました。スタート時と 4 分、5 分の時に音が出ます。

といっても実際は JavaFX でプレゼンをするときのために JOAL を使った OpenAL のユーティリティクラスを作ってあるので、それをコールしただけです ^ ^;;

PC のスピーカから音を出していたので、音量が小さかったですね。まさか、こんなことに使うとは思っていなかったので。

さて、櫻庭は食べものをおいしそうに撮る Tips を紹介しました。ネタはほとんどなし。まじめにやりましたよ。

資料はクリックすれば進みます。

ついでに、この資料の中に出てくる写真を載せておきます。今回使用したのは Sadaharu AokiPierre Hermé の写真。といっても、Hermé は 1 枚しか使ってませんが^ ^;;

Sadaharu Aoki 東京ミッドタウン店

拡大地図を表示
Pierre Hermé, Paris 青山

拡大地図を表示

 

まずは Sadaharu Aoki から。前半は家で撮って、後半は東京ミッドタウンのサロンで撮りました。

Macarons, Sadaharu Aoki, Tokyo Midtown, Roppongi Macarons, Sadaharu Aoki, Tokyo Midtown, Roppongi
Saya, Sadaharu Aoki, Tokyo Midtown, Roppongi
Saya, Sadaharu Aoki, Tokyo Midtown, Roppongi Saya, Sadaharu Aoki, Tokyo Midtown, Roppongi
Sadaharu Aoki, Tokyo Midtown, Roppongi Dessert d' ete Rose et Glace Fraise, Sadaharu Aoki, Tokyo Midtown, Roppongi
Sadaharu Aoki, Tokyo Midtown, Roppongi
Dessert d' ete Rose et Glace Fraise, Sadaharu Aoki, Tokyo Midtown, Roppongi Dessert d' ete Rose et Glace Fraise, Sadaharu Aoki, Tokyo Midtown, Roppongi
Dessert d' ete Rose et Glace Fraise, Sadaharu Aoki, Tokyo Midtown, Roppongi

次が Pierre Hermé。

Ispahan, Pierre Herme, Shinjuku Ispahan, Pierre Herme, Shinjuku
Ispahan, Pierre Herme, Shinjuku
Ispahan, Pierre Herme, Shinjuku Ispahan, Pierre Herme, Shinjuku
Macarons, Pierre Herme, Shinjuku