2015年7月26日日曜日

Gitを使う上で便利なzshの設定

僕がzshrcに設定している Git 用の設定を紹介する。
  • プロンプトにブランチ名を表示
  • run-help をカスタマイズ
あんまりヘビーなカスタマイズはしてなくて,必要最低限,って感じだ。

まずは「プロンプトにブランチ名を表示」から。

2015年6月17日水曜日

SICP3章後半に書いてあるストリーム(遅延リスト)について

SICP3章ってそんなに「オブジェクトはオワコン! 関数プログラミング的なストリームこそ最強!」な内容だったかなぁ、と思って3章の最後を読みなおしてみたが、こんな内容だった:

2015年3月29日日曜日

Gitの最初の姿

この4月で、Gitが誕生してからちょうど10年になるようだ。
10年前、つまり一番最初のGitはどのようなプログラムだったんだろう?

当然だけど Git プロジェクトのリポジトリには10年前の最初の姿が e83c516 というコミットとして記録されている。
% git log --max-parents=0
commit e83c5163316f89bfbde7d9ab23ca2e25604af290
Author: Linus Torvalds <torvalds ppc970.osdl.org>
Date:   Thu Apr 7 15:13:13 2005 -0700

    Initial revision of "git", the information manager from hell
# --max-parents=0 は親のないコミット、つまりルートコミットを探す方法だ。
# もちろんこれが Linus が書いた本当に最初のツリーとは限らない。 Gitリポジトリから辿れる最初、という意味だ。
今回はこの当時の姿について少し見てみようと思う。

2015年2月15日日曜日

rebase して FF マージすることによる一直線の履歴は本当にわかりやすいのか

Git でトピックブランチを統合ブランチにマージする直前、最新の統合ブランチの先端にrebaseしたうえで FF (Fast-forward)マージすることで、見かけ上の履歴は一直線になる。 このような一直線の履歴が「わかりやすい」と解説されていることが多いんだけど、これは本当だろうか?

実は、このような見かけだけ「一直線」の履歴はむしろトピックの範囲が不明確になるのでわかりにくいんだ。

2015年2月7日土曜日

3imp 読書メモ(2)

今回はチャプター4の最初の第1節について書く。
3imp 未読の人には何が何やらわからない内容だと思う。 読んだことがある人は間違い探しでもしながら読んでもらえればと思う。

チャプター4 はスタックベースモデルの章だ。

2015年1月30日金曜日

Gitでpush -fせずにmasterの間違いを修正する方法

そんなものはない (タイトルは釣りだ。ゴメン)。

でもよく聞く「ミスに気づいて、思わず master に push -f しちゃった」という話は、実はある運用方法で簡単に防ぐことができるんだ。 その運用方法とは・・・

2015年1月22日木曜日

『アンダースタンディング・コンピュテーション』とベネディクト・カンバーバッチ

昨年の話なんだけど、会社の読書会で『アンダースタンディング・コンピュテーション』を読んだ。

普通の技術書(とくに他のオライリー本)と比べると、この本を読むことによってどういうスキルが身につくのか、若干イメージしにくいと思うんだけど、それはこの本がプログラミングの基礎的な内容を扱ってるからだと思う。

個人的に得られた知見とかは以下の通り

2015年1月20日火曜日

3imp 読書メモ(1)

「Three Implementation Models for Scheme」(R. Kent Dybvig, 1987)という、Schemeの実装モデル3パターンについて論じた論文がある。

Scheme 方面では有名らしく、 ファイル名由来だと思うんだけど、通称 3imp と呼ばれて親しまれているみたい。(@nfunato さん、情報ありがとうございます)

これはその読書メモだ。3章まで読んでいる。続きはまた後日。

2015年1月16日金曜日

仕事で英語を使わないITエンジニアが効率よく英語を習得するには

タイトルは釣りです。ごめんなさい。

普段英語をまったく必要としない職場にいるのですが、そのメンバー
の中では比較的TOEIC点数が高めのため、

「プライベートで英語使うことあんの?」(ないです)とか
「海外経験あんの?」(ないです)とか

聞かれることが増えてきたので、これまで勉強してきた中で「コレ
は効いたな」あるいは「気軽にできて続けやすい」という、まぁ自分
の中での勉強法のランキングを主観ですが整理してみたので調子に
乗って紹介します。

その前にまず私のスペックです。

2015年1月15日木曜日

Yコンビネータを導出してみる

以前 Yコンビネータが call-with-myself だという記事を書いたけど、
そこでは Y コンビネータがどこから来たのか、ということについては書かなかった。
今回はYコンビネータがどこから来たのかについて書くつもりだ。