水曜日 8 27, 2008

しめくくり

2005年3月5日にBlogはじめましたというエントリを書いてから約3年半、今では、初めてお会いする方でもたまに「ブログ読んでますよ〜」なんて言っていただけるほどに成長しました。これもブログを書くスペースを与えてくれたSun、ブログを書くモチベーションを与えてくれた方々、もちろん読者の皆さんのおかげです。3年半で、合計418エントリの記事を書いてきました。全然ITにも関係ない話題、IT的な話題などなど。個人的には引き続きwatermint.orgにてブログを書いていきますが、少し心残りなのは、中途半端に終わっている続き物のエントリです。こちらについては、なるべくwatermint.orgで続きの記事を書ければと思っています。
中途半端に終わっている記事(記憶の範囲で)。その他リクエストがあれば、watermint.orgかこのエントリーにコメントをいただければできるだけ拾うようにいたします。
3年半もの長くの間ご愛読いただきありがとうございました。また、引き続き、watermint.orgでお会いしましょう。おしまい。

日曜日 8 24, 2008

最終出社日

先週の金曜日は岡崎のSunへの最終出社日でした。新卒で採用していただき7年と5ヶ月、多くの、信じられないぐらいすばらしい方々と一緒に仕事ができて、本当に充実した日々でした。本当にありがとうございます。
なお、このブログはこのまま残りますが、よろしければ個人ブログ watermint.orgで引き続きお会いしましょう。今後ともよろしくお願いいたします。
岡崎

金曜日 8 22, 2008

My last day at Sun

Hi, It's my last day at Sun. During the past seven and a half years at Sun, I have met and worked with so many amazing folks at Sun that it is impossible to list the impact that each one of them have had on me. A huge thank you to all of you. Keep in touch watermint.org.
Cheers, Takayuki Okazaki

日曜日 8 17, 2008

SBSタワーから遠くの花火を

昨日は世田谷区/川崎市の多摩川花火大会でしたね。Sunの本社はこれらの花火をみるのに絶好の場所にオフィスがありますが、さすがに当日は入館制限があり会社から花火という訳には行きません。とはいえ、あまり高い建物が付近にない高層ビルですから、遠くの花火がたまに見えたりします。今回見えたのは大田区平和都市宣言記念花火です。
R0027212
わかりますか?Ricoh GX100の3倍ズーム(72mm)で撮ってますが、それでも点みたいにしか映りません(笑)。あと、全然映らなかったんですが、この左奥でも千葉あたりでやっているっぽい、花火が見えました。

金曜日 8 15, 2008

JavaFX SDKのProject Nile + Illustrator CS3を試す

