2008-01-01から1年間の記事一覧

現在閲覧しているページをはてブしている「お気に入りユーザ」を表示するGreasemonkey

あったらいいなーって思い、作ってみました。機能概要は以下の通りです。 機能 現在閲覧しているページをはてブしている「お気に入りユーザ」を表示する ついでに、自分がはてブしているかも表示する 導入するとこんな感じに、左下にお気に入りユーザのfavic…

URL からページのタイトルを引いてくるスクリプト

ちょっと必要になって書いてみた。 リダイレクトを追うようにしている 例外の処理の仕方がまだまだ汚い fetch_title.rb require 'net/http' require 'net/https' require 'uri' require 'nkf' Net::HTTP.version_1_2 USER_AGENT = 'Mozilla/5.0 (Macintosh; …

特定のカラムの編集を禁止したい場合のvalidation

あるテーブルのカラムがシステムのみによって編集される値で、ユーザから編集させたくない場合、そのvalidation が欲しいと思った。 例えば、はてなブックマークのエントリーのタイトルは、ユーザは編集できず、ページのtitle タグの内容で固定したいみたい…

プログラマと仕事

最近、仕事に当てる時間が多くて、Blog が更新できてない・・・。はてダ初めて以来更新していない期間が一番長いです(⊃д⊂)更新が止まると、「最近勉強してないなぁ」っていう感じが押し寄せてきてしょんぼりします。 残業続きだったこともあり、仕事について…

新はてなブックマークでもMinibufferBookmarkCommand を使う

なんか、リニューアルされたらMinibufferBookmarkCommand 経由ではてブできなくなった。「100%」とかでるけど、実際にはブックマークされない( ゚д゚) ブックマークレットだと、タグの[]を打つのが面倒なので、MinibufferBookmarkCommand を修正。一応動くよ…

日本人は頑張りすぎなのか

今日昼頃テレビを見ていたらちょっと興味があるものがやっていた。「東大の研究室に所属するあるセルビアから来た人」の話。 日本の宗教に関して学んでいるという。「日本ではクリスマスを祝い、亡くなればお墓に入り等宗教がMix している」と言う。そして、…

find_by_sql を使う際のTips

読んでいたコードで面白いテクニックを使っていたのでメモ。 Rails のActiveRecord のfind 系メソッドは優秀だと思うけど、自分でSQL を書きたい時があると思います。そこで、find_by_sql を使うわけですが、その際、大規模なSQL を書く場合のTips です。 環…

「クックパッド」のものづくりセミナーに行ってきたまとめ

昨日、ウェブキャリアさんが主催する月間524万人が利用する食のインフラ、「クックパッド」のものづくりセミナーに行ってきました。 クックパッドと言えばRails での大規模リニューアルがニュースになりました。また、大規模開発には向かないと言われたこと…

belongs_to アソシエーションの動作を読む

以下の動作が実際どのような動きをしているかメモ。 class User < ActiveRecord::Base belongs_to :club end User.column_names => ["id", "club_id" ....] user = User.find(:first) user.club => #

IME 関連のキーバインドを変更して快適に編集する

Windows のIME 関連のキーバインドって物凄い使いにくいですよね!EeePC とかでWin 使うと耐えられない。 IME のON/OFF を切り替えるキーの位置が遠すぎ IME のON/OFF がトグル 英字を入力しようとして「半角/全角キー」押したら実は元々IME OFF でまた押す…

イテレータを便利にするenum_for

ruby 1.8.7 からenumerator が組み込みで使えるようになった。enum_for がデフォルトで使える。 enum_for Enumerable に定義されているメソッドの多くはinclude 先のクラスのeach メソッドを使って実現されている。 例えばmap の実装は以下のようなイメージ…

growlnotify が警告だす

growlnotify を使うと、毎回以下のような警告がでる。 growlnotify -m "test" 2008-11-09 03:56:17.817 growlnotify[727:10b] could not find local GrowlApplicationBridgePathway, falling back to NSDNC 動作には影響ないですが、毎回でてくるので調べて…

Fork: Twitterのタイムラインを監視してキーワードにマッチしたらGrowlするRubyスクリプト

Twitterのタイムラインを監視してキーワードにマッチしたらGrowlするRubyスクリプト - 今日覚えたことが面白そうだったので、参考にして書いてみた。 機能 タイムラインを見てターミナルに表示 キーワードを設定して、キーワードにマッチしたつぶやきをGrowl…

Mac のコマンドを強化するGNU coreutils

Mac(BSD 系) とGNU Linux の間では実装が異なるコマンドがあります。例えばmv。 GNU Linux のmv -t オプションでターゲットディレクトリを指定できる これは、xargs とコンボする際に必要。例えば、数字をファイル名に含むファイルをroutine に移動した場合…

rails + lighttpd + fastcgi + logrotate が上手く機能しない

今動かしているアプリケーションで起っている問題です。アプリケーションのログが肥大化するのを防ぐ為に、logrotate でログのローテーションを設定しています。 しかし、ローテーションしたあとはログが書き込まれないという問題が起こってしましました。 …

cpan でBit::Vector をインストールしようとしたらこけた

