iPad

iPad買ったよ。ヒャッハー!

昔(98, 99, 2000年頃?)、Ultima Onlineのネトゲ廃人だった頃、相手より少しでも速く動くためにPCの自作にも励んでいました。Celeron 300Aのマレーシア工場の23週?製造バージョンがオーバークロック耐性が高いだのといってオウム真理教系のパーツショップ(安い)をさまよったり、RIVA TNTの発売時に有り金全部使ってしまって知り合いに帰りの電車賃を借りに行ったりしていました。

Intel_Celeron_300A_MHz

ゲームで相手より足が速いということは、ピンチになったら何度でも逃げればいいわけで、まず負けることが無くなるので高いパーツを買ったり改造するかいもあると言うものです。これには熱中しました。

結局、Pentium III(Katmai 450Mhz)とMillennium G400辺りで違いを体感出来る程では無くなったために秋葉原から足も遠のいてしまいました。

Androidが発表された時、携帯が再びそういう状態にならないかなと期待を持ちました。

OSはフリー、ハードは標準化され価格競争になる。台湾辺りのメーカーの部品を寄せ集めてSIM的なものを指せば安く高性能な携帯が手に入るので秋葉原には怪しげな携帯パーツ屋が軒を並べ、学生はこぞって携帯のカスタマイズに夢中になり、小遣いやバイト代は全て携帯の高性能なCPUやメモリに消えていく・・・。

そんなカオスな世界を夢想していましたが中々そうなってこないですね。

何?誰か邪魔してるの?

誰か邪魔してるなら教えてください。俺が嫌がらせしに行きます。

Help me, hacekrs!でもtwitter-authのgem(jugyoさんがforkした証明書を使えるバージョン)を便利に使わせてもらっています。

これ、Net::HTTPServerExceptionの401はrescueしてるんですが、OAuthの401は何もしてないので、認証を拒否して戻ってきた時とかにはエラーになっちゃいます。

% diff app/controllers/sessions_controller.rb{,.org}
62,63d61
< rescue OAuth::Unauthorized => e
< authentication_failed(t('This authentication request is no longer valid Please try again')) and return

なのでココ修正して使ってます。

OAuthの認証失敗処理

※ ここは元のgemの問題です。

コードDJ 第0回 | FJORD, LLC(合同会社フィヨルド)

とうとう始まってしまった。Help me, hackers!に上がったコードの中身を毎回紹介していくコードDJ。

「始まる、始まる」って電波を送信しといたから、宇宙の知識の全てが記録されているというアカシックレコードにアクセスしてた人は、本当にお待たせ。komagata a.k.a. DJです。

はじめました。毎週火曜日更新のつもりですが、思い付きではじめたものの結構大変です・・・。

予想以上に大変だけど、技術ブログの時は毎週アプリ作って公開して、それに対するエントリーを書いてたのでそれに比べればダイブ楽。

Help me, hackers!というサービスをソース公開しつつやってますが、Bundler導入とSQLite3化したので簡単にローカルで立ち上げられるようになりました。(Windows対応)

$ git clone http://github.com/komagata/help-me-hackers.git
$ cd help-me-hackers
$ cp config/twitter_auth.example.yml config/twitter_auth.yml
$ bundle install
$ rake app:set
$ ruby script/server

Help me, hackers!

ウホッ・・・

bundlerのgemを入れてない方

rubygemsを1.3.6以上にする必要あり。

$ gem update --system
$ gem install bundler

Windowsの方

sqlite3.dllをsystem32に入れる

> COPY vendor\win32\sqlite3\sqlite3.dll c:\WINDOWS\system32\

ウィンドウを取る

カメラが出るのでウィンドウを選ぶ。デスクトップにpngファイルが出来る。

Command + Shift + 4 + Space

Twitter / Masaki Komagata: 日本人から見ると、金髪の白人女性は全員404の人に見える。

日本人から見ると、金髪の白人女性は全員404の人に見える。

約5時間前 HootSuiteから

「何のこと?」というリプライを少し頂きました。

404の女 - Google 画像検索

この人のことです。

USTREAMで生放送始めましたという告知をUSTREAM備え付けのTwitter機能を使うと、日本語のChannnel名のURLがおかしくなって非常に面倒臭いのでスクリプトにしてます。

#!/usr/bin/env ruby

require 'rubygems'
require 'twitter'
require 'pit'

config = Pit.get('twitter', :require => {
  'consumer_token_key' => '',
  'consumer_secret'    => '',
  'access_token_key'   => '',
  'access_secret'      => ''
})

oauth = Twitter::OAuth.new(config['consumer_token_key'], config['consumer_secret'])
oauth.authorize_from_access(config['access_token_key'], config['access_secret'])

client = Twitter::Base.new(oauth)
client.update('USTREAMで生放送を開始しました。「生放送しながらWebサービスを作る - Help me, hackers!」 http://bit.ly/9mGebY #hmh')

修正:Gist貼付けだとフィードリーダーで見えないのでやっぱりソースを張ることにしました。

WindowsのSafariがちゃんとWindowsのガイドラインに従う感じに変わってる!

windows_xp_ie6 [実行中] - Sun VirtualBox

いや・・・まったくもって正しいと思うんですが・・・なんだろう。この愛しさと切なさと・・・・・・切なさは。

% sudo port install mercurial
% hg clone https://komagata@bitbucket.org/komagata/haml.ursm.jp
% hg commit -m 'fixed foo'
% hg push

gitと同じ感じでいけるんですね。とても親近感が湧きました。ハードゲイ(hg)かと思ってたら案外悪いヤツじゃない。

# ~/.hgrc
[ui]
username = Masaki Komagata <komagata@gmail.com>
verbose = True

ただ、bitbucketはそびえ立つ糞のように重かった。

パッチ作成とパッチ当て

% hg diff > foo.patch
% patch -p1 < foo.patch