職業プログラマの休日出勤

職業プログラマによる日曜自宅プログラミングや思考実験の成果たち。リアル休日出勤が発生すると更新が滞りがちになる。記事の内容は個人の意見であり、所属している(いた)組織の意見ではない。

$7 per month のヤル気

先週末、GitHubのMicroプランに契約して、private repository を持ち始めました。

repository とは?

そもそもこの文脈で言うrepository(リポジトリ:倉庫の意味。書きことばです)とは、ソフトウェア(ソースコード等)のバージョン管理システム(VCS)のためのデータ置き場です。

private repositoryとは?

privateということは、見知らぬ他人が勝手に見ることのできないもの、ということになります。
世の中のプログラマが開発しているソフトウェアは、全てがオープンなものという訳ではありません。むしろオープンではないものの方が多いでしょう。private repositoryは、そういう場面で使われます。


…ここまでの話は、この記事を開いた人の多くにとって必要の無い話ですね。

なぜネット上にrepositoryを持つのか?

ネット上にrepositoryを置いておけば、外出先でもPCとインターネット接続回線さえあれば、いつでも最新のソースコードに基づいた開発が可能になるのです。複数人数での開発もかなり楽になります。
遠隔地で複数人で何か作業(開発に限らない)をするとき、「仕様書.xls」「仕様書_最新.xls」「仕様書_最新_2月28日版.xls」といったファイルがメールで飛び交うという残念な営みは不本意ながらよくあることですが、少なくともrepositoryで管理できるものに関しては、そんな愚かしいことはやらなくて良いのです。

但し、ネット上にrepositoryを置くことは、OSSオープンソースソフトウェア)の世界では昔から主流だったのですが、そうではないソフトウェアの世界、即ちprivate repositoryを使う世界では、企業や自宅の中にrepositoryを持つことが常識でした。今でこそVPNを借りて、そこで自分でrepositoryを構築するといった運用も個人開発者には現実的になりましたが、数年前までは、それは金持ちの証だったのです。
今では、GitHubをはじめとして、いくつかの企業がprivate reposirotyのサービスを提供しており、かなり気楽に使うことができます。

なぜGitHubでprivate repositoryを?(有料なのに!)

ヒ・ミ・ツ(はぁと

…というのも、あながち冗談だとは言い切れません。
作るソフトウェアが秘密のものであるならば、その開発環境を整備した経緯にだって秘密のことがあるものです。一つ明確に言えることとして、金銭的な利益を得る為の活動ではない、秘密のプロジェクトで使っています。
もちろん、今後はこのprivate repositoryをいろんな方面で役立てたいなと思います。

副作用

このプロジェクト、特に納期というものは無く、スケジュールはかなり勝手に決めることができます。しかしながら、そのような環境ではなかなか開発は進まないものです(経験者談)。
ところが、private repositoryの維持に $7/mth のコストをかけると、どうでしょう。

f:id:t_motooka:20140228225948p:plain

これはGitHubの画面の一部で、どれほどrepositoryにコミットしているかをグラフで表したものです。
なんと、先週のMicroプランの契約から毎日、何かしらコミットしてます。晴れの日も酒の日も、毎日コミットです。そう、開発しなかったら$7/mth勿体ないのです! この程度のお金でこれほど「やる気ブースト」がかかるのなら、安いものじゃありませんか。
オススメです。超オススメ。

※個人の感想です。全ての人に効果がある訳ではありません。

関連書籍

Gitポケットリファレンス

Gitポケットリファレンス

これは今の職場で仕事をし始めたその日に買いました。今でも手元にこれを置いて仕事をしています。
普段使わないし名前もうろ覚えだけど、確かgitにはこういうコマンドがあったはず!という状況に陥ったときには大変重宝します。

Gitによるバージョン管理

Gitによるバージョン管理

この本は恐らく出版された直後に買ったと思います。git超初心者の頃です。この本は、ポケットリファレンスではなくて、体系立てて学ぶための本です。読んでる途中に寝落ちしたことが何度かありますが(もちろん自分が悪いですよ!)、正直なところ、git初心者なのであれば、最初のうちは読むよりも実際に使った方が良いのかなと思います。ある程度慣れてきた今こそ読むべき本なのかもしれません。