100% Hardcore! RSS
大森スケーター 太田 大田 スケート スケートボード 尾崎恭一 Kyoichi Ozaki
2002|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|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|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|
<< 2006/05/ 1 2 1. あなたがMacを使うべき10の理由
2. 夢実現WEBプログラム開発
3. ウェブデザインのトレンド:死の宣告
4. Professional MacOSX
3 1. GUM BALL 3000
4 5 6 7 1. Propelで複数の検索条件を任意の形で指定(整形)するには
8 1. symfonyのview.ymlの書き方
9 1. array って+演算子使えるのね
2. Google Analyticsキタ━━━━(゜∀゜)━━━━ッ!!
10 1. RevoPower: Moped Retrofit
2. JBL Radial iPod Speaker System
3. AdminGeneratorに確認画面を追加する
11 1. OSXにRASTをインストール (激ハマリ)
2. sfPager使うとmodelに定義されているメソッド以外使えない
3. string型な列でORDER BYしようとすると勝手にUPPER()される(プチハマリ)
4. Google TrendsはAlexaより役立つかも
5. symfonyのsfConfigで取得可能な値一覧(cheatsheet)
12 1. PowerBookにX11とgimpを入れてみた
2. 車のエンジンオイルと添加剤のホームページです。
13 14 1. darwin portsのアップデート
2. カレミュー、日本最古の「カエル肉入りカレー」を発売
3. HTML_AJAXを使ったリアルタイム進捗表示アップローダー
4. Q
5. Building Universal Binaries from "configure"-based Open Source Projects
15 16 17 1. Chicken of the VNC
2. fixmbrでXPのbootloaderを再インストール
3. Visual Studio 2005 Express Edition
18 1. 大塚 コスプレ好き焼き肉 萌めいど
2. Yahoo!360のコミュニティ機能がぶっ壊れている
19 20 21 1. 気になるもの
2. 結婚式ラッシュ終わりました
22 1. Memorex iMove elbows into the iPod boombox market
2. music.mixi.jpが出来てる
3. zshに移行
4. gimpじゃなくてgimpshop
23 1. Fast OS Switching on MacBook
2. DS Lite
24 1. Mac OS X on intel PC(not Apple)
25 1. DVDの焼き方が分からない
2. SmacBook Pro
26 1. 【デモ動画】MacBookの仮想ディスクトップをモーションコントロールで切り替え
2. How to achieve persistent sessions with cookies?
27 28 29 30 1. YouTubeでタグによるRSSフィードを取得する方法
2. パソコンは天からのまわりもの
3. 成田市スケートボード愛好会 予告
31 1. AJAXなサンプルをYouTubeにあげてみた
>>
トップ 最新

2006-05-02

_ [diary] あなたがMacを使うべき10の理由

Macを使い始めて半年になるけど、Macはほんとーにイイ!この記事の中でも特に自分が重要だなと思うのは「Macは画面がきれい」と「Macはかっこいい」につきると思う。その他の項目についてはFreeBSDでもLinuxでもカバーできる(できている)。だけどこの2項目については、どうがんばってもFreeBSDやLinuxはおいつかないと思う。そもそも外観なんかはOSの問題じゃないしね。ogijunさんの言う通り毎日長時間使うものだからこそ、この「いいモノ使っている感」が大事だと思う。

あと元記事にはふられていないが、Macは安定している。それはAppleがハードウェア(組み合わせレベルだけど)とOSの両方を作っているという所にMacの安定性に寄与しているのだと思う。

_ [diary] 夢実現WEBプログラム開発

すごすぎる。なにもかもが

_ [diary][web2.0] ウェブデザインのトレンド:死の宣告

このサイトの書き物は面白くて最近よく読んでいる。下の方の最近のトレンドと死の宣言がウケル。システムアイコンの利用とか、Effect.Fadeとか、俺も最近使っちゃった…

今年いっぱいはとりあえず生かせるみたいw

それにしてもこの人よくEffect.Fadeとか知っているよな〜。もはや37signalsやprototype.jsやscript.aculo.usはデザイナー達にも業界標準なのか。

_ [diary] Professional MacOSX

オープンソースマガジンのムック本って事で中身の内容がかなりUNIXよりな話。"UNIX使いとしての初心者MacOSXユーザ"という俺の立場にピッタシな内容です。軽く中身を見たけど、面白うそうな記事いっぱい。

http://images-jp.amazon.com/images/P/4797335076.01._OU09_PE0_SCTZZZZZZZ_.jpg

Dashboardって単なるブラウザーなんだね〜。ウィンドウズでいうActiveデスクトップみたいな。で、WidgetっていうのはJavascriptでできていることが判明。これは結構面白いかも。さっそくmixi widgetでも作ってみようと思ったけど、既にあった。プッ。やっぱみんな同じ事考えるのね。出遅れた…

いや、まだまだ面白いものいっぱい作れるはず。


2006-05-03

_ [diary] GUM BALL 3000

うお〜。すごっ。てかBAMの紫ランボルギーニとか気になる。とにかくゴージャスなrideが勢揃い。


