5/16/2012

ペットボトルで作るエコランプ

何で知ったか忘れたけど(もしかしたら、VOA の podcast かな)、Liter of Light ていうプロジェクトがあって、フィリピンをはじめ、世界中の家庭を(文字通り)明るくして、人々のくらしを豊かにしようという人たちがいるらしい。興味ある人は、ぜひこの記事を読んでみよう!

The scheme uses plastic bottles filled with a solution of bleached water, installed into holes made in shanty towns' corrugated iron roofs, which then refracts the equivalent of 55W of sunlight into the room – during the day, at least. It takes five minutes to make, and using a hammer, rivet, metal sheets, sandpaper and epoxy, it costs $1 to produce.

そのプロジェクトでキーになってるのがペットボトル。ペットボトルに漂白剤入りのお水を入れて、それを屋根に刺す。そうすると、すっごく明るい電球になるんだって!このペットボトルは外の陽の光を集めて、家の中を照らす。ということは、太陽が出ているときしか使えないんだけど、窓が無いおうちは昼間でも真っ暗。電気は高いし、ろうそくを使うと危ないし。そこで、このペットボトルのエコランプ。安く作れて、一度作っちゃえばどんだけ使ってもお金はかからない。しかも、危なくもない!

これ、考えた人ほんとすごい。まさにイノベーションだねっー!

5/15/2012

Cloudcore VPS 1ヶ月945円継続決定

昨日までのキャンペーン価格が継続されて、12カ月契約すれば1ヶ月945円。
CloudCore VPS 2048 値下げのご案内

そうきましたか!

5/13/2012

VPS デビュー!

CloudCore VPS で VPS (Virtual Private Server) デビューした!
1ヶ月945円(12ヶ月契約)のキャンペーンは明日(5月14日)まで!検討中の方はお早めに-。5月15日以降も、12か月契約をすれば1ヶ月945円で使えるように料金設定が変更されたー!(5月17日追記)

申し込みが完了するとユーザ名とパスワードがメイルで送られてきて、それを使って管理者のウェブポータルにログイン。そしたら、使いたい OS を選んで、仮想マシンにインストール。僕は Ubuntu を選んだ。コンソールはウェブブラウザ経由で使えるのね....テクノロジーの進化はすごい。ブラウザに noVNC って表示されてたと思うんだけど、使われてるのはこれかな。みんな、すごいね!

CloudCore VPS の話に戻ると、どんな感じで使えるのかは、Internet Watch の月945円でメモリ容量2GBが利用可能な「CloudCore VPS」を試す の記事が詳しい。

明後日からは、CloudCore VPS も1,470円(12ヶ月契約)。そうなると、スペックの上ではさくらのVPS の「さくらのVPS 2G」のコースのほうがイケてるような気がするけど、みんなどっちを選ぶのかな。

で、VPS デビューした僕だけど、このマシンの上で何をやろうか決めてなかった!何やろうかなー。いま僕がこのブログを書いているマシンよりもずっと高性能だから、VPS の上でいろいろプログラミングのお勉強とかしていこうっと!

4/18/2012

Apache で SPDY 使いたい?なら mod_spdy!

Google Developer blog によると、Apache 向け SPDY のモジュール、mod_spdy のバグが修正されて、新しいバージョンがでたんだそうだ。ここから .deb とか .rpm がゲットできる。

SPDY って早いの?という話は以下の動画をみれば「おぉー、早そう」ってことがわかる。


あ、そう。さっきのGoogle Developer blogには mod_spdy の仕組みが図入りで書いてある。mod_spdy の中身に興味がある場合には、コードを読む前にこのブログを読むのがいいかもしれない。

4/10/2012

英語のポーチの話

ちっちゃい鞄みたいなものを「ポーチ」と呼ぶけど、英語だと pouch だそうで、発音はパウチみたいな感じ。レトルトパウチのパウチだ!

今日みかけたウェブ記事で使われてた poach は侵入するとか、侵害するとかいう意味で、発音はポウチて感じ。

じゃあ、porch は何かというと、張り出した玄関だって。発音はポーチって感じかな。

パウチ!

3/29/2012

やっぱり Mocktra は便利だった!

先月、「Mocktra がやばいやばいやばい」で紹介した Mocktra を最近使っているけど、やっぱり便利だった。

いま僕やってることは、ウェブページのスクレイピングみたいなことをするライブラリの作成で、そのテストの場面で Mocktra が大活躍。

テストフレームワークは RSpec をつかってて、プロジェクトのディレクトリ直下には lib と spec のディレクトリがある感じ。lib ディレクトリの下にライブラリの実装をいれていって、spec ディレクトリの下にテストコードをいれていく。spec ディレクトリには各テストコードに共通の内容が入った spec_helper.rb がある。ここで Mocktra を使ってる。あと、spec ディレクトリの下に data ディレクトリをいれて、ここにスクレイピングする対象の HTML ファイルを配置する。

それで、spec_helper.rb の中で
require 'mocktra'

Mocktra('www.example.com') do
  get '/hoge'
    case param[:fuga]
    when "piyo"
      File.read(File.join("spec", "data", "piyo.html"))
    end
  end
end
て感じのことをしてる。細かいところは間違ってるかもだけど、要は、これだけのコードで、http://www.example.com/hoge?huga=piyo がアクセスされたら spec/data の下にある piyo.html を返すウェブサーバの代わりをしてくれるんだ。すごいよ、ほんと、いいタイミングすばらしいライブラリに出会った。。

通信エラー時のテストをやろうと思って、どうやってやるんだ?ということで Mocktra の中身を見てみたら、WebMock てのをベースにしてるだねー。で、Mocktra の README.md の以下の NOTICE のこともなんとなくわかった。
Mocktra calls WebMock.allow_net_connect! when loading.
で、通信エラーの件は、WebMock だと表現できないのかな、ということで、ライブラリ内で使ってる HTTPClient の HTTPClient#get (だったかな)をテストコードの直前でオーバーライドして、目的の例外、たとえば TimeoutError を raise するようにした。     

ところで、こないだのブログ記事で
記事を RubyFlow に投稿してくれた、jugyo さん、ありがとう!!!
て書いたけど、 実は、jugyo さんは Mocktra の作者じゃん!あらためて、jugyo さん、Mocktra を作ってくださってありがとうございまーす!


3/17/2012

Thunderbird の Confirm-Address アドオンがイケてる!

いっこ前に投稿した記事 で言ってたメイルの宛先は、ちゃんと正しいものになっていた。よかったよかった。

んで、宣言どおり、Confirm-Address を使い始めた。結構イイ感じ~!作者のみなさん、あざーす!