ひらい ぶらり Hi-Library

ぷろぐらみんぐについて。ときどきどうでもいいことについて。

CentOSでMessagePackのphpバインディングを使う

MessagePackを使おう! ということになりまして。MessagePackはシリアライズのスピード、シリアライズ後のサイズの縮小に優れているシリアライザーです。詳しくは google:MessagePack で漁って見てください。手抜きなう。CとRubyのライブラリとして開発され…

ひとりapache勉強会 apache_module編 その1 「apache_moduleってなに?」

前書き みなさんこんにちは 会社で分不相応な部署で働いてるしんばしです。 会社で神と崇められている方々と仕事をしているわけですが、ミーティングなんかでも神と僕とでは前提になっている知識が違いすぎて置いてけぼりになってしまうことなんかが多々あり…

バグ管理ツールとコードレビューツールを調べてみた

コードレビューの度に、人を集めるのって大変だよねってことでsubversionなんかのバグ管理ツールと連携するコードデビューツールやプラグインを調べてざっくりまとめてみた。デモやら周囲の評判だけで書いているので、うそついてるかもしれないのであしから…

iPhoneのメールで文字入力をすると落ちる

メールに文字入力をして,予測変換がでるのを待っていたらiPhoneが落ちた再起動後も,メールアプリが落ちる.なんぞと思ったがiPhone メール 文字入力 落ちるでぐぐったら一発で解決策が.便利な世の中になったものである.因みに設定→一般→リセット→キーボ…

JTableにチェックボックスを設置

