任何程式,無論是facebook到Gmail到憤怒鳥到高登,都有可能有寫錯的地方。寫錯的,行內叫Bug,直譯為「蟲」。
舉個例,你上facebook,想將肖像換成昨晚跟女神的合照,明明按了上載的掣,但肖像仍然是舊的那張宅樣,於是投訴。facebook團隊如果睬你的話,會自己試試,先確認不是你發雞盲看錯字按了取消。確認有問題,就開始調查原因,即「捉蟲」。找到原因之後,就「滅蟲」。
除蟲可以用上很多時間。見過有例子,蟲太多,編程人每天7小時,有6小時用在除蟲。除蟲時間越長,剩低寫新功能的時間越短,可以致命。整個除蟲過程,最花時間的,通常是捉蟲,即調查。要減低除蟲的時間,就要減低捉蟲的時間。查案的速度,取決於調整的人對出事的位置有多熟悉,越熟越快。對編程人來說,越遠的事情越陌生。也是說,越近期做出來的蟲,越快捉得到。
另一個因素,是調查的範圍。越老的蟲,經過越多的改動,調查範圍越闊,時間就越長。蟲是編程人的天敵。在以前公司,有一次,看見編程隊伍每人的電腦屏幕,都插着一個用兩把膠尺綁成的十字架(當時還只有厚屏幕)。我問是驅甚麼魔,原來當日有重大改動推出,大家都怕會喚醒大堆埋藏已久的蟲,希望借超自然力量擺平。