Monday, September 17, 2007

น้องใหม่ กับ CruiseControl

เห็น Roof เปรยว่าอยากจะใช้ cruisecontrol
วันนี้ก็เลย capture ผลการใช้ในเดือนที่ผ่านมา มาให้ดู



เนื่องจากเดือนที่ผ่านมามีน้องใหม่เข้าร่วมโปรเจค 3 คน
เป็นสภาวะที่เหมาะมากสำหรับการใช้ cruise
เพราะน้องใหม่ส่วนใหญ่จะไม่ค่อยสนใจเรื่อง build รวม (แค่หัดใช้ framework ก็แย่แล้ว)
การใช้ cruise ก็เป็นวิธีที่ดีในการช่วยสร้าง discipline ให้น้องๆ
วิธีการก็ง่ายมาก
  1. ติดตั้ง cruisecontrol
  2. ลง cruisecontrol monitor ที่เป็น firefox extension
  3. ระหว่างทำงาน ผมก็คอยชำเลืองดู monitor, พอมันแดงปุ๊บ ผมก็จะพูดออกมาดังๆ "build fail โว้ย" เพื่อให้ทุกคนรับรู้
  4. ดูใน svn log ว่าก่อน fail มีใคร commit เข้ามาล่าสุด
  5. ประกาศเสียงดัง "xxx คุณ commit อะไรเข้ามาน่ะ" ด้วยน้ำเสียงเหี้ยมๆ

ข้อมูลเชิงสถิติ
  1. เปอร์เซนต์ของน้องใหม่ที่ทำ build fail คิดเป็น 100%
  2. สาเหตุหลักๆมี 2 เรื่อง
    1. commit ไม่ครบ เช่น commit interface แต่ไม่ commit Implementation
    2. มีปัญหากับ Fixtures ของ Testcase, (เป็นปัญหาเพราะใช้ test database รวม, ไม่เข้าใจ concept, อีกทั้งความผิดทางฝั่งพี่ๆ ที่ยังขี้เกียจสอนน้อง install database กับสอนการใช้งาน, ซึ่งจะทำให้น้องๆมี sandbox database ของตัวเอง)
  3. ถ้าดูจาก graph, ระยะเวลาปรับนิสัย ใช้เวลาประมาณ 3 อาทิตย์

Related link from Roti

3 comments:

roofimon said...

สุดยอดครับ ท่าทางที่ออฟฟิศ ผมจะแดงนำหน้าครับ

boyone said...

มาช่วยยืนยันว่าจริงแน่ๆ ครับ

noyzilla said...

น่าไปฝึกงานด้วยจัง