JTableにボタンを配置したりするのは大変みたいだが,チェックボックスは比較的簡単に配置できるようだ. まず,JTableにデータをセットするときに Object[][] data = { {"Mary", "Campione", "Snowboarding", new Integer(5), new Boolean(false)}, {"Aliso…

WindowsのCabochaをJavaからexecで使う が 文字化け

WindowsでCabochaをJAVAから使いたい.しかし,Java用のライブラリがないので,execでCabochaを叩いてみる. String cabochaPath = "C:\\Program Files\\CaboCha\\bin\\cabocha.exe"; String command = cabochaPath; Process process = null; try { process …

canvasで爆裂ブロック崩し

時間はないけど,実験のTA中とか暇なので作ってみよう!というわけで爆裂ブロック崩しJavaScript版に挑戦. もちろんIEでは絶対に動きません.自己満足です. ちなみに今のところFireFoxでも重すぎてお話しにならなそう. Chrome限定の予感.とりあえず,本…

グラフを扱うJavaライブラリ「Jung」

GraphvizとかCytoscapeのようなグラフを作ることができそうなライブラリ、Jung。BSDライセンスなので研究にも使えそうです。 しかも中心性を求めるアルゴリズムがいくつか存在するようなので、それっぽいグラフを作るにはもってこいの予感。参考 http://d.ha…

iBATISのファイルマップのWHERE句での大なり小なりの書き方

<select id="findMypTopics" resultMap="TNews-Result"> SELECT hoge_id, hoge_name FROM t_hoge WHERE hoge_id = ]]> 1 </select> 参考:http://pgmemo.blog116.fc2.com/blog-entry-32.html

ModelDrivenという仕組み

ModelDrivenという考え方自体は難しくてよく分からないが http://www.atmarkit.co.jp/aig/04biz/mda.html よくわからんけど、モデルになるものを作って、そこからソースコードを生成するよ!ってお話なのかな?んでプラットフォーム依存をしない、と。よくわ…

POSTやGETで渡された値をクラスに格納する

JavaでO/RマッパをするのにiBATISを使っています。 DBにインサートする時に、マッピングされたクラスに値を格納するわけですが、そのたびに //(抜粋) Emp emp = new Emp(); emp.setName(name); emp.setDept(dept); sqlMap.insert("insertEmpMap", emp); っ…

シンタックスチェック

http://project-p.jp/halt/anubis/blog_show/920 便利。

ファイルタイプ別設定の仕方

$HOME/.vim/ftplugin にphp.vimとか、ruby.vimとかって作っておけば、ファイルタイプに応じて設定を変えられる。 プラグインなんかはファイルタイプ別に設定するほうが無難っぽい。

FireFoxで右クリックだけの処理をしたい

右クリック検知にはcontextmenuなるプロパティがあるらしいですが、FireFoxでは右クリックと同時にクリックも呼び出されちゃいます。 そんなわけで、mouseupかmousedownを使いましょう。mouseupが本来の動作に近いのかもしれない。 var icon = document.getE…

Echo Getter(仮) を作ってみた

http://paseo102.sakura.ne.jp/download/echo_getter.xpiこんなの作ってみた。できること ・定期的にエコーを確認 ・mixi開いてなくてもエコーがチェックできる ・mixi開いてなくてもエコーで発言できる ・mixi開いてなくてもエコーに返信できる ・新しいエ…

XULでdiplayを使うとき

FireFoxのアドオンとかでXULに対して hoge { display: none; } を使う場合の注意。 noneは良いけど、他の値はうまく動かない。使う場合は hoge { display: -moz-box; } を使う。visibilityの時はcollapseにしておけば問題ないらしい。参考:http://piro.saku…

XmlHttpRequestでPOSTする時の文字コード

POSTする先がUTF8ならいいのかな?問題はUTF8じゃない時。 普通は文字コードを指定するパラメタか何かあって、それを元に受け取る側で文字変換してくれればいいんだけど、今回はmixiエコーにポストしようとしていたので見事に弾かれた。 仕方ないからEUCに変…

FireFoxアドオンでModule化した際にApplicationを使う場合

var Application = Cc["@mozilla.org/fuel/application;1"].getService(Ci.fuelIApplication); モジュールではApplicationが定義されていないため、自前で定義してやる必要がある・・・んだと思う。追記 CCもCiも定義されていないので、正確には↓ const Cc =…

XUL でdescriptionの子要素として動的に文字列を格納する

XULにおいて <description>ほげほげ</discription> のように書くと文字列は自動的に折り返してくれるようになる。 が、XULにはinnerHTMLとかinnerTextがない。 descritptionのvalueプロパティに文字列を格納しても一行になってしまう。 var desc = document.createElement("description"…

PEAR::MDB2 の罠

PEAR::MDB2では、ステークホルダに空文字を入れるとNULLと扱われるという、oracleの仕様に合わせたものがデフォルトになっている。やめてー。 MDB2 Error: null value violates not-null constraint空文字がNULL扱いされてnot-nullにしているカラムにNULLが…

MYSQLで文字化け

PEAR::DBから、PEAR::MDB2に移行したら、日本語が扱えなくなった。 Illegal mix of collations (utf8_general_ci,COERCIBLE) and (ujis_japanese_ci,IMPLICIT) for operationこんな感じのエラー。 ちょいっと調べたところ SET NAMES utf8; こんな感じのクエ…

Search Monkey

Search Monkeyについて(Shin_bashiメモ) ・開発者 Yahoo!検索にプラグインの様にアプリケーション色々作れる 現在は Enhanced Result Infobar の二つ。 Enhanced Resultは検索結果を改良できる。 たとえば映画のサイトならば、5つ星での評判などを表示させ…

外部CSSで設定した値やクラスで指定したCSSをJavaScriptで取得する

element.style.* で取得できるのはインラインCSSだけ。 function getStyle(element, style) { if(!/*@cc_on!@*/false) { var cs = document.defaultView.getComputedStyle(element, null); var value = cs.getPropertyValue (style); return value; } else {…

keydown keypressの違い

http://cgi14.plala.or.jp/uz/ubbs/wforum.cgi?mode=allread&pastlog=0001&no=182&page=20&act=pastkeydownは文字通り、なにかのキーが押されたときに反応する。keypressは「文字が入力」された時に反応する。という感じらしい。なのでkeypressでは矢印キー…

IE でsetAttributeは半端な実装 classとかstyleを指定しても反映されない

本日三つ目のエントリー うち二つがIEのダメエントリー。 マウスオーバーでクラス名を変更しようとして e.setAttribute("class", "hoge"); のように実行しても、クラス名が変わる(二重になる?)だけで、cssは反映されない。 どうもIEの実装が終わってるら…

foreach と for + in は違う

これはIEが悪いのかどうかわからないが、とりあえずメモ。 foreachのような挙動をするものとしてfor (var i in data)見たいな文がある。が、これはforeachではない。らしい。詳しくはこちら http://d.hatena.ne.jp/amachang/20070202 for (var i in document…

IEでJSONを扱うときの注意 カンマに気をつけろ!

var test = { url : "http://example.com", text : "test", } って書くとIEではエラー。text : "test", の「,」が曲者。FireFoxとかでは問題ないが、IEではエラーになるようです。

 addEventListenerの罠

for (var i in data) { getElementsByName("div").item(i).addEventListener("click", function() { alert(i) }, false); }こんな風にして、期待しているのは 一個目のdivでは0 二個目のdivでは1 みたいな出方。しかしそうならない。 仮にdata[10]だとすると…

いよいよリリースです

何をリリースなのか書いていいのかよくわからないので書きません。 とりあえず僕が手塩にかけて育てたシステムがリリースされました。 アップした瞬間にエラーだったり、社内に発表するのに誤字だったり、ドジっ子全開ですがとりあえず完成しました!んーま…

SoftBank 3G携帯ではnonumberが使えない

SoftBankでアクセスキーちっくな物を使うにはdirectkeyを指定して、nonumberを書いてやる。nonumberを使うと、対象の文字列の前に数字が付かなくなる・・・とのことだったけど、だめだった。なんでだ。と思ったら3G携帯からnonumber対応しなくなったらしい。…