lanjutan tentang test driven dan bug tracking software:

Pas sebelum punya jam waker, mau bangun jam berapa juga bisa. Jam 4 pagi bisa, jam 3 pagi bisa. Badan juga biasa2 aja.

Trus beli jam waker. Set misalnya jam 4 pagi. Hari pertama bangun. Tapi makin lama makin bermasalah. Ketika jamnya bunyi, setengah sadar kita matikan jamnya. Mulai telat bangun. Badan juga mulai gak enak.

Apa sebenarnya yang terjadi? CONTROL yg sebelumnya kita yg punya, sekarang kita lepaskan dan kasih ke jam waker. Jam waker sekarang yang pegang CONTROL. Badan juga jadi gak enak, karna kita emang belum siap bangun, tapi jam waker maksa bangun.

Kita kehilangan CONTROL dan badan jadi gak enak, jadi jangan beli jam waker. :) sorry buat penjual jam waker. hehe


Apa hubungannya sama test driven development dan bug tracking software?

Pertama tulis testnya, tulis codenya, abis itu refactor. Kalau lewat semua test list, berarti OK. Lanjutkan cycle itu.

Trus di bug tracking software, kumpulkan semua bug2 yang ada. Kalau semua bug solved, berarti OK.

Apa yang terjadi? CONTROL pelan2 di serah terimakan ke tool2 ini. Tool2 ini yang akan menentukan apakah software kita OK apa NGGAK OK. Kalau lewat semua test, berarti OK. Kalau semua bug solved, berarti OK. Mirip jam waker, jam waker yang berkuasa menentukan kita udah boleh bangun apa nggak.

Udah kehilangan CONTROL, penyakit lain muncul. Mulai tulis test seadanya, bug juga yang penting ilang dari list. Nggak perlu ngerti kenapa itu ilang. You just started bug development cycle.

Kalau bug tracking software dipakai untuk nyimpan list bug2 dari code yang ditulis pihak lain, ok. Seperti kasus ListView yg di tulis Ariya. Kalau bug tracking dipakai untuk alat komunikasi, ok. issue tracking, ok. Tapi bukan untuk nyimpan bug2 dari code yang kita tulis sendiri.

Kalau ada sesuatu yang aneh dengan code yang kita tulis, asumsi pertama adalah masalah di API yg ditulis pihak lain, bukan di code kita.

Ini masalah dengan Google, Java, dan tool2 itu. Tapi terkadang ada sesuatu yang gak perlu kita CONTROL. Misalnya nomer telepon. Kita gak perlu harus ingat semua nomer telpon kan? Nomer HP sendiri juga aku gak ingat. :) Buat kasus2 ini menurutku gak apa2 pake tool. Tapi buat "playboy kabel" nomer telpon itu sangat penting. Jadi jangan mengandalkan tool kalau kasusnya begini. hehe :)

Gimana caranya untuk tetap punya CONTROL ini? yang masih kepikir itu adalah gontok2an. Tulis dokument detail. Keep using your own code (reusable). Trus pake kertas dan pensil. Coba nulis program di kertas, jangan pake computer, tanpa reference (GOOGLE), akan kelihatan seberapa besar kita dikendalikan sama computer dan google.

Enaknya pake kertas, kalau lagi mobile, gak perlu sok sibuk bawa2 laptop. Gak perlu cari2 internet. You control it yourself.

--
Low Tech Rules

Kirim email ke