2006-05-07

_ [develop][symfony][php] Propelで複数の検索条件を任意の形で指定(整形)するには

Propelってドキュメント少ね〜!結局やりたいことはソースから読み取らないといけないという…メンドクサ

というわけで、Propelで複数の条件を指定する場合にはaddAndやaddOrを使うわけなんだけど、()の位置づけというか、検索の組み合わせを指定するにはどうするのか。一つの()は1 Criterionと考えて、条件をブレークダウンして、条件毎にCriterion()を作っていく。Criteriaにはそのブレークダウンした条件をさらにaddAndやAddOrしていけばいい。以下サンプル

しかも、こういった事ってネットで情報検索するときにはどうやって検索するんだ?!ムズカシクネ?propel sample samplesとかか?コミュニティで聞くと自分で探せみたいなこと言われるんだよな〜。バカに厳しいからMLとかGroupとか嫌い

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

_ shota [Criteria周りはHibernateのものとかなり似ていますので、Hibernateで知識を仕入れるといいかもし..]

_ おざき [なるほどね〜!それはいい手かも!!ありがとう いまちょっとHibernateのドキュメント見てみたんだけど、 Cr..]


2006-05-08

_ [develop][ symfony] symfonyのview.ymlの書き方

ここのページに、view.ymlにおいて、デフォルト設定から、設定を取り除きたい場合の説明がされている。その時は、指定のcssやjavascriptファイルのてまえに-(半角マイナス記号)をつければよいと書かれている。実際には、こんな感じで

# adds a new stylesheet and removes the default one (as defined in the global view.yml)
indexSuccess:
stylesheets: [special, -main]

そういうわけで、-をつけてみたら、まんまと-がついたファイルをincludeしやがった…

<link rel="stylesheet" type="text/css" media="screen" href="/css/special.css" />
<link rel="stylesheet" type="text/css" media="screen" href="/css/-main.css" />

ありえん。symfony-0.6.1を使っているのだけど、もしかして、この機能ってそれ移行のリリースでしか使えない?


2006-05-09

_ [develop][php][symfony] array って+演算子使えるのね

2つのArrayを1つにしようとしていたところ、array_mergeだと配列のキーが0からふり直されてしまうことに悩んでいたら、array_mergeのドキュメントにこんな事が

If you want to completely preserve the arrays and just want to append them to each other, use the + operator:

なーるほど。Yes, I wan't to do that!

というのも、よく入力フォームで「▼下記の項目からお選びください」みたいなのがあるじゃない。あれをどうやってselectのoptionの配列に付け足そうか迷ってたんだよね〜。結局こんな感じになった

    $empty = array ('' => '▼下記の項目からお選びください');
$this->contact = myDbConsts::getLabelValue(myDbConsts::INQUIRY_CONTACT);
$this->contact = $empty + $this->contact;

そんでもってviewではこんな感じに出力

<?php echo select_tag('contact', options_for_select($contact, $sf_params->get('contact'))) ?>

kyo1 the copycat.

(↑ってdanさんの真似してみたかっただけ)

_ [diary] Google Analyticsキタ━━━━(゜∀゜)━━━━ッ!!

やっとアカウントゲット♪とりあえず会社のサイトの分析でもしてみるか。


2006-05-10

_ [diary] RevoPower: Moped Retrofit

粋な自転車。1.1馬力, 23cc, 2ストロークエンジン, 7500RPM, 平地で32kmでる。重さは前輪に5.4kgの追加。燃費は86km/lととてもエコ!

てかエンジンは後輪についてたほうがよくね?

_ [diary] JBL Radial iPod Speaker System

なにこの形。ちょっと気になる。音聞いてみたいね

_ [develop][symfony] AdminGeneratorに確認画面を追加する

確認画面の実装うれしいですね。それより、Flash変数の存在を知ったので、そっちのほうが俺的にはうれしかった!TOKENもこれで実装が楽々


2006-05-11

_ [develop][osx] OSXにRASTをインストール (激ハマリ)

久々にハマった!!昨日の夜と今朝の作業あわせて3〜4時間ぐらいはハマってたのではないだろうか…あ〜イライラ!とりあえず何故か分からないが、メールメッセージをrast-registerしようとすると、

g5:~/tmp/test k_ozaki$ /usr/local/rast/bin/rast-create db
g5:~/tmp/test k_ozaki$ /usr/local/rast/bin/rast-register db /Users/k_ozaki/Mail/inbox/352
error: no such filter module (message/rfc822)

と訳の分からないダダをこねる!no such filter module?ファックユー。/usr/local/rast/lib/rast/filters/ruby/rfc822.rbはちゃんと存在するぞー!中身にもちゃんとMIME_TYPE = "message/rfc822"とか定義してあるし。あ〜ここでこのファイルをrubyで一度実行していれば…ってそれは後々気がついた話ではあるので、まず読み続けてください。

