見出し画像

IT古典良書を読み解く《第1回》ジョエルテスト:いいプログラムへの12ステップ

    第1回 Joel on Software(ジョエル オン ソフトウェア) -その1-「ジョエルテスト:いいプログラムへの12ステップ」

はじめに

「良いエンジニアになるためには、本代をケチってはいけない」
こんにちは。スクラムマスターの伊藤です。
2000年代初頭、まだ若輩者の私は尊敬する先輩から、このことを教わりました。

技術書は2,000円 3,000円が当たり前で、なかには1万円近くするものもあります。Webでもさまざまな情報が⼿に⼊る時代ですが、やはり体系化された有益な情報となると、やはり書籍が優れていると思います。

⽇進⽉歩のIT業界、技術書はすぐに陳腐化してしまうこともありますが、古典(例えば聖書や論語)を現代⼈が読んでも学ぶことがあるように、IT古典良書にも、いつの時代でも通⽤することが書かれています。
そこで本ブログでは、IT古典良書を取り上げ、特に現在のIT現場でも活⽤・参考になる箇所を紹介します。

《よもやま話》
有名なHTMLタグの本に誤りがありましたが、なぜか他社の本にも同じ間違いがあったのは冗談のような本当の話

Joel on Softwareとは︖

画像1

Joelさんは、どんな⼈なのかというとMicrosoftのExcelを作った⼈です。 ちなみに、Wordは完全に別チームでPMがスケジュールを優先するばかりで、デスマーチ化したことがさらっと書かれています。 その後、独⽴しBTS(Bug Tracking System)のFog Creek、エンジニアであればお世話になっている スタック・オーバーフロ
https://stackoverflow.com/ そして、最近ではWebアプリ実⾏環境グリッチ https://glitch.com/ をリリースしたというすごい⼈です。

本書との出会い

本書との出会いは、前節で書いた先輩の紹介です。
さらに後年、いっぱしのエンジニアとなった私は、会社の役員がアプレッソのCTOである⼩野 和俊さん(当時)と会⾷することになった際、ワインとプログラミングが趣味という⼩野さんのために、技術者も同席した方ほうが盛り上がるだろうということで、⽩⽻の⽮が⽴ち、同席することに。 "データスパイダーを開発した⼈"以外にも、どういう⼈なのか小野さんのブログなどを読むとJoel on softwareを⼤絶賛。これは気が合いそうだと確信しました。(会⾷はワインの話題で盛り上がりました。) http://blog.livedoor.jp/lalha/archives/50084092.html

ジョエルテスト

ジョエルを⼀躍有名にしたジョエルテスト。 何はあともあれ、12問にYES/NOで答え、YESであれば1点で⾃分のプロジェクトや会社が何点なのか、ぜひテストしてみてください。

1. ソース管理してる?
2. ワンステップでビルドできる?
3. デイリービルドしてる?
4. バグデータベースはある?
5. 新しいコードを書く前にバグを直している?
6. アップデートされているスケジュールがある?
7. 仕様書はある?
8. プログラマは静かな環境で作業している?
9. ⼿に⼊る最⾼のツールを使っている?
10. テスターはいる?
11. 採⽤⾯接のときにコードを書かせている?
12. ユーザビリティテストはしている?

引用:Joel on Software 23ページ「第3章 ジョエルテスト:いいプログラムへの12ステップ」
https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/ (原⽂)
https://bit.ly/2zGo6ey (⽇本語版アーカイブ)

何点だったでしょうか?
 1、6、7のみの3点だったのではないでしょうか。
「これがメンタリズムです」とでも⾔いたくなりますが、多くの⽇本企業の実態としては、この程度だと思われます。
驚くべきことは、このジョエルテストのブログは2000年(20年前︕)に書かれ、マイクロソフトなどの巨⼤IT企業は満点だったということです。

各テストの詳しい解説はリンク先に譲りますが、 私は15年ほど前に、ジョエルテストを⾏ったところ、やはり3点ぐらいでした。本書を紹介して知れくれた先輩と頑張り、4. バグデータベース(bugzilla)を導⼊し、5もYesになり、QA(Quality Assurance)チームを立ち上げ、コーディングと同時にテストケースを作成し、期待値もつくり、⾃動化を⾏えるようにもしました。それでようやく6点でした。

「君がマネージャーで12点になったら、君はプログラマ達に⾃由にやらせておき、営業担当者がプログラマを邪魔することを阻⽌することに集中できる」という解説は、あるある過ぎて⼤きく頷いてしまいそうです。
⼿前味噌ですが、難易度が⾼い「10. テスターはいる?」の解説にもありますが、テストチームに単価の⾼いエンジニアを使っているというケースもあるでしょう。

SHIFTではテスターのアウトソーシングが可能です。ジョエルテストを満点にするためにも、お困りの⽅はぜひ是⾮ご相談ください。 https://info.shiftinc.jp/service_contact

――――――――――――――――――――――――――――――――――

執筆者プロフィール:伊藤 慶紀
大手SIerにて業務用アプリケーションの開発に従事。
ウォーターフォールは何故炎上するのか疑問を感じ、アジャイルに目覚め、
一時期、休職してアメリカに語学留学。
Facebookの勢いを目の当たりにした後、帰国後、クラウド関連のサービス・プロダクト企画・立ち上げを行う。
その後、ベンチャーに転職し、個人向けアプリ・WebサービスのPM、社内システム刷新など様々なプロジェクト経験を経てSHIFTに入社。
趣味は将棋、ドライブ、ラーメン、読書など

お問合せはお気軽に
https://service.shiftinc.jp/contact/

SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/

SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/

SHIFTの導入事例
https://service.shiftinc.jp/case/

お役立ち資料はこちら
https://service.shiftinc.jp/resources/

SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/