blog.sowatchasayin

Rails etc.

RubyConf2010(1)

RubyConf 2010に参加しました。
Ruby界最大の国際カンファレンスです。
網羅的なレポートは書けないので、気になったトピックについてのみ漫然と記しておこうと思います。

Dave Thomas - Keynote
Dave Thomasの基調講演はRuby10年史、3つのチャレンジー自分とは違う誰かをインスパイアすること、自分達を多様化すること、レールを外れることーについてでした。

発表の中で気になったのは、オープンソースの世界の女性の少なさはコミュニティの文化に由来するところもある、という指摘。いわゆるハッカー文化/倫理の、自分たちは「メインストリーム」から外れた存在である、という自己定義の内に、女性をそのメインストリームとみなす価値観が含まれている、という指摘はもっともだと思いました。自分がコミュニティの価値観から外れる存在であった時の居心地の悪さは、恐らくこのブログを読んでいる人なら感じたことはあると思います。

そして、これは日本でも起こっている現象かと。
向こうで言うハッカー倫理にあたるものは、こちらでは「リア充」って言葉になると思います。
リア充」って表現もハッカー倫理と同じように女性への特定の視点(もしくは視点自体の意図的な排除)を含んでいます。ハッカー倫理的なものと違って、こちらではプログラマー=「非リア」という自己定義は意図的なものではありません。でも、それを否定しない雰囲気はありますよね。そういうラベル付けを受け入れてしまっていることが、自分のコミュニティの多様性を損ねているという点は認識すべきです。

ずっと感じていた違和感をうまく形にしてくれたキーノートでした。
これを機にコミュニティの多様性について考えてくれる人が増えると良いのですが。

Rails cache by memory_store with 1-day expiration

Rails cache has no expiration by default.
So I save the time cached in the cache itself.

Sync crontab and Rails with Capistrano

1. Put `crontab -l` into a file and add it into your repository
2. Add lines below to your config/deploy.rb



that's all. crontab on production server will be refreshed after every deployment.

新しいの5個だけ残してあとは消す

Rubyで書こうとしましたが、間違いでした。
Unixすばらしい。

rails + passengerでbasic認証

こんな感じでを追加してあげればOK。
LocationディレクティブはDirectoryディレクティブとは違ってウェブ空間に対する設定を行うので、/adminとか相対URLで指定できると。


<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName xx.xxx.xxx.xxx
ServerAlias xx.xxx.xxx.xxx
DocumentRoot /var/www/myapp/current/public
<Directory /var/www/myapp/current/public>
Options FollowSymLinks -MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
<Location /admin>
AuthUserFile /home/somebody/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
</Location>
</VirtualHost>


.htpasswdの場所はホームディレクトリ以外がいいような…。

こちらを参考にしました!
Slicehost Forum - Passenger and htaccess, multiple login prompts

カレントディレクトリの*.erbを*.hamlに変換

Hamlいいですねー 楽です。キモ綺麗。
Hamlが動けばZen Codingいらず。

Haml同梱のhtml2hamlってコマンドでerbをhamlにできるのですが、ディレクトリ内一括でやっちゃたいのでちょっと工夫しました。
備忘もかねて投稿。

ruby -e "Dir.glob('*.erb'){|erb|system \"html2haml #{erb} #{erb.sub('erb', 'haml')}\"}" 

ただ、erb.html.erbとかいうファイル名があったらおかしくなっちゃいます。

Author

Fujimura Daisuke
http://fujimuradaisuke.com

Labels