なので、サルみたいにいろいろコンパイルオプション変えたりして何度もインストールを繰り返してみたりしたのだけど全くだめ。で、どこが問題でこのエラーがでているのか調査しようと思ったのだけどOSXにstraceがな〜い。ってかportsになかっただけなのだが。とうわけで近くにあるFedora CoreなLinuxマシンにログインしてrastをコンパイルして、同様にメールメッセージを追加しようとする。同じメッセージデターーー(゜∀゜)ーーー!!というわけで、straceしてみると、奇妙な箇所がいくつか

stat64("/usr/lib/site_ruby/1.8/Win32API.rb", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/Win32API.so", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/Win32API.rb", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/Win32API.so", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/Win32API.rb", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/Win32API.so", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/Win32API.rb", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/Win32API.so", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/Win32API.rb", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/Win32API.so", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("./Win32API.rb", 0xbf88b070) = -1 ENOENT (No such file or directory)
stat64("./Win32API.so", 0xbf88b070) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
...
...
stat64("/usr/lib/site_ruby/1.8/htree.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/htree.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/htree.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/htree.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/htree.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/htree.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/htree.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/htree.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/htree.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/htree.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./htree.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./htree.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
...
...
stat64("/usr/lib/site_ruby/1.8/mp3info.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/mp3info.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/mp3info.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/mp3info.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/mp3info.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/mp3info.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/mp3info.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/mp3info.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/mp3info.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/mp3info.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./mp3info.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./mp3info.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
..
..
stat64("/usr/lib/site_ruby/1.8/zip/zip.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/zip/zip.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/zip/zip.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/zip/zip.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/zip/zip.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/zip/zip.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/zip/zip.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/zip/zip.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/zip/zip.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/zip/zip.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./zip/zip.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./zip/zip.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
..
..
stat64("/usr/lib/site_ruby/1.8/tmail.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/tmail.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/tmail.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/1.8/i386-linux/tmail.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/tmail.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/site_ruby/tmail.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/tmail.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/tmail.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/tmail.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("/usr/lib/ruby/1.8/i386-linux/tmail.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./tmail.rb", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
stat64("./tmail.so", 0xbf88ceb0) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0

あ〜、だいたい分かった…これらが出ているのはそれぞれ/usr/local/rast/lib/rast/filters/ruby/配下にあるfilterを取り込もうとしている後に出ている。つまり、filterが依存しているライブラリが無いとfilterはRASTに取り込まれていないと…しかし上の不親切なメッセージじゃ分からないよな〜。な〜。これは取り込むときにエラーにするべきじゃないのか?そもそも取り込めないfilterなんてあっても意味ねーじゃん!(怒)というわけでOSXにrastをインストールおさらい編

$ sudo port install ruby
$ sudo port install file
$ sudo port install apr
$ sudo port install apr-util
$ sudo port install db4
$ sudo port install nkf
$ sudo port install icu
(utf8を使うためには必要)
$ curl -O http://projects.netlab.jp/rast/archives/rast-0.3.1.tar.bz2
$ tar xvjf rast-0.3.1.tar.bz2
$ cd rast-0.3.1
$ ./configure --prefix=/usr/local/rast \
--with-ruby=/opt/local/bin/ruby \
--with-apr-config=/opt/local/bin/apr-1-config \
--with-apu-config=/opt/local/bin/apu-1-config \
--with-icu-config=/opt/local/bin/icu-config \
--with-db-includes='-I/opt/local/include/db4' \
--with-db-libs='-L/opt/local/lib/ -ldb-4.3' \
--with-encodingdir=/usr/local/rast/lib/rast/encodings \
--with-filter-moduledir=/usr/local/rast/lib/rast/filters \
--with-ruby-filter-moduledir=/usr/local/rast/lib/rast/filters/ruby \
--with-default-encoding=utf8
$ cd ../
$
$ curl -O http://i.loveruby.net/archive/tmail/tmail-0.10.8.tar.gz
(rfc822フィルターを使うのに必要)
$ tar xvzf tmail-0.10.8.tar.gz
$ cd tmail-0.10.8
$ ruby setup.rb config (rubyはportsの方を優先していなかったら/opt/local/bin/rubyな)
$ ruby setup.rb setup
$ sudo ruby setup.rb install
$ cd ../
$
$ curl -O http://cvs.m17n.org/viewcvs/ruby/htree.tar.gz
(htmlフィルターを使うのに必要)
$ tar xvzf htree.tar.gz
$ cd htree
$ sudo ruby install.rb
$ cd ../
$
$ curl -O http://rubyforge.org/frs/download.php/7537/ruby-mp3info-0.5.tar.bz2
(mp3フィルターを使うのに必要。他http://ruby-mp3info.rubyforge.org/参照)
$ cd ruby-mp3info-0.5
$ ruby install.rb config
$ ruby install.rb setup
$ sudo ruby install.rb install
$ cd ../
$
$ curl -O http://jaist.dl.sourceforge.net/sourceforge/rubyzip/rubyzip-0.5.12.tgz
(zipフィルターを使うのに必要。他http://ruby-mp3info.rubyforge.org/参照)
$ tar xzf rubyzip-0.5.12.tgz
$ cd rubyzip-0.5.12
$ sudo ruby install.rb
$ cd ../

疲れた!これからmew-gigi編です。

参考URL

RastをOSXにインストール

[rast-ja:50] Re: rast-registerで登録に失敗します

_ [develop][symfony] sfPager使うとmodelに定義されているメソッド以外使えない

例えば、

    $c = new Criteria();
$c->addJoin(StorePeer::ID, UserPeer::STORE_ID, Criteria::INNER_JOIN);
$c->addAsColumn("sum_quota", "SUM(".UserPeer::QUOTA.")");
$c->addGroupByColumn(StorePeer::ID);
$pager = new sfPropelPager('Store', $this->getRequestParameter('num', 10));

んなことはよくある話だと思うのだけど、さてここで得たStoreにぶらさがるUser全てのディスクQuota総量であるsum_quotaを得るには?現状ではStorePeer::doSelectRSしかないみたい。sfPagerを使うとStoreオブジェクトしか返せない!!ってこれよくある話ではあると思うのだけど…使えないわけないじゃんと思って探ってみたのだけど、どうも無理っぽい

_ [develop][symfony] string型な列でORDER BYしようとすると勝手にUPPER()される(プチハマリ)

ちょーウゼー!!!またハマった!!会社の奴らは新規オープン焼き肉店で半額焼き肉食ったあげくにレジで注文商品の計上ミスられてさらに割安で焼き肉くっている間に俺はsymfonyのソースコード読みまくりだぜ!!!今日はRASTでもハマったしほんとハマりでーだ。で、ここで問題です。symfonyでmysqlなschema.xmlをpropel-build-modelするとbigint型はstring型と定義されます。lib/model/om/map参照。で、ここで最悪な事に、symfonyのBasePeer.phpは、Criteriaにstring型なカラムがORDER BYの条件に入っているとそれをUPPER() でくくるという仕組みになっています(symfony-0.6.1 php/symfony/vendor/propel/util/BasePeer.php Line 821参照。あ〜、gonzui欲しいね)。んで、これが何で問題になるかというと、下記参照

mysql> select id,disk_usage from test_group order by disk_usage desc limit 10;
+------+------------+
| id | disk_usage |
+------+------------+
| 802 | 930773826 |
| 1265 | 667368078 |
| 832 | 602875007 |
| 519 | 509407571 |
| 669 | 242050622 |
| 978 | 222521438 |
| 762 | 163448848 |
| 1187 | 124704552 |
| 771 | 103013274 |
| 964 | 99852434 |
+------+------------+
10 rows in set (0.00 sec)

mysql> select id,disk_usage from test_group order by upper(disk_usage) desc limit 10;
+------+------------+
| id | disk_usage |
+------+------------+
| 964 | 99852434 |
| 675 | 98052230 |
| 802 | 930773826 |
| 927 | 8192 |
| 521 | 8192 |
| 765 | 8192 |
| 735 | 8192 |
| 620 | 7899090 |
| 517 | 67298974 |
| 1265 | 667368078 |
+------+------------+
10 rows in set (0.00 sec)

で、どうやらORDER BYを処理する際に、あらかじめ対象のカラムに関数が定義されている場合(例えばLOWER()とか、SUM() とか)はUPPER()はつけないようです。下記参照(symfony-0.6.1 php/symfony/vendor/propel/util/BasePeer.php Line 781〜)

				if (strpos($orderByColumn, '(') !== false) {
$orderByClause[] = $orderByColumn;
continue;
}

というわけで、超場当たり的な処置としては、CriteriaでaddAscendingOrderByColumnにbigintなカラムを指定する場合は、下記のようにします

$c->addAscendingOrderByColumn('('.GroupPeer::DISK_USAGE.')');

これでいいのか……とりあえず動いている

よし飯食いにいくぞー!

_ [diary] Google TrendsはAlexaより役立つかも

というわけでも俺も検索してみました。試しにmixiを他海外のメジャーSNSと比較。やっぱりmyspaceはすげー。2000万人以上だもんなぁ

画像の説明

あああ

_ [develop][symfony] symfonyのsfConfigで取得可能な値一覧(cheatsheet)

sfConfig::get('')で何がとれるんじゃいってことでsfConfig::getAll()の内容を吐き出してみた

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

Before...

_ very young teen [akr5 We made the beast with three backs six arms and six ..]

_ milf hunter har [akr5 Now had started its own work our hips and bodies buc..]

_ chubby tits [akr5 Two of the girls slept. Two of the girls slept. Two ..]

_ free pussy gall [akr5 I awkwardly moved into position as i could run no mo..]

_ oversized clito [akr5 We made the beast with three backs six arms and six ..]


2006-05-12

_ [diary][osx] PowerBookにX11とgimpを入れてみた

X11はTigerのインストールCDから。portsから入れようか迷ったんだけど、X11のビルドって長いし、なんかOS付属の方が安心できるから…で、そのあとgimpをインストール。一応、gimpやghostscriptなどX11を使うアプリケーションはportでインストールしようとすると、依存するX11もインストールしようとします。しかしOS付属のX11を入れると、Darwin portsのX11はインストールされません。ちゃんとライブラリがあるかどうかチェックしているんだね、インストール済みのportsだけじゃなくて。ってわけで、

 powerbook ~$ sudo port install gimp

するだけで終わり。20分ぐらいでbuild、install完了。ちょっと写メに説明付けたしたかっただけなので、gimpほど大きなレタッチソフトを入れる必要はなかったのだけどね。一応、入れたらこんな感じ!

_ [diary][car] 車のエンジンオイルと添加剤のホームページです。

わけあって、車のエアコンコンプレッサーについて調べていたらこのページにたどり着いたんだけど、内容ケインコスギ!!かなり参考になった。


2006-05-14

_ [develop][osx] darwin portsのアップデート

Darwin ports自身や他ツールなどやPorts Treeを最新版に

 g5$ sudo port -d selfupdate

もしくはPorts Treeだけを最新にする場合は

 g5$ sudo port -d sync

そしてアップデート

 g5$ sudo port upgrade installed

php4とphp5を入れている場合は同時にupgradeするのがうまくいかなかったりするので、そういった場合は

 g5$ sudo port upgrade installed and not php4*

した後にphp4だけをupgradeするなどという回避方法が必要。だったはず…

_ [diary] カレミュー、日本最古の「カエル肉入りカレー」を発売

カエルカレー食ってみたい♪カエル肉まだ食ったことない。しかし2日だけ限定かぁ。混みそうだな

_ [develop][osx][php] HTML_AJAXを使ったリアルタイム進捗表示アップローダー

phpプログラマーならご存知の通り、phpではpostされたデータを生で解析できないため、アップロードの進捗状況などを計るようなことはできません。そこで、アップロードデータの進捗が確認できるようにするためのパッチがここで紹介されているHTML_AJAX upload progress meter。エクステンションをインストールするのですが、あらかじめphpにパッチをあてる必要もあります。パッチはphp-5.0.3で動作確認済みとありましたが、今回php-5.1.4でも普通にあてることができました。しかし肝心なextensionの方がMac OS X Tiger (10.4.6)ではすんなりコンパイルできなかったので、一応ここに今回行ったプチハックを書いておきます。コンパイルを行うと以下のようなエラーがでます(ちなみにRHEL3やFC5ではでませんでした)

 g5 $ make
...省略
...
/Users/k_ozaki/tmp/upload-progress-meter-v4.1/upload_progress_meter/upload_progress_meter.c:334: error: static declaration of 'check_identifier' follows non-static declaration
/Users/k_ozaki/tmp/upload-progress-meter-v4.1/upload_progress_meter/upload_progress_meter.c:128: error: previous implicit declaration of 'check_identifier' was here
make: *** [upload_progress_meter.lo] Error 1

なので、こんな修正を。

 g5$ diff -uN upload_progress_meter.c.orig upload_progress_meter.c
--- upload_progress_meter.c.orig 2006-05-14 17:50:11.000000000 +0900
+++ upload_progress_meter.c 2006-05-14 17:56:47.000000000 +0900
@@ -330,7 +330,7 @@
return selected;
}

-static int check_identifier(char * identifier)
+extern int check_identifier(char * identifier)
{
char *c;

これで、とりあえずコンパイルが通るように。ただこれが正しい修正方法なのかは不明なのでcに詳しい人がいたらツッコミよろしくお願いします。で、そのほかドキュメントが整備されていない部分が多々あったので、それらについてもここでメモ。まず、**_trackingってなっているところは**_meterに変更する必要がある。たとえば、upload progress barを使うアプリケーションではhttpd.confなどでphp_valueを設定する必要があるのだが、ドキュメントには以下のように書かれている

    php_value upload_progress_tracking.store_method "file"
php_value upload_progress_tracking.file 1
php_value upload_progress_tracking.file.filename_template "/tmp/uploadbar/upl_%s.txt"

これは下記のように書き換える必要がある

    php_value upload_progress_meter.store_method "file"
php_value upload_progress_meter.file 1
php_value upload_progress_meter.file.filename_template "/tmp/uploadbar/upl_%s.txt"

で、もちろん、

 g5$ sudo mkdir /tmp/uploadbar
g5$ sudo chmod 1777 /tmp/uploadbar

も必要。で、最後にphp.iniにupload_progress_meter.soをロードするように修正

extension=/opt/local/lib/php/extensions/no-debug-non-zts-20050922/upload_progress_meter.so

symfonyから使えるようにしたのだけど、サンプルはちょっとコードをまとめてから公開します。

以前にajaxを使ってデータアップロードや時間のかかる処理の進捗バーを出すように作ったのだけど、それがmega uploadっていう奴を流用して、アップロードする先はperlのcgiだったりして仕組みがかなり複雑になってしまっていた。今回はpure phpな実装なので、かなりいいよ♪

あ、Darwin Portsで5.1.4に上のpatchを有効にする場合はdist filesの中にパッチをおいて

sudo cp ~/tmp/upload-progress-meter-v4.1/php-patch/patch.upload-progress-callback-v4.1-for-php5.0.3.txt /opt/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/www/php5/files/

あとはPortfileの中をちょっと修正。configureの前にこんな感じでpatch処理を追記

                port:freetype

patch {
system "cd ${worksrcpath} && patch -p1 < ${portpath}/${filesdir}/patch.upload-progress-callback-v4.1-for-php5.0.3.txt"
}

configure.args ?
--mandir=${prefix}/share/man ?

_ [diary][osx] Q

便利そうなのでメモ

_ [develop][osx] Building Universal Binaries from "configure"-based Open Source Projects

configureを使うアプリケーションからユニバーサルバイナリーを作る方法。intel macに移行する中、一応これから必要となりそうなの技なのでメモ。

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

_ Weatherburn Solms [ * * * * * * * * * * * * * * * * * * * ..]


2006-05-17

_ [develop][osx] Chicken of the VNC

WindowsマシンでデバッグするためにVNC環境をセットアップ。なんだか色が変なんだけど、こんなもんだっけ?VNCって。すげぇ久しぶりに使ってみたけど…やっぱり動きちょっとストレスフルだね。Windows上のIEでブラウザーの画面を触りながらローカルのMac上でコーディングできるという点ではKVM(CPU切替)でいちいち切り替えるよりかは全然効率良い。しかし今回のプロジェクト、prototype.jsでfirefoxをメインのデバッグ環境として作ったものの、ちゃんとWindows IEでも動くね〜。感心。ってWindowsで動く事が大前提なので感心している場合じゃないけど。動いてよかった♪

それと、chicken of vncはportsでインストールできなかったので(謎)sourceforgeからバイナリーをとってきてインストール。

screenshot

_ [develop][windows] fixmbrでXPのbootloaderを再インストール

LinuxとWindowsが同じディスクに入っているマシンでLinuxのパーティションをWindows用にフォーマットしたらもれなく起動しなくなりました♪linuxのboot loaderであるgrubを使っていたので、設定がおかしくなったので当然ですが…

んなわけで、Windows XPの復旧モード(インストール画面でR)でXPのboot loaderをMaster Boot Record(MBR)に上書きする事に。昔は

 fdisk /mbr

だったんだけど、今は

 fixmbr

ってコマンドになったんだね。なんか、実行すると現在MBRにはWindows以外のboot loaderが入っていてこのコマンドを実行すると既存のパーティションが全て読めなくなる可能性がありますみたいなすんげー怖い事言われつつも起動しないんじゃ意味ねーっつうことで余裕でレッツゴー!ちゃんと起動するようになりマンタ<そういえば今日しょこたん笑っていいとも出演。ギザカワユス

ひさびさにウィンドウズいじったぜ〜。上のVNCインストールしたマシンがあまりにも遅すぎるので、違うウィンドウズマシンでデバッグすることに。そしたら起動しなくなってたって落ちなんだけどね(前回Linuxを削ったため…)

_ [develop][windows] Visual Studio 2005 Express Edition

無償提供が永久的になったということでインストールしてみた

screenshot 2

感想はまた後ほど…


2006-05-18

_ [diary][gourmet] 大塚 コスプレ好き焼き肉 萌めいど

久しぶりのgourmetネタなんじゃない?と自分でもちょっとびっくり。いや、実はgourmet系は別建てで写メ版日記を用意しようと思っているんだけど、開発が間にあっていない…あ、で本題。会社の近くにコスプレ好き焼き肉ってお店ができたので行ってみた。あんまりこういうの興味ないんだけど、会社の近くにあるっていうのと、一応mixiの大塚コミュニティの管理人もしているということもあってレポりに行ってみた

ちなみにこのお店の第一号店は神田にある「コスプレ焼き肉OK牧場」だそうな

_ [diary] Yahoo!360のコミュニティ機能がぶっ壊れている

いまYahoo!360のコミュニティを見に行ったら、こんな状態に…参加者一覧が自分のプロフィールアイコンで埋め尽くされている!!参加者人数は4人なのに。


2006-05-21

_ [diary] 気になるもの

画像の説明

画像の説明

画像の説明

_ [diary] 結婚式ラッシュ終わりました

K結婚式@新橋
Tちゃん結婚式@姫路
K結婚式@長野
O結婚式@お台場。どれもとても素敵な結婚式でした。それにしても30にもなると涙腺ゆるくなるね〜

04871 04872 04873 04874

04875 04876 04877 04878

04879 04880 04881 04882

04883 04884 04885 04886

04887 04888 04889 04890

04891 04892 04893 04894

04895 04896 04897 04898

04899 04900 04901 04902

04903 04904 04905 04906

04907 04908 04909 04910

04911 04912 04913 04914

04915 04916 04917 04918

04919 04920 04921 04922

04923 04924 04925 04926

04927 04928 04929 04930

04931 04932 04933 04934

04935 04936 04937 04938

04939 04940 04941 04942

04943 04944 04945 04946

04947 04948 04949 04950

04951 04952 04953 04954

04955 04956 04957 04958

04959 04960 04961 04962

04963 04964 04965 04966

04967 04968 04969 04970

04971 04972 04973 04974

04975 04976 04977 04978

04979 04980 04981 04982

04983 04984 04985 04986

04987 04988 04989 04990

04991 04992 04993 04994

04995 04996 04997 04998

04999 05000 05001 05002

05003 05004 05005 05006

05007 05008 05009 05010

05011 05196 05197 05198

05199 05200 05201 05202

05203 05204 05205 05206

05207 05208 05209 05210

05211 05212 05213 05214

05215 05216 05217 05218

05219 05220 05221 05222

05223 05224 05225 05226

05227 05228 05229 05230

05231 05232 05233 05234

05235 05236 05237 05238

05239 05240 05241 05242

05243 05244 05245 05246

05247 05248 05249 05250

05251 05252 05253 05254

05255 05256 05257 05258

05259 05260 05261 05262

05263 05264 05265 05266

05267 05268 05269 05270

05271 05272 05273 05274

05275 05276 05277 05278

05279 05280 05281 05282

05283 05284 05285 05286

05287 05288 05290 05291

05293 05307 05308 05314

05315 05316 05317 05318

05319 05320 05321 05322

05323 05324 05325 05326

05327 05328 05329 05330

05331 05332 05333 05334

05335 05336 05337 05338

05339 05340 05341 05342

05343 05344 05345 05346

05347 05348 05349 05350

05351 05352 05353 05354

05355 05356 05357 05358

05359 05360 05361 05362

05363 05364 05365 05366

05367 05368 05369 05370

05371 05372 05373 05374

05375 05376


2006-05-22

_ [diary] music.mixi.jpが出来てる

だそうな。myspaceみたいになるのかな。でも、アメリカと違って日本のJASRACは厳しいから、あんまり期待できないのだけど。某社にいるとき思った。いくら売るインフラ作ってもコンテンツがねぇ。着メロとかはすごいけど。あれは「着メロ」だからなのかなぁ。

_ [develop][osx] zshに移行

遅ればせながらzshデビュー。setoptの項目が多すぎ。scpのネットワーク越しの保管補完とか、configureオプションの補完とか便利すぎ。

てゆーかPROMPTにホスト名を出し、RPROMPTにカレントディレクトリを出しながらも、タイトルバーにもホスト名@カレントディレクトリ出している俺って…質小杉。タブには最後に実行したコマンドを。だいたいそれでどのタブがどの作業やってたスクリーンか分かるので。PROMPTとRPROMPTはシンプルにしてもいいのだけど、ターミナルが対応していないときとか、コンソールで作業するときとか(そんなことこの時代にほぼ無いだろ<X標準)、情報ないと不便だからな。じゃタイトルバーには何を出せば便利?

_ [develop][osx] gimpじゃなくてgimpshop

つい先日powerbookの方にgimpをインストールしたのだけど、g5の方にはgimpshopを。基本的にはgimpなんだけど、メニューの構成などがphotoshopライクになっていてphotoshop慣れしている人はこっちのほうが使いやすいかも?俺的には起動アイコンとかもろもろそろってパッケージングされているからいいなと思って入れただけなんだけどね。


2006-05-23

_ [diary][osx] Fast OS Switching on MacBook

OSX上でparallelsという仮想PC(PCじゃないけど。でもIntelアーキテクチャだからPCか?どうでもいいや)を利用してWindowsとLinuxをインストール。でVirtueという仮想デスクトップを利用してキーボードから切替。かなり魅力的な環境だね。YouTubeの映像を見る限りそんなに処理速度も遅くないようだし。

_ [diary] DS Lite

ヨーロッパで黒発売。カッコヨスギる

画像の説明


2006-05-24

_ [diary][osx] Mac OS X on intel PC(not Apple)

自作PCにIntel版OSX(Tiger)をインストール。意外とあっさりインストールできてしまい少々拍子抜けではあります。ま、これも先人達のハックのおかげなわけなんですが。まだインストールしただけであんまり使ってないけど、とりあえずネットワークカード認識しているだけでも大きい。既に作業はリモートからやってますw

画像の説明

新しいVAIO Uとかに0SX86入れたらすごいカッコイイかも!そんな人いたらまじ惚れちゃうね♪

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

_ hydroxycut with ephedra [denver ephedra attorney. lipodrene with ephedra. denver ep..]


2006-05-25

_ [diary][osx] DVDの焼き方が分からない

とりあえずデスクトップが汚くなってきたので、いらないファイルをバックアップすることに。で、OSXでISOファイルってどうやって作るのかよく分からないので、とりあえず

g5$ sudo port install dvdrtools
g5$ rehash
g5$ cd tmp/x86-tiger
g5$ mkisofs -o x86-tiger.iso x86-tiger.tar.bz2

とかしてdvdrtoolsをゲット。その後そのままdvdrecordで焼こうとしたがデバイスが見つからないっていうエラーが。いま仕事立て込みマックスなため深追いできず。とりあえずディスクユーティリティってやつを立ち上げてDVDを焼く(弱っ

_ [diary][osx] SmacBook Pro

MacBookはすげ〜な〜。こんな事もできるのかよ。Smacとは英語で「叩く」って意味なんだけど、これはまさにMacにSmacすると仮想デスクトップが切り替わるという仕様にしたもの。MacBookに搭載さているモーションセンサーを使って、それに対する動作を仮想デスクトップの切替に割り当てている。しかもperlスクリプトで。イカスね〜。俄然MacBook欲しくなってきた。次のバージョンまでにお小遣いためておかないと。


2006-05-26

_ [diary][osx] 【デモ動画】MacBookの仮想ディスクトップをモーションコントロールで切り替え

MacBookを叩きたくないって人には、こちらをオススメします。傾ける事によって仮想デスクトップが切り替わるように実装されています。MacBookそのものをマウスにするとかウケルね。任天堂Wiiみたいなのも作れちゃうんじゃん。リモコン(MacBook)重すぎって話だけど…

_ [develop][symfony] How to achieve persistent sessions with cookies?

symfonyで、クッキーを使ってログイン状態を永続化する方法


2006-05-30

_ [diary][skate][video] YouTubeでタグによるRSSフィードを取得する方法

最近、Google VideoYouTubeのコンテンツが充実しすぎてかなり重宝している。しかも!RSS配信でタグが指定できるとは…使わない手はないです。とりあえず、livedoor Readerにこのあたりを追加

http://www.youtube.com/rss/tag/skateboard.rss
http://www.youtube.com/rss/tag/sk8.rss
http://www.youtube.com/rss/tag/%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%88%E3%83%9C%E3%83%BC%E3%83%89.rss
http://www.youtube.com/rss/tag/hoshino.rss
http://www.youtube.com/rss/tag/%E3%81%BB%E3%81%97%E3%81%AE.rss

スケートボードのビデオって、スケートボードが上手いとか下手とか関係なく面白いからいいよね

YouTubeの動画には、「Embed」というフィールドも用意してあって、そこにある文字列を日記やブログにコピーすると、当該ビデオを簡単に貼付けたりすることもできる。オモシロイ

_ [diary] パソコンは天からのまわりもの

使わないと増えないぜ!じゃなくて、とある会社の社長さんから、テスト用のPCを2台ほど借りていたのだけど、その案件が終わってもず〜っと借りっぱなしの借りパク状態だった。で、これはさすがにまずいと思って問い合わせたら邪魔じゃなければそのまま使って頂いて結構ですだって!!てことで、会社のテスト用サーバに。丁度そのタイミングでスケート友達のKGがパソコンを始めたいと言っていたので一つプレゼントすることに。先週、先々週は彼の家にいっていろいろセットアップなんかを手伝ってあげたり。

するとなんと昨日その社長さんからメールがあり、同じようなPCが3台〜5台まだありますけどどうですか?ってメールが!!やっぱりいい事するとその分自分に戻ってくるね。最近ロードバランシングとMysql5.1でのディスクによるクラスタリング(←新機能!)をテストしたかったところなので丁度いい〜

_ [skate][video] 成田市スケートボード愛好会 予告


2006-05-31

_ [develop][video][ajax][symfony] AJAXなサンプルをYouTubeにあげてみた

見所はこんな感じ?以下の動作が画面遷移を行わずに実行されるので、操作性はかなり良い感じになっています

  • アップロードボタンで動的なファイル選択
  • アップロード中の進捗表示
  • アップロード後の残容量パイグラフ更新
  • アップロードしたファイル名の動的な編集
  • ロック、☆機能、ラベル機能などWEB2.0要素
  • 現段階では削除は遷移してしまいます
  • 動画には無いがページング、件数表示更新もAJAXで


トップ 最新
合計: 2141741 今日: 805 昨日: 1209 (from 2003/11/04)
PROFILE

Kyoichi Ozaki

CONTACT



SPONSORS




最近のツッコミ
1.KNG (Nov 20. 21:22)
2.jantheman (Nov 20. 15:25)
3.yossyy+ (Nov 20. 12:39)
4.Fish&Chips 代表 YASUO (Nov 20. 07:08)
5.オショー (Nov 19. 23:55)
6.ようへい (Nov 19. 20:59)
7.hgd (Nov 19. 20:28)
8.akiya (Nov 19. 17:09)
9.MITSU (Nov 19. 16:29)
10.YU (Nov 19. 16:27)
11.kyoichi (Nov 19. 11:00)
12.KJO (Nov 18. 21:45)
13.kyoichi (Nov 18. 16:44)
14.hhiyyy (Nov 18. 13:15)
15.Twoyoshi (Nov 17. 22:49)
16.Kyoichi (Nov 16. 02:43)
17.Kyoichi (Nov 16. 02:41)
18.Kyoichi (Nov 16. 02:39)
19.Kyoichi (Nov 16. 02:37)
20.Kyoichi (Nov 16. 02:35)