March 18, 2010

読書: 情熱プログラマー – Chad Fowler

情熱プログラマー」読みました。オーム社の森田さんから献本していただきました。ありがとうございます!いつも思うんですけど、どの本も装丁が奇麗ですね!

さて、この本ですが、まだ自分のなかで内容を消化しきれてないというか、身につまされないといけないはずなんだけどまだ実感がわかないというか、なんかそんな感じです。あいまいな表現で申し訳ありません。読み終わった後に「さて、じゃあ僕は今何をすべきだろうか」と、ちょっと(いや、かなり)考えてしました。で、いまだにあれこれ考えてます。

本書の後半にさしかかってくるとだんだん自分が説教されてるんじゃないかとかいう変な思いにかられてしまったりしました。あと、「ファウラー氏に比べたら、俺しょぼい仕事しかしてねー」とか思ってしまいました。(いや、しょぼい仕事なんて言ってすみません。。仕事があるっていうのはほんとありがたいことです。)

ていうかチャド・ファウラー氏すごすぎなんですよ!なんかこう、追いつきたいという思いを通り越して畏怖してしまうような、そんな感じっす。ていうか日本人って外人を無条件にすごいと思ってしまうところありますよね、ね。

そんな中、僕が面白いと感じたのはファウラー氏の若かりしころの話。読むと「ファウラーさんも人間なんだなぁ」(あたりまえだけど)とか思えます。

すごい人に少しでも近づくには、すごい人が何を考えているのか・どういう考え方をしているのかを知る必要があって、そのためにこういう本があるんじゃないかな、と思いました。あと、「こういう時、チャド・ファウラー氏ならこうするはずだ!」という指針にもなりますね。

僕もサックスが吹けるようになりたいです。

GitHub 誕生のコラムはかなり読んでいて熱いものが込み上げてくる感じがありました。やっぱああいうのにあこがれますねぇ。人生、冒険ですねぇ。

あと興味深かったのは、 Patrick Collison という人の「失敗と模倣」というコラム。とにかく自分の手でいろんなプログラムを作って失敗してみるべき、というようなことを言っていて、すごく共感できました。すごいものを作り上げた人って、実際にはそれ以外にもいろんなものを作っているはずで、それらのほとんどは失敗作だったりするんだと思うんですよね。何度も何度も失敗してたまに良いできのものができる、という感じなんだと思うんです。実際に作ることを通してしか得られないものがあると思うのです

そんなわけで、明日もがんばるぞー。

August 25, 2009

読書: 「入門git」

入門git 入門git
でびあんぐる

オーム社 2009-08-12
売り上げランキング : 2359

Amazonで詳しく見る by G-Tools

これ読みましたー。
最近は日常的に git を使っててそこそこ詳しくなってたつもりだけど、基本をちゃんと抑えておくという意味でこれは読んで良かった。

久々にブログ書いてるので文章がうまく書けません。

git のインストール

えっと。
そうそう、git はソースから入れるのが一番いい気がした。

以下のようにするとドキュメントもインストールされていいらしい。

make prefix=/usr/local all doc
sudo make install install-doc

Mac の場合は以下のようにすると git-svn も入るしいい感じっすね。

sudo port install git-core +svn +doc

git diff

git diff はたぶん一日一万回くらい使ってるけど、このを本読むまで --cached オプションなんていう便利なオプションがあるのを知らなくてすごく損してたなーと思った。
git diff をオプション無しで実行すると、git によって管理されていてかつまだステージされてない(index に入っていない、つまり add してない)変更の差分が出力される。
git diff--cached オプションを付けて実行するとステージした変更と HEAD との差分を見ることができる。
今まではそういう差分を見るためにわざわざ git commit -v を使ったりしてた。
git diff には --stat なんてオプションもある(使ってないけど)。

git blame

そうそう、git blame を使えるようになりたいと思いつつも全然使ってない。
あ、普通に使う分には git blame README.rdoc とかやればいいのか。
そうすると以下のような感じでファイルのどの部分を誰が編集したのかとかがわりと簡単にわかる。

...
da557a52 (jugyo         2009-03-24 20:51:04 +0900  43)   % sudo gem install termtter
43752d7d (mattn         2009-01-08 14:13:28 +0900  44)
31e0dd9c (jugyo         2009-03-24 15:19:12 +0900  45) == CONFIGURATION:
a9a95484 (ujihisa       2009-01-06 18:43:43 +0900  46)
cd062ba3 (jugyo         2009-03-24 15:21:25 +0900  47) Termtter generates a configuration file named '~/.termtter/config'.
a9a95484 (ujihisa       2009-01-06 18:43:43 +0900  48) You can edit the file anytime.
d5ad26db (jugyo         2009-01-05 15:28:09 +0900  49)
da557a52 (jugyo         2009-03-24 20:51:04 +0900  50)   % vim ~/.termtter/config
...