ずいぶん、ネタ的にほったらかしにしていましたが、先月末に事前にアナウンスされていた通りぎりぎりJavaFX SDKのプレビュー版がリリースされました。JavaFX SDKについての記事はちらほら見かけるので、今回はちょっと敷居の高いProject Nileを試してみました。何が敷居が高いかというと、Project NileはPhotoshop CS3あるいはIllustrator CS3用のプラグインがメインだからです。Photoshop CS3やIllustrator CS3を手に入れるのが敷居が高いです(値段的意味で)。幸い、手元には昨年末のボーナスをはたいて買ったAdobe Creative Suite 3がありますので、早速チャレンジです。
Project Nileには他にもSVGからJavaFXへ変換するツールや、JavaFX Scriptのビューワもついているのでそれらは単体で利用することができます。現在のところ、利用できるのはWindowsまたはMac OS X (on Intel)のみのようです。Photoshop CS3 + Project Nile pluginは確かJavaOneでデモをしていたと思いますので、Illustrator CS3用のプラグインを試してみました。
Project Nile (JavaFX Illustrator plugin)
適当に絵を描きます。ま、ねこび〜んのSVGをそのままIllustratorに取り込んだだけですが・・。気になったのがフォントの扱い。なので、一応テキストも入れてみます。
Project Nile (JavaFX Illustrator plugin) : Export as JavaFX Script
JavaFX pluginは書き出しのためのプラグインのようですから、メニューのファイルから書き出しを選び、形式でJavaFX Script (.fx)を選んでみます。ところで、JavaFX ScriptはJavaクラスにコンパイルしてから実行されるようですのでスクリプト名はJavaクラス名として利用できるものに自動的に置き換えられます。
Project Nile (JavaFX Illustrator plugin) : Exported files
おっと・・。フォントも書き出されました。これ、フォントのライセンス上まずいような、そうでもないような・・・。一応、使っているフォントのみが選ばれて書き出されるようです。
Project Nile (JavaFX Illustrator plugin) : Outlining text
まあ、普通Illustratorで入稿する場合にはフォントをアウトライン化するのが礼儀だろうと思いますので、そのように実行します。
Project Nile (JavaFX Illustrator plugin) : Change layer name as english
あと、レイヤー名も英語にしておきます。どうやらレイヤ名が日本語だとおかしなことになるようです。
JavaFX Script Viewer あとは、JavaFX Graphics Viewerというのでファイルを選択すればオッケーです。たまーに表示できない絵もありますが、まだプレビュー版ということで暖かく見守りましょう。

月曜日 8 11, 2008

電気代

最近は原油高に起因する、ガソリン価格の向上や、各種消費材の値上げのニュースを頻繁に目にするようになりましたが、この間、電気代のお知らせ票がきてびっくりしました。今回は、原油高とかではなくて、この夏はやたらエアコンに依存した生活をしていたからなんですが、電気代が去年のおよそ2倍です。一人暮らしを始めて7年半ぐらいになりますが、この水準になったのは始めてです。ちなみに、今回、223kWhで5,317円でした。たぶん、原油高の調整分は「燃料費調整額」というやつで、これは405.86円でした。
R0026621
去年のお知らせ票は処分してしまったので、いくらだったかはわかりませんが、8月分の使用量は139kWh。料金は2,500円ぐらいだったと思います。この7年間で3,000円を超えたことは無かったんですが・・・。改めていかにクーラーが電気食いか思い知りました。
二酸化炭素の重さにして223kWh → 約96kg、去年と比べて約36kgも多く排出してしまいました。すいません。やっぱり、去年までのように扇風機だけの生活に戻そうかなあ・・・。

土曜日 8 09, 2008

夏のはかないタイミング

最近、ぜんぜん季節感を感じなくて、いつの間にやら梅雨が明けてて、気がつけば毎日晴天の猛暑で、たまに豪雨がくる。という状況だということに、ようやく気づいて夏だ、という実感がいよいよ感じられてきました。気づくの遅すぎですが。
R0026637
夏に欠かせないと思っている自分の恒例行事は2つあります。そんなにたいしたことではありませんが、一つ目はスイカを食べることです。一人暮らしなのに、大きめのスイカをまるまる一個かってきて、朝晩で1/8ずつ、つまり4日ほどで食べ尽くします。この時期うちの冷蔵庫は完全にスイカモードになります。もう一つはビアガーデンに行くことです。夏といえば、ビールがうまいのはいいんですが、ビアガーデンの雰囲気がとても好きで、夏だな〜と、実感できる瞬間です。
R0026645
この2つの恒例行事は、一見簡単に、しかもわりといつでも実現できそうなのですが、やはり物事にはタイミングがあるようです。スイカはお盆前の物の方が、断然おいしく感じるし、値段も安めです。ビアガーデンは8月中で終わってしまうところが多いようなので、飲み会を調整してるうちに、9月になってビアガーデン実現は夢に終わってしまいます。9月以降もやってるビアガーデンももちろんありますが、9月になるとさすがに夜は寒いので、あんまり楽しめません。暑くても、夏だな〜、という雰囲気でもないですからね。
R0026642
梅雨明けは首都圏では7月下旬ぐらいですから、この恒例行事はじつはほんの2〜3週間のうちに実施してしまわなければならないようです。で、気づいたらあと1週間ちょいしかありません。今日とりあえずスイカは食べたので、どなたかビアガーデン行きませんか?

ひさしぶりにCDを買いました

ひさしぶりにCDを買ってきました。今回は3枚です。前回CDを買ったのは、5月7日だったようです。3ヶ月ぶりです。その3ヶ月の間、そのCDはステレオに入れっぱなしで、そのCDしか聞いてませんでした。さほど音楽好きというわけでもないし、最近はカラオケに行くことも無くなったのではやりの音楽を覚えよう、という感じでもなくなってきました。テレビも見ないので、新曲らしき物をきけるのはラジオをかけているときぐらいです。こういうサイクルがかれこれ7年ぐらい続いており、CDを購入するタイミングもだいたい3〜6ヶ月に1回ぐらいになりました。
R0026639
このサイクルはだいたい、仕事が一段落するタイミングとだいたい同じで、今回もちょっと暇ができたので、ぶらりCD屋さんへ、という流れで適当にジャケットの絵柄だけで選んできました。 こうやって、適当に選んで、それを3ヶ月ぐらい聞き続けます。今回は3枚も買ったので、それぞれ1ヶ月ずつぐらいになるかもしれませんが。ずっと聞き続けていると、ちょうどその曲を聴いていた頃の仕事の内容とか、学生のときなら、受験勉強の様子がよみがえってきます。
R0026638
音楽はiPodで聞くことが多いですが、うちのiPod shuffleの内容は7割ぐらい英会話の教材なので、外で音楽を聴くのはiPodの再生時間の3割程度です。iTunesでパソコンのスピーカーやイヤホンで聞くこともあります。その場合、音楽を聴くよりは雑音を意識の中から消すためです。本当に音楽を聴いている時間は、はたしてどれほどあるのか・・・。

火曜日 7 29, 2008

HaskellとOpenSPARCの共同プロジェクト

またプログラミング言語ネタです。最近よく名前を聞くようになったHaskellのHaskell.orgとOpenSPARCとの共同プロジェクトで、特にハイパフォーマンス/マルチコアシステム向けの開発を促進することが目的のようです。SunからはHaskell.orgに学生向けのファンドとして10,000ドル(約107万円)と、SPARC Enterprise T5120サーバを寄贈したそうです。
Haskell and OpenSPARC

月曜日 7 28, 2008

Java VM上で動作するSqueak実装、JSqueak

Smalltalkのオープンソース実装であるSqueak(スクイーク)を、Javaで実装したJSqueakというのがSun LabsのDan Ingallsさんによって作られているそうです。Smalltalkを実際に使ったことも無いし、知識も無いので、いまのところ、個人的には使いどころが思いつきません・・・。もうちょっと勉強しないとなあ。
JSqueak

金曜日 7 25, 2008

flickrに載せた写真30,000枚超え

30,000+ pictures
flickrに写真をのせはじめてだいたい2年すこしになりますが、アップロードした写真の枚数がようやく30,000枚の大台を突破しました(非公開の写真を含む枚数)。ちなみに、Nikon D50で撮った枚数は累計28,129枚、Ricoh GX100で撮ったのは16,646枚です。あわせて44,775枚。ひどくぶれたもの以外はたいていのせてあります。3万枚の中には、ほかのカメラで撮った写真や、スクリーンショットなんかも含まれていますが、改めて見直すとすごいことになってます。

金曜日 7 18, 2008

Scalaパズラー

今週水曜日に行いました、記念すべき20回目のJavaホットトピックセミナーの資料が公開されたようです。さて、Javaホットトピックセミナーでは、Javaパズラーという定番の人気コーナーを毎回やっています。毎回、問題を考えるのが難しいんですが・・・。さてそれは置いといて、Hittin' the edge casesでは、Scalaパズラーというのを始めたようです。Part 1とありますからシリーズ化されるんでしょうね〜。楽しみ。
参考: Scala (Wikipedia)

