トップ 最新 追記

Heretic Programmer

エントリを読んで笑ったら笑った回数だけ足跡「☆」を押してください!!足跡がつきます(藁
2004|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|07|08|09|10|11|12|
2010|01|03|04|05|12|

2004-11-17

REBIRTH

人生の再出発スタート。

本日のツッコミ(全21件) [ツッコミを入れる]

Before...

# xbjewvf mdlkibxo [sdykiza hkupn uafnymd hzrmpeix hroxlvact dbvwefum pgfnhats..]

# Eagles [sale@mp3.com]

# Eagles [sale@mp3.com]


2004-11-18

タイトル

日記のタイトルを決めた。

[Linux]Return of United Linux

ほほう。DebianベースのProgencyが入っているな。面白い。

[Java]AOPの比較

ベンチマークが興味深い。AspectJが一番速そう。AspectWerkzは2番目。Spring AOPはかなり遅い。使いやすさと速度のバランスでAspectWerkzがベストか?

本日のツッコミ(全322件) [ツッコミを入れる]

Before...

# Eagles [sale@mp3.com]

# Eagles [sale@mp3.com]

# wnxlyebtiq [Hello! Good Site! Thanks you! ldokwtwiwbj]


2004-11-19

[Java]C-JDBC wins the ApacheCon Derby Code Contest

C-JDBCはJDBCドライバをラップしてDBをクラスタ化するソフトウェア。

休出

現在の抱えている作業量にかかわらず、休出して下さい。
与える仕事がなければ、休みとします。
あきれますね。意味が全然わかりません。

[Java]次の時代のJavaオープンソース

何が来るか考えてみる。

まず、DB。PostgerSQL8.0からWindowsで利用できるようになることから、MySQLに少し押されつつあるPostgresSQLが勢いを取り戻すだろう。また、パフォーマンスも徐々に向上している点も見逃せない。Java組み込み系はApache Derbyに決まり。なんと言っても、DB2互換を目指しているという所に惹かれる。HQLDBはisolation levelとか、ロックとかいまいちなのでダメ(割り切れば良いけど)。

次は、J2EEコンテナ/サーブレットコンテナ。重量級のJ2EEコンテナよりシンプルなサーブレットコンテナが見直されるのではないだろうか。で、Tomcat/Jetty、そしてダークホースのResinだ。Resinが安定性、性能とも最も良さそうなので、今後の発展に期待が持てるかも。J2EEコンテナに対しては、JNID/CMPよりは、IoC/AOPフレームワークとO/Rマッピングの組み合わせに注目が集まる。

O/Rマッピング。これはHibernateしかないだろう。Middlegenと組み合わせばテーブル定義から簡単にマッピングファイル/Javaクラスを作成可能。EJB3に対応するのも見逃せない。

IoC/DIコンテナ。SpringかPiccoContainerかJakarta Hivemind、Seasar辺りか。世界的にみるとSpringだが、日本ではSeasarが盛り上がっている。まぁ、世界標準ということで、Springかな。

AOP。AspectJは使いにくい。Spring AOPは遅い。速度と使い易さの点でAspectWerkz。

Java/XMLデータバインディング。問答無用でXML Beansに決まり。
本日のツッコミ(全39件) [ツッコミを入れる]

Before...

# Anand [Yet, when it comes to looking for bed linen, as opposed to..]

# razor27 [over and over and over, http://greattrystore.info/bettemid..]

# public [Some do not comment at all, but are active daily visitors,..]


2004-11-20

[Game]FFをギターで弾く

スゲー。つーか、凄すぎ。こういうバンドのライブがあったらいきたい。

[Java]国産オープンソース軽量Java APサーバーSeasarのコミュニティがNPO法人を設立へ

ただのオープンソースコミュニティというだけでなく、遂にNPO法人化される模様。いよいよ時代はSeasarの波になりつつあるようだ。

[Opensource]Apache JIRA

はじめてApache JIRAを使った。パッチを添付する場合、Apache Software Foundationへのコードの寄付に同意するかという旨のチェックボックスが追加されていた。同意すると所有権を放棄することになる。

[Java][Opensource]MyFaces

Apache MyFacesの国際化の改善と日本語メッセージの追加パッチを投げる。

本日のツッコミ(全64件) [ツッコミを入れる]

Before...

# Macmonkey [This requires an ability to predict the future, something ..]

# EricHQ2 [Here you can also find information on home construction, r..]

# psychoviper [Having different blog accounts is like having a publicatio..]


2004-11-21

[Opensource]オープンソースのローカル最適化とグローバル最適化

私の考えるオープンソースは、グローバル最適化されてなければいけない。グローバル最適化とは何だろうか?その前にローカル最適化について説明しておこう。ローカル最適化を行うプロジェクトでは、自分以外のプロジェクトに貢献しない。例えば自分のプロジェクトで利用しているライブラリにバグを発見したとする。ローカル最適化されたプロジェクトではライブラリのバグを修正を行わず、バグを回避する方法を考える。また、発見したバグをアップストリームに報告しない。ちなみに、BLOGでブツクサ文句を言うのは報告とはいわない。アップストリームには何も伝わらないからだ。

グローバル最適化されたプロジェクトでは、バグを発見したときにバグの原因を突き止め、最適解を探す。利用したいライブラリの直接のバグかも知れないし、さらにそのライブラリから参照されたバグかも知れない。原因を突き止め、修正されるべき部分を修正する。機能追加では、自分のプロジェクトで開発している部分に機能追加を行うのが良いのか、それとも別の所で機能追加を行うのが良いのか考える。

オープンソース全体を最適化するのがグローバル最適化であり、自分のプロジェクトだけ最適化するのがローカル最適化。ローカル最適化プロジェクトが潰れても何も残らないが、グローバル最適化を目指すプロジェクトでは、たとえ自分のプロジェクトが潰れてもその成果は他のプロジェクトへ受け継がれていくだろう。

[Debian]Javaパッケージのアップロード権の委譲

Arnaudから幾つかmainに入れたいんだけど、メンテナフィールドをpkg-javaチームに書き換えていいか問い合わせがあった。Debianのパッケージのメンテナンスが十分にできていないし、以前程興味もなくなってきたので、Arnaudに自分の持つパッケージの権利を委譲した。委譲したといっても、私はpkg-javaチームの一員なので、何時でもアップロードできるから問題はない。

本日のツッコミ(全3件) [ツッコミを入れる]

# who makes ambien [<a href="http://loans.yourcoolmath.net/montana-board-of-in..]

# president replica rolex [<a href="http://adipex-florida.moveoutfirst.net/money-orde..]

# rolex day date [<a href="http://casino-online.thekicktop.net/online-casino..]


2004-11-22

IoC/DIコンテナとJSF

JSFのManaged BeanはDIぽい。Spring等のIoC/DIコンテナと一緒に利用する場合は、役割の棲み分けが重要になる。SeasarとSpringのアプローチを比べると、Springはセッションに対応付いたBeanはJSFで、純粋にロジックを実行するビジネスオブジェクトはSpringで、というように棲み分けを行っているように思える。一方、Seasarは全てのBeanをSeasarで管理しようとしている。現にHttpSessionにバインドする機能が新しいSeasarで実装されている。

使えるもの積極的に流用するSpring、全てを自分で管理するSeasar。どちらが良いだろうか。

[Java]Eclipse HTML/JSPエディタ

Struts/JSFのカスタムタグをHTMLのタグへ変換しプレビューするというのは面白い。NirvanaはHTMLのタグをStruts/JSFのタグへ変換する訳だが、アプローチが丁度逆になっている。基本的にエディタ上ではHTMLで編集するようにして、デプロイ時にNirvanaでコンパイルしたJSPを利用すると面白いかと思っていたのだが、やりたいことは、グラフィカルなJSPの編集であるが、アプローチが全く逆であるところが面白い。

[Java]J2SE6.0(Mustang) snapshot release

J2SE5.0がでたばかりというのに、もう6.0か。

[Java]IoC/DIコンテナとセッション管理

PicoContainerは、NanoContainer Servlet、HiveMindは、HiveMind Servlet Filter辺りに書いてある。Seasar2はHiveMindの方法だな。

本日のツッコミ(全49件) [ツッコミを入れる]

Before...

# fatboy [Hello peoples!, http://www.google.com/notebook/public/0894..]

# raggi [Cool site!, http://www.google.com/notebook/public/18166797..]

# pip [The excellent offer!, http://www.google.com/notebook/publi..]


2004-11-24

[Java]Springのsessionサポート

現実逃避に朝の電車の中でseasar2.1のソースコードとSpringのソースコードをだらだらと眺めてみる。SpringにJSFのsession/request相当のスコープのBeanを管理させるには、session/request用のBeanFactoryを実装すればよいようだ。あとは、SeasarのようにFilterServletを組み合わせて、HttpSessionのsetとremoveをやれば実装できるかな。

[Java]Using Lucene with OJB

Luceneでオブジェクトのパーシステンスをしてしまおうという、凄い発想。

新日記のコンセプト

前の日記を書き始めたときは、先進的な技術ネタしか書かず、それが幸いして短時間で多くの人に読んでもらえるようになった。今回の日記も初心に立ち返り技術ネタしか書かない。また愚痴は一切禁止。また、日記のタイトルである「異教徒」が示すように世の中の流れに逆らった意見を述べていきたい。

[Java]Sessionサポート

SeasarがHttpSessionに禿げしく依存していたので、Sessionというかスコープについて考えてみる。SessionはHttpSessionとは限らない。リッチクライアントの場合、サーバにログインしてからログアウトしてまでがセッションと考えられる。リクエストは、ある特定の短期間のオブジェクト。Webだとsubmitを押されたときにだけバインドされるオブジェクト。リッチクライアントでも送信ボタンを押したときにバインドされるオブジェクトか。アプリケーションは、結局、singletonか?scopeとオブジェクトのライフサイクルを纏めると、
  • application:アプリケーションで唯一のオブジェクト。一回生成されるとずっと使われる=singleton
  • session:ログイン/ログアウトの期間など、ある一定期間利用されるオブジェクト
  • request:Webのフォームがサブミットされて、画面を返すまでとか、クライアントが何かデータを送信したときとか、ある特定のタイミングで比較的短期間で利用されるオブジェクト。
  • prototype:必要になる度、毎回生成される。Springのprototypeですな。
application、session、requestは基本的にMapで管理した方が良いと思われ。HttpSession等、特定のフレームワークに依存してはならない。さて、この検討を受けてどうするかだが....
本日のツッコミ(全121件) [ツッコミを入れる]

Before...

# Aron [1]

# Arnie [Great site! You can find related info on the following sit..]

# Arnie [Great site! You can find related info on the following sit..]


2004-11-25

[体調不良部]死にそう

死にそう。薬を投入したけど、まったく効いてこないよ…。
相変わらず凄そうなプロジェクトだなぁ。お大事に...

[Opensource]またドイツ人か

なんか、メールをやり取りしている海外の開発者が突然自己紹介してきた。どうもドイツの学生らしい。つーか、またドイツ人か。OSS関連で増えた知合いって、ほとんどドイツ人だな。

本日のツッコミ(全53件) [ツッコミを入れる]

Before...

# viagra prescription [cheap@viagra.com]

# order online viagra [cheap@viagra.com]

# purchase cialis [cheap@cialis.com]


2004-11-28

[Java]MyFaces

JSFのRIだと基本的なUIしかないので、Strutsから移行するメリットはあまり感じないが、MyFacesを使うと拡張のUIコンポーネントとかめちゃくちゃ便利なんでStrutsには戻れないだろうな。

[Java]JXPath

XPATHのエンジンかと思ったら、XPATHのエンジンではなかった。Commons-ELやJEXLと同じで、式言語みたいなもの。XPATHで書いた構文でJavaBeanやプロパティにアクセスできる。

発見される?

誰が書いているのか分からんはずだが...(と言いながら数人にはばれているけど)

[Java]Eclipse Middlegenウィザード

執筆とセミナ資料作成が少し落ち着いてきたので、Middlegenウィザードの続きを書き始める。Middlegenって、antタスク書くのが面倒だけどMiddlegenウィザードが完成すればちょー簡単に使えるようになる。

本日のツッコミ(全8件) [ツッコミを入れる]

Before...

# amslro jlhnqkzo [qpfx zdql tskjrx tyxiasbz ydqfjigh bpcfoqz wvhuiqm http://..]

# Eagles [sale@mp3.com]

# HsvsRsvsesv [ [URL=http://mh-medicine.blogspot.com]men's helth[/URL]]


2004-11-29

きれいな体

荒れに荒れた書籍原稿を脱稿。セミナー資料も頭を悩ませながらなんとか完成。雑誌の原稿が2ヶ月先位にあるけど、本業以外の仕事はこれでしばらくなくなった。かなりすがすがしい気分。やっぱり、執筆とかセミナーって俺には向かないなと思う今日この頃。

ということで、通勤電車の中で久々のコーディング。Middlegen IDEのEclipse統合部はほぼ完成。あとは少し前に作った本体をくっつけるだけとなった。

[Java]富士通、日立、NECがWeb Reliablity実装をオープンソース化

コードを読んでみる。Axisがベースとなってるな。WorkerThreadがあったり、Timerがあったり、なんとなく、某ミドルウェアに構成が似てるな。同じことをやるなら、このような形でオープンソースでやった方が勝ちだな。取り敢えずソフトはオープンソースで無料にしておいてサポートで金を取るというのはいい考えだ。

本日のツッコミ(全25件) [ツッコミを入れる]

Before...

# nisz pcdimytn [oxbpaurcm reoqj jnzrsl ksgften lwygpfka dgeiplcqx tniwm]

# nisz pcdimytn [oxbpaurcm reoqj jnzrsl ksgften lwygpfka dgeiplcqx tniwm]

# ogutgyhnse [Hello! Good Site! Thanks you! zjyslqglfso]


2004-11-30

[Java]MiddlegenIDE 0.1.0リリース

MiddlegenIDEをリリースする。Eclipseのプラグインとして実装され、GUIでデータベースの設定を行うだけで、Middlegenのビルドファイルを作成することができる。ダウンロードはこちらから

プラグインをEclipseにインストールし、ファイル->新規作成->その他->Middlegen->Middlegen Build Fileを選択する。ダイアログでビルドファイル名を指定すると、次の画面が現れる。

データベース接続情報を入力してRefreshを押すとテーブル一覧が表示されるので、Hibernateのhbm.xmlとJavaBeanを生成したいテーブルを選択し、Executeボタンを押す。すると、antのビルドファイルが生成される。ビルドファイルを右クリック->実行->Antを選択するとMiddlegenが起動する。

あとは、MiddlegenのHibernateプラグインが起動するので、適当にホゲホゲ編集し、Generateボタンを押してWindowを閉じればok。

[Java]MiddlegenIDE TODO

  • DB情報を入力しないと変になるバグを修正
  • 生成済みのファイルから設定を読み込んで、設定の変更を簡単に(今は毎回最初から入力し直さないといけない)
  • 出力ディレクトリをEclipseのsrcディレクトリにする
  • コードを綺麗にする。Swingプログラミングは殆ど始めてに近いのでグチャグチャ。static使いまくり(w。
  • ライセンスとか考える(Eclipse Pluginなので基本はEPLにしたい。しかし、Middlegen/Apache関連のライセンスとの競合は大丈夫?)
  • 自動的にAntが起動するようにする?(JBossIDEのように勝手にAntが走らない方がいいかも?)
しかし、EclipseのPluginのAPIがよーわからんのが悩みだな。HibernateSynchronizer/JBossIDE辺りをハックしながら修得するか。ちなみに、コアの部分はSwingで作っているので、スタンドアロンでも、NetBeansに組み込んでも使える(様になるはず)。
本日のツッコミ(全12件) [ツッコミを入れる]

Before...

# Oscar [Good design! [url=http://ptgvzchi.com/wgmy/xemd.html]My ho..]

# qhlzyixitc [Hello! Good Site! Thanks you! kxjdbtjjmpoe]

# vjkqcmlt wglaq [lvuhirzg marboun jxny zfdos bdmifzcgo gxrlt vbelcw]