行を指定する場合は以下にように -L オプションを使うのか。

git blame -L 10,20 README.rdoc

なるほどね。
さらに -L オプションには正規表現を指定できるらしい。

git blame -L"/def call_commands/",+10 lib/termtter/client.rb

これは便利だ。
git blame の出力に色が付いたらもうちょっとわかりやすいのにな。

git rebase -i

git rebase で個々のコミットをいじくり回すなんてことは今までやってなかったけど、この本読んで git rebase -i をやたら使うようになった(-i がポイント)。
git rebase -i は対話的に rebase を行うためのコマンドで、素晴らしく便利です(使い方は本書を読んで調べてください)。
僕はだいたい人間がやりそうなミスは一通りやってしまうたちなので、「あのコミットにこれも入れておけば良かったー」というような状況がしょっちゅうあって、そういう時に git rebase -i とか git commit --amend はとてもとても役に立ちますね。

branch と rebase について

branch と rebase について理解しないで git を使うのは結構つらいと思うけど、逆に考えるとそれらをだいたい理解していればたいていの場合はなんとかなる(はず)。

github T シャツについて

「入門git」とは全然関係ないんだけど、こないだ github T シャツを勝手に作った。

Picture 26

というわけで、今すぐ買うといいと思うよ!

入門git 入門git
でびあんぐる

オーム社 2009-08-12
売り上げランキング : 2359

Amazonで詳しく見る by G-Tools

March 22, 2009

読書: Amazon EC2/S3クラウド入門

Amazon EC2/S3クラウド入門 Amazon EC2/S3クラウド入門
学びing

秀和システム 2008-12
売り上げランキング : 1837

Amazonで詳しく見る by G-Tools

わかりやすくて良かったです。

EC2 や S3 なんかについては、なんとなくしか知らなかったのですが、これ読んで知った気になれた。文字通り「知った気になれた」だけで、実際に使う段になってまたいろいろ苦労するんだろうけど、知った気になれていると不安がかなり減るので良い。「ああいうふうにやって、あそこに気をつければいいんだな」みたいに、自分が実際に作業をしているところをイメージできるようになった。

僕を含め多くの人は、よくわからないものをデフォルトで怖がる(または敬遠する)ように初期設定されているんだと思う。

March 3, 2009

読書: プログラミング言語 Ruby

プログラミング言語 Ruby プログラミング言語 Ruby
卜部 昌平 (監訳) 長尾 高弘

オライリージャパン 2009-01-26
売り上げランキング : 14678

Amazonで詳しく見る by G-Tools

これ読みました。
これ読んでRuby技術者認定試験受けたら合格しました。

読書: ひとりっ子(グレッグ・イーガン)

ひとりっ子 (ハヤカワ文庫SF) ひとりっ子 (ハヤカワ文庫SF)
Greg Egan 山岸 真

早川書房 2006-12
売り上げランキング : 106272

Amazonで詳しく見る by G-Tools

これ、かなり面白かった。
グレッグ・イーガンは最高のSF作家だと思う。

以下は印象的だったところ。

「まじめに言ってるんだよ。仏教の神秘用語じゃなくて。これは現実の話だ。きみが自分の行動規範をつらぬけば、当然ものごとはきみにとってうまくいくーーそのために命を失うことがなければ。それが心理学の初歩だ。人間は、相互関係の感覚、他人からうけるあつかいが適切かどうかを判断する感覚を、高度に発達させている。自分にとってものごとが順調すぎると、『これに値するようなことを自分はしただろうか?』と思わずにいられない。そして納得できる答えが見つからないと、自分を責める。つねにではないが、かなり頻繁にだ。というわけで、自尊心がふくらむような高度をとったあとーー」

December 4, 2008

読書: プラネット・グーグル

プラネット・グーグル プラネット・グーグル
Randall Stross 吉田 晋治

日本放送出版協会 2008-09
売り上げランキング : 9664

Amazonで詳しく見る by G-Tools

面白かった。
最近の話題まで、よくまとまってる印象。
だいたいがなんとなく知ってたような内容だけど、通して読むとより鮮明に見えてくる感じがする。
Google について知った気になれる本。

November 1, 2008

読書: LinuxサーバHacks

LinuxサーバHacks―プロが使うテクニック&ツール100選 LinuxサーバHacks―プロが使うテクニック&ツール100選
Rob Flickenger 山口 晴広 イメージズアンドワーズ

オライリージャパン 2003-11
売り上げランキング : 93707

Amazonで詳しく見る by G-Tools

これ、なかなかためになった。
ていうか、Linux にまつわることで知らないことってやたらあるなぁ。
知らないと損することがたくさん。

もっと本読まないと。
最近全然本読めてないんだよなぁ。
なんか、邪念が多すぎる。
一つのことに集中できていない。