金曜日 7 11, 2008

Project Carolineを試す, その1 - cashを使う

Project CarolineはPlatform APIを使って、システムの構成をダイナミックに変更することができるホスティング型のプラットホームで、PaaS (Platform as a Service)等と言われるようなサービスです。概要は、Computerworldの記事で紹介されていますのでそれをご参照ください。 具体的な使い方の前に、少しProject Carolineの概要と仕組みをおさらいしておきましょう。Sun Labs Open Houseでのプレゼンテーション資料が公開されていますのでそれをベースに。
Project Caroline (p15)
以下意訳ですが、プロジェクトCarolineというのは、
  • 長期間にわたって実行されるインターネットサービスを開発および配備するための、プラットホームを開発するための研究プロジェクト。
  • ユーティリティスケール(ここで言うユーティリティとは、電気、ガス、水道などのような公共インフラをさしていて、電気・ガスのように同様にインターネットサービスを提供できるようなスケールを目指す): 多くの利用者およびサービス向けに、単一の巨大で、共有され、かつ、サービス間が安全に隔離されたグリッド。
  • 完全にプログラマチックに制御可能な、分散コンピューティング環境、ストレージ、ネットワーク資源を提供。
  • サービスは、リソースの使用状況に応じて柔軟かつリアルタイムに増減させることができる。
  • リソースのハイレベルに抽象化する。
という感じですね。面白いのはやっぱり、プログラマチックに環境を構築できるところでしょう。今までは、せいぜい、負荷に応じて、ごめんなさいページを出力する専用サーバに振り分ける程度だったものを、負荷が増えれば、サービスを提供するサーバを動的に増やすという、ルールを結構簡単に書けるようになるのです。
Project Caroline (p16)
上図は、Project Carolineで扱う資源(ファイルシステムや、ネットワーク、データベース、コンピュータ)を、あなたのコードによって動的に作れますよ〜。ということを示した図。ロードバランシングの設定も、プログラマチックに描くことができます。
Project Caroline (p30)
もう少し具体的に見ていきましょう。上図は、現在Project Carolineで提供されている資源を大まかにまとめたものです。LB(ロードバランサ)や、NAT、VPN、DNS、VLANなどネットワークの資源。Processesというのが、実際にアプリケーションを実行するための資源です。現在はJava、Perl、Pythonがサポートされています。File systemsは、アプリケーションが使用するデータを格納したり、ログを出力するために利用する領域。Databasesは文字通りアプリケーションが利用するデータベースで、具体的にはPostgreSQLのインスタンスです。MySQLも将来的にはサポートするそうです。
Project Caroline (p35)
リソースが、とか、プログラマチックに!と言われても少しピンとこないので、もう少し具体的なコードを見ることにしましょう。Project CarolineにはPlatform APIというCarolineのリソースを制御するためのAPI群が提供されています。上図では、ネットワーク環境を作るためのAPIを例示しています。createNetwork("ネットワーク名", ほしいIPアドレス数, コンフィギュレーション)という、たった一行だけのコードでIPアドレスを取得したり、他にもファイルシステムを作るAPIを使えばファイルシステムの領域を確保することも可能です。さて、概要が何となく分かってきたところで、実際に触ってみてもう少し理解を深めてみることにします。
Project Carolineでは、Carolineの環境を利用するために、NetBeansのプラグインや、antのプラグインなど、いくつかのツールが提供されています。今回は、その中でも対話的にProject Carolineを使うことができるcashというツールを使うことにします。cashは、現金ではなく、Caroline Shellですね。ちなみに、岡崎が使っているのは社内の開発環境グリッドのため、それに伴い公開されているProject Carolineのツールとはバージョン等が、微妙に違ったりしますが、ご容赦ください。
cashは、JRubyで実装されたシェルで、irbにPlatform APIを呼びやすくしたり、認証機能の追加など若干Caroline用に拡張したようなシェルです。JRuby 1.0.xの(まだJRuby 1.1.xでは動作せず(?)) gemを使ってインストールすると、cashというコマンドライン・ツールがインストールされます。
cashを使うには、まずGridのURLと、ユーザIDを取得しておきます。ユーザIDを取得するにはまず、Project CarolineページのUser accountを作成し、その上でさらに、Grid用のアカウントを取得するようにリクエストを出します。
Project Caroline registration
無事アカウントが取得できれば、あとはcashの引数でそれらを指定します。
$ cash -gridURL https://grid.projectcaroline.net -gridCustomerID hogehoge
毎回いれるのが面倒なら、$HOME/.carolineというファイルに、
customerID = hogehoge
password = hogehoge
gridURL =  https://grid.projectcaroline.net 
という感じで設定しておけば自動的に読み込んで接続してくれます。接続できたら早速、リソースをいじってみましょう。
 $ cash
