タグ

ブックマーク / secondlife.hatenablog.jp (17)

  • 川o・-・)<2nd life - Rails 1.0 -> 1.1 の ActiveSupport 変更点まとめ

    Ruby on Rails 1.0 までは AWDwR を読んで使い方が解ってる人も多いと思うのですが、1.1 以降でどんな詳細な機能が加わったのかはあまり知られてません。 そのために ActiveSupport の CHANGELOG を淡々と読んでまとめてみました。間違ってる可能性もあるのでそういう箇所があったらご指摘下さい。 Add CachingTools::HashCaching to simplify the creation of nested, autofilling hashes. [Nicholas Seckar] CachingTools::HashCaching という Hash を利用したシンプルなキャッシュ機能のモジュールが加わりました。このモジュールを利用したいクラスで extend して hash_cache :methodnameとすると、そのメソッドが

    川o・-・)<2nd life - Rails 1.0 -> 1.1 の ActiveSupport 変更点まとめ
  • 川o・-・)<2nd life - Rails の API を Hyper Estraier で全文検索

    http://rails2u.com/esearch/ http://rails2u.com/esearch/estseek.fcgi?phrase=Reloaded&perpage=10 (サンプル) 自分が作ったウェブアプリの中じゃ、一番利用していると言っても過言ではない http://api.rails2u.com/ 。Rails のクラスやメソッドのインクリメンタル検索は便利ですが、やはり全文検索もしたくなることがあります。 というわけで高速検索が可能で利用方法もお手軽な Hyper Estraier を設置してみました。驚くほど簡単に Rails API のインデックスは作成が終わり、設置も FastCGI 版を lighttpd で動かしてみましたがすんなりと。 というわけで html などの全文検索をやってみたい人は Hyper Estraier を使ってみるといいかもしれま

    川o・-・)<2nd life - Rails の API を Hyper Estraier で全文検索
  • 川o・-・)<2nd life - JavaScript や CSS の query に自動で最終更新時間をつける Rails Plugin

    最近いろいろなサイトで <script src="/javascripts/foo.js?1142509269" type="text/javascript"></script>や <script src="/javascripts/bar.js?v=2.3" type="text/javascript"></script>の記述を見るようになってきました。また CSS でも <link href="/stylesheets/foo.css?1142509300" media="screen" rel="Stylesheet" type="text/css" />といった記述もちらほら見かけます。 これは JavaScriptCSS を更新しても、ブラウザキャッシュが読み込まれているため、更新された JS ファイルなどがロードされない場合への対策です。上記のような最終更新時刻やバージ

    川o・-・)<2nd life - JavaScript や CSS の query に自動で最終更新時間をつける Rails Plugin
  • zsh + screen で端末に表示されてる文字列を補完する - 川o・-・)<2nd life:

    以前に入力したコマンドの履歴を覚えていて補完してくれるshellはあるが、 端末に表示されている文字列を補完してくれるshellは無いだろうか。 表示されている文字列を補完してくれるshellが欲しい とvimrc diaryに書かれてたのでzsh + screenで端末に表示されてる文字列を補完する方法を。.zshrcなどに # dabbrev HARDCOPYFILE=$HOME/tmp/screen-hardcopy touch $HARDCOPYFILE dabbrev-complete () { local reply lines=80 # 80行分 screen -X eval "hardcopy -h $HARDCOPYFILE" reply=($(sed '/^$/d' $HARDCOPYFILE | sed '$ d' | tail -$lines)) compadd -

    zsh + screen で端末に表示されてる文字列を補完する - 川o・-・)<2nd life:
  • 川o・-・)<2nd life - オブLOVE夜会第2弾「イマドキのJavaScript」

    http://kakutani.com/20051222.html#p01 http://rails2u.com/misc/imadoki/ (資料、キーボードのs, wでプレゼン操作可能) でゲスト講師してきました。参加者の皆さん、セッティングマネージャ兼幹事1.0の角谷さん、お疲れ様でした。 というわけでJavaScript, Ajax, prototype.js そしてGiza(オレオレJavaScript Framework inspired by しょこたん)について放談ということで緩い感じにだらだらとお話しをしてきました。その中でとりわけGiza.Eventsについて関心を持たれた方が多かったようなので、Giza.Eventsについての説明をちょっと。 Giza.Eventsは主に三つの機能があります。 giza:a, giza:c などのgiza: 接頭辞つきの拡張属性を利用

    川o・-・)<2nd life - オブLOVE夜会第2弾「イマドキのJavaScript」
  • Web2.0 アプリケーションライク な背景画像を生成する Background Image Maker

    http://lab.rails2u.com/bgmaker/ ウェブサイトのデザインをしているとき、自分はCSSを利用します。そのCSSを書いていて、「ああ、こんな背景画像がほしーな」と思うと、今までは画像編集ソフトでちまちま作ってSCPでサーバにアップして確認し「いやここはもうちょいこうした方が」とまた少しだけ修正してアップして…という繰り返し作業を行ってました。 しかしその作業単調が面倒になってきたため、簡単にWeb2.0っぽいアプリケーションでよく使わるような背景画像をWeb上から作成できるツール、「Background Image Maker」を作ってみました。下のような背景画像を簡単に作成ができます。また先日このページを現在のデザインにリニューアルしたのですが、今使っている背景画像も全部 Background Image Maker を使って作成してます。 使い方は値を適当に弄

  • 川o・-・)<2nd life - MochiKit

    http://mochikit.com/ http://mochikit.com/screencasts/MochiKit_Intro-1.html 名前はご存じの人も多いと思われるJavaScriptライブラリMochiKit。自分もJavaScriptライブラリはprototype.js + scriptaculousで決まり、みたいな感じでMochiKitには全然注目してなかったのですが、screencast見ると凄さが解るとtypoさんのCLONに書いてあったので見たらスゲーと思いました。まだ見てない人は必見! prototype.jsがクラスベースのOOPみたいなことをしてライブラリを形成してるとしたら、MochiKitJavaScriptらしく良い意味でどんどんグローバルな関数を定義して使い勝手を向上させてます。また標準のexampleに入ってるinterpreterがブラウ

    川o・-・)<2nd life - MochiKit
  • 川o・-・)<2nd life - prototype.js with mousehweel event

    http://rails2u.com/misc/wheel_event/ prototype.jsではイベントハンドラの登録をEvent.observeに追加することにより行えます。これはWinIEだとelement.attachEvent, Firefoxだとelement.addEventLisnerと登録用の関数が違う互換性を吸収してくれるので大変便利です。しかし、ホイールイベントは少々特殊なため、通常のEvent.observeでは上手く登録が行えません。 ホイールイベントをwebアプリケーションで上手く使うとユーザビリティの向上が見込める*1ので、簡単にホイールイベントを登録できるEvent.observeを作ってみました。上記URL先のwheel_event.jsをprototype.jsを読み込んだ後に読み込むことによって、mousewheelイベントを扱えるようになります。

    川o・-・)<2nd life - prototype.js with mousehweel event
  • prototype.js の Ajax.Responders.register - 2nd life (移転しました)

    最近のprototype.js(1.4_rc1かな?)から追加されたAjax.Responders.registerがかゆいところに手が届く感じで便利です。何をする物かと云うと、prototype.jsを使ってAjaxる場合、Ajax.Requestを通して通信を行います。そのAjax.Requestすべての通信開始時と終了時に任意のfunctionを登録できる機能です。早速 http://rails2u.com:8008/ (safariリンククリック注意!ブラウザがハングアップするという話) でRESTWikiに組み込んでみました。これで裏で非同期に通信を行ってるとき、ブラウザの右上に視覚的に'loading...'の文字が表示されます。 実装方法は非常に簡単で Ajax.Responders.register({ onCreate: function() { if($('busy')

    prototype.js の Ajax.Responders.register - 2nd life (移転しました)
  • 川o・-・)<2nd life - 第0回 Rails勉強会@東京

    http://wiki.fdiary.net/rails/?Rails%CA%D9%B6%AF%B2%F1%A1%F7%C5%EC%B5%FE 先日の11/05日に第0回 Rails勉強会@東京に行ってきました。急な応募にもかかわらず29名全員が欠席無しで参加とかすごい! 感想はいろんな人が書いているので、自分が当日発表したpluginだけ公開します。 http://svn.rails2u.com/public/plugins/trunk/ ActiveHeart 主に日語関係で便利じゃないのかなぁ、といったものが入ってるpluginです。今現在は ActiveRecordMessagesJa TransSid が入ってます。ActiveRecordMessagesJaはくまくまーさんのValidationsを参考にメッセージ周りのローカライズを行ってます。このpluginを入れて cl

    川o・-・)<2nd life - 第0回 Rails勉強会@東京
  • MySQL 文字コードの自動変換を回避するオプション - 2nd life (移転しました)

    http://www.mysql.gr.jp/mysqlml/mysql/msg/9530 で話題になっていたように、 ver. 4.1以降、クライアント/サーバー間でキャラクターセットが自動的に 変換されるようになったことに伴い、多くの方が文字化けといった問題に 悩まされていたかと思います。 この点については開発側に改善を要求してきましたが、4.1.15にて "--skip-character-set-client-handshake" というオプションが導入されました。 http://dev.mysql.com/doc/refman/4.1/en/news-4-1-15.html このオプションを指定することにより、クライアントのキャラクターセットが サーバー側のキャラクターセットに合わせて自動的に設定され、 自動変換が発生しないようになります。特にver. 4.0から移行する際に、

    MySQL 文字コードの自動変換を回避するオプション - 2nd life (移転しました)
    Stingray
    Stingray 2005/10/31
  • 川o・-・)<2nd life - Railsの最適化に関する10の事柄

    http://weblog.textdrive.com/article/175/rails-optimizing-resource-usage TextDriveで、Optimizing Rails Resource Usageという記事が公開されました。Railsの最適化について10の事柄を挙げています。興味がある人は原文を読んでもらうとして、ここでは軽くサマリー(意訳)を。間違っていたらコメント歓迎! 1. 最小限のFastCGI 開発には1つのDispatcherで十分。A list Apartでも4つのFastCGI Dispatcherで動かしてて速くてloadも0.01だよ。あとFCGIが増えるとDBコネクションも増えるからね。 2. キャッシュを使う Dispatcherを通さずキャッシュを使う。Railsではとっても簡単にキャッシュ使えるし、期限設定も楽だし。lighttp

    川o・-・)<2nd life - Railsの最適化に関する10の事柄
  • MySQL Activity Report - 2nd life (移転しました)

    http://gert.sos.be/en/projects/mysqlar/ MySQLの統計をとって情報表示やグラフを表示してくれるソフトウェア。daemonとして動かして一定間隔でMySQLにクエリーを送って情報取得して記録してるっぽい。動作DEMO見ると結構良くできてるみたいなので早速使ってみたよ。 いろんな統計がとれるのはうれしいなぁ。a valuable database tuning aidつってるだけあってTurning Tipsとかも表示されるし!max_connectionsの調整や重いQueryの調整がやりやすくなりそう。

    MySQL Activity Report - 2nd life (移転しました)
    Stingray
    Stingray 2005/10/03
  • module-assistant - 2nd life (移転しました)

    debian sargeから導入されたmodule-assistantがめっちゃ便利!久しぶりにdebian使っててスゲーって思ったよ。これを使えばあっという間にカーネルモジュールのdebパッケを作ってインストールしてくれる。例えば # module-assistant a-i fuse shfs これだけでカーネルモジュールのfuseとshfsを作ってインストールしてくれて、かつutil系パッケージも入れてくれる。いままではaptで入れたカーネルモジュールのソースを/usr/src以下で展開してうんたらかんたら行ってdeb作ってインストールという、ある程度はお手軽だけど結構めんどくさかったことがコマンド一発で。素晴らしい。 詳しい利用方法は http://debian.fam.cx/index.php?Software#content_1_4 なんかに。

    module-assistant - 2nd life (移転しました)
  • 川o・-・)<2nd life - Visitors, a fast web log analyzer

    http://www.hping.org/visitors/ 高速なapache log analyzer。公式には No installation required, can process up to 150,000 lines of log entries per second in fast computers (20MB/s with my log files average length). と、一秒で150,000行さばけるとうたっている。うちの環境で実際に10万行ほどのログをわせたところ1秒ちょいと非常に高速にさばけた。出力ではhtml(サンプル)だけならずテキスト(サンプル)も選べる。 ログアナライザとして必要な機能は一通りそろってるし、Googleからの検索キーワードも表示できてGood。日語検索ワードだとeuc-jpやsjisやutf-8だったりするのでnkfをか

    川o・-・)<2nd life - Visitors, a fast web log analyzer
  • map.rails2u.com - 2nd life (移転しました)

    http://map.rails2u.com/ 郵便番号、または住所を元にgoogle mapsで表示するサービス。はてなマップとも簡易連携できる。 Rails 0.13から新しく導入されたautocompleteを使ってGoogle Suggestのような軽快なインクリメンタルサーチによるAjax入力補完が目玉機能!なので一回使ってみてね! あとはありそうで何故かGoogleMapsには無いホイールによる地図の拡大縮小機能とかー。

    map.rails2u.com - 2nd life (移転しました)
  • webアプリケーションテストツール seleniumがヤバすぎる

    http://selenium.thoughtworks.com/index.html JavaScriptを使い実際のブラウザを介してテストするseleniumがヤバすぎる。便利すぎ。Web案件なんつーのはほんと最終フェイズになってもMVCで云うモデルに当たる部分が「仕様変更」の一言によって変更されることも多々あって、そんなときは各種testが書き直しになったりする。んで最終で時間がない状態じゃtest書き直せる訳もなく人海戦術で無理矢理なんとか仕上げる、つーのがいまのWeb案件の大概の末路の気がするんだけどそれはおいといて。 このseleniumを使えば、簡単な記述で人間が実際にブラウザを操作してテストしている部分の大半である画面遷移、フォームの入力、ヴァリデーションの正否がなどが行える。つまりインターフェイスの仕様が変わらなければ延々とテストし続けられるわけだ。最後の受け入れテストの

    webアプリケーションテストツール seleniumがヤバすぎる
  • 1