CPAN になかなかなじめない。大抵インストールこけるから。CPAN がんがん使えるとかっこいいな〜。 ということで、今回もインストールに失敗したのでメモ。 環境 $ cat /etc/redhat-release CentOS release 5.2 (Final) エラー内容 $ sudo cpan -i Bit::Vect…

swatch でログを監視しよう

swatch とはログの監視に使用できるツールで、perl で書かれています。ログをリアルタイムで監視し、特定の文字列が書き込まれたらメールで管理者に通知することができます。 メールで通知をする以外にも、コンソールにメッセージを出したり、特定のコマンド…

mixi コミュニティがやばい使える

mixi にあるコミュニティ機能。全然使ってませんでした。mixi で情報収集という発想はそもそもなく、飲み会企画くらいにしか使わなそうだな〜って思ってたんです。 mixi コミュニティは使える! mixi コミュニティは使えると思ったきっかけは今日の朝の会話…

Mac にphpMyAdmin を入れる手順

MySQL を使って開発している人ならお世話になるであろうphpMyAdmin。なんと、最近まで使っていませんでした。先輩が使っているのを見てとっても便利そうだったので、インストールしました。その手順をメモりります。 phpMyAdmin って何 Wikipedia から引用。…

ruby の再インストールからrails のインストール、テストまでを行うシェルスクリプト(作業メモ)

注:このシェルスクリプトは、僕の環境で動いたものです。汎用的には作られていません ruby 1.8.5 で開発されていたアプケーションがあって、今まで1.8.6 でいじっていたのですが、やはり環境はあわせようと思ってあわせました。その際のメモです。 手作業で…

ひがやすを飲み会に行ってきた!

昨日は、第一回ひがやすを飲み会やるよ - ひがやすを blogで企画されたひがやすを飲み会に行ってきました。 id:higayasuo さんはもちろんのこと、id:hyoshiok さんとかも来ていてびっくり。あと、向かいで第十.五回 - java-ja 第一回チキチキ 飲みにいったら…

rsync を使ってローカルのファイルをバックアップしよう

最近勘違いしていたことが多くて困り気味です・・・。rsync ってローカルのバックアップにも使えるんですね。「r」というからにはリモートマシンとローカルのデータを同期させるかと思ってました。 rsyc は差分バックアップできるので、全てをコピーするより…

kill コマンドって、プロセスを終了させるものかと勘違いしていた

今までは、「kill すればプロセスは終了する」って思ってたので、例えば、以下のようなコマンドでデーモンプロセスが終了しないのを不思議に思ってた。 $ kill [デーモンのプロセス番号] (いや、man 読んどけよって話なんですが・・・) kill で終了させら…

Linux とWindows では「ファイルを消す」際の挙動が異なるんだ。気をつけろ

これは、ファイルシステムの実装の違いによるものですが、Linux とWindows では、「ファイルを消す」際の挙動が以下のように異なります。 Linux ファイルが使用中であっても、ファイルを削除(rm)することができる Windows ファイルが使用中の場合、ファイ…

異なるバージョンのrails をアプリケーション毎に使う方法

これは、自分のマシンに入っているrails は2.0.1 だけど、特定のアプリケーションは1.0.0 で動かしたいという時の解決方法。 方法1. vendor 以下にrails をfreeze する この方法は、アプリケーション内にrails のソースを入れてしまう方法。方法は以下を参考…

Mac(BSD 系) のwc とlinux(GNU 系) のwc は行数の数え方が違うのね

mac C

最近はlinux の勉強をしています。サーバ触ることになったからというのと、プログラミングの基礎知識が足りないと感じたためです。 プロセスとか、ストリームとか、その辺りの理解も曖昧だったしね。青木さんの「ふつうのLinux プログラミング」で勉強してま…

autotest の導入方法

前々から使いたかったautotest を導入したので手順を記録します。OS はMac OS X(10.5.5), ruby は1.8.7です。 なお、参考にしたのは「まるごと Ruby! Vol.1(p.124~p.127)」です。 やること autotest のインストール aiutotest を使ってみる autotest のカ…

初めてのGreasemonkey の作り方(Slimtimer Report to Ticket)

初めてGreasemonkey を作りました!javascript は全然できないので(初めてのjavascript 4章まで読んだくらい)、その辺のソースを組み合わせて作りました。 どんな機能? Slimtimer というサービスがあります。簡単に言うと、タスクを登録して、タスクを行…

エンジニアの未来サミットのメモ

今日はエンジニアの未来サミットをust でずっと見ました。申し込みをすっかり忘れてたのは残念(⊃д⊂)パネラーのメンツが超豪華だったのでぜひとも行きたかったな〜。 ということで、印象に残った部分のメモを書きますよ! 第一部:アルファギーク vs. 学生−エ…

データベースにインデックスを作成する際のメモ

主に、既存のテーブルに貼る際に気をつけるポイント。 MySQL 構文 CREATE INDEX index_name ON table_name(column_name[, column_name2, column_name3]) ALTER TABLE table name ADD INDEX [index_name] column_name[, column_name2, column_name3] カラムの…