001:0 $ net = create_network "HogeHogeNetwork", 4 
=> #<Java::ComSunCarolineInternalPlatformimpl::NetworkImpl:0x5e7bf966 @java_object=com.sun.caroline.internal.platformimpl.NetworkImpl@709a11c0:https://dev.caroline.east.sun.com as:okazaki:5fa12555-ab56-4d7a-81cc-8e64ba73f978:okazaki@:HogeHogeNetwork>
002:0 $ fs = create_base_file_system "HogeHogeFileSystem", BaseFileSystemConfiguration.new
=> #<Java::ComSunCarolineInternalPlatformimpl::BaseFileSystemImpl:0x1dce910e @java_object=com.sun.caroline.internal.platformimpl.BaseFileSystemImpl@5a9fbed8:https://dev.caroline.east.sun.com as:okazaki:275c713e-ffbb-4a2e-ade1-f2570eead8b3:okazaki@:HogeHogeFileSystem>
ネットワークと、ファイルシステムを作ってみました。ちなみに、メソッドやクラス名はTABキーで補完が聞きます。
003:0 $ net.delete
=> nil
004:0 $ fs.destroy
=> nil
要らなくなったら削除。ちょっと、エントリが長くなりましたので続きはまた来週。

ゆの in Javaというのが流行っているようです

t_yanoさんのブログで知りましたが、ゆのin Javaという遊びが流行っているようです。元ネタは今ひとつ知らないのですが一つ考えてみました。ゆの in Java - d.y.d.にルールっぽいのが書いてます。うーん、いまひとつ修行不足です・・・。
package Hidamari;
import static Hidamari.Sketch.Yuno.\*;

public class Sketch {
    static enum Yuno {
        ひだまりスケッチ, X365,
        来週も見てくださいね;
        void sketch() {
            System.out.print(this.name() + " ");
        }
    }
    public static void main(String[] args) {
        int X = 1, _ = 1;
        for (Yuno P : Yuno.values()) (

            X / _ / X < _? 来週も見てくださいね
                    
            :P
        ).sketch();
    }
}
残念なのが Xと _ が普通の定数として遊んでいるだけなところですね。d.y.d.さんのところだとちゃんとそれらも働いているので秀逸です。
参考リンク:

ホットトピックセミナーとナイトセミナーのアーカイブ

Javaホットトピックセミナー、OpenSolarisナイトセミナー、OpenSolarisホットトピックセミナーのこれまで開催したそれぞれの回の資料をアーカイブしたまとめページが出来上がりました!
SDCナイトセミナー
数えてみたところ、Javaホットトピックセミナー 7月号は記念すべき第20回目ですね。20回目には鈴木さんによるOpen ESBの紹介と、cactusmanさんによるHudsonの紹介があります。お楽しみに!
About

okazaki

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
今日