อ่านหนังสือ The 8th Habit: From Effectiveness to Greatness: Miniature Edition
แล้วนึกขึ้นได้ว่า
ถ้าอยากเป็น Developer ที่ดี
ควรต้องฝึกฝน และ ปฏิบัติ อะไรบ้าง
จนเกิดเป็นอุปนิสัยของตนเอง
Developer ที่ดีน่าจะ
- เขียน code ที่มีคุณภาพสูง
- พัฒนาระบบให้อยู่ภายในงบประมาณที่กำหนด
- ทำให้ลูกค้ามีความสุข ด้วยการส่งมอบสิ่งที่ลูกค้าต้องการให้ดีที่สุด
1. Testing, Testing และ Testing เท่านั้น
มันคือสิ่งที่สำคัญมาก ๆ สำหรับ Developer ทุกคน Code ที่เขียนขึ้นมานั้นต้องถูกทดสอบเสมอ เพื่อทำให้เราค้นพบความผิดพลาดได้รวดเร็วที่สุด และใช้ค่าใช้จ่ายในการแก้ไขถูกมาก ลองคิดดูสิว่า ถ้าไปเจอความผิดพลาดในช่วงท้ายของการพัฒนา มันจะนรกขนาดไหน และค่าใช้จ่ายในการแก้ไขจะสูงมาก !! แต่ถ้าพูดถึง Automated test ในการพัฒนา software แล้ว มันอาจจะเป็นสิ่งที่ไม่น่าสนใจ และ ถูกละเลยไป แต่มันมีประโยชน์มาก ๆ นะ มาทำกันเถอะ2. Prototype และ Wireframe ต้องทำก่อนเขียน code เสมอ
ก่อนที่ Developer จะลงมือเขียน code ลงไปนั้น สิ่งแรกที่ควรทำก็คือ เข้าใจในสิ่งที่จะทำก่อน ต้องเข้าใจทั้ง Developer, ลูกค้า และผู้ที่เกี่ยวข้อง หนึ่งในวิธีการที่ดี คือ การวาดภาพ ซึ่งมักเรียกกันว่า Prototype และ Wireframe มันทำให้การพูดคุยชัดเจน และ เห็นภาพในสิ่งที่ทุกคนเข้าใจ ดังนั้นต้อง คิด คุย วาด ให้เข้าใจก่อนเริ่มลงมือเขียน code นะ3. หัดใช้งาน Online community และ forum หรือ web board บ้าง
เป็นสิ่งที่ Developer ขาดไม่ได้เลย การเข้าไปมีส่วนร่วมใน community ต่าง ๆ รวมทั้ง forum หรือ web board ต่าง ๆ เพื่อให้เกิดการแบ่งปัน ทั้งให้ และ รับ ไม่ใช่รับเพียงอย่างเดียวนะครับ เป็นเส้นทางหนึ่งสำหรับการพัฒนาความสามารถของ Developer ให้ดีขึ้น ทั้งการพูดคุย ทั้งการแก้ไขปัญหา ทั้งการตั้งคำถามที่ถูกต้อง ปล. ไม่ใช่เข้าแต่ google เพื่อค้นหาสิ่งที่อยากได้ แล้วก็กด link เข้าไปที่ stack overflow นะ4. หัดใช้เครื่องมือต่าง ๆ เพื่อทำให้ชีวิตง่ายขึ้น
ตัวอย่างเช่น IDE ที่ใช้งาน ก็ใช้ให้เต็มประสิทธิภาพบ้าง เช่นการใช้ short-key ให้เป็น เช่นการใช้ feature ต่าง ๆ ที่ให้มาบ้าง มิเช่นนั้น ไปใช้ text editor ดีกว่านะ รวมทั้งยังมีเครื่องมืออื่น ๆ อีก เช่น- เครื่องมือสำหรับวิเคราะห์ source code
- เครื่องมือสำหรับช่วยหา bug
5. ต้องมีเป้าหมายที่ชัดเจน
ในทุก ๆ product มันต้องมีเป้าหมายที่ชัดเจน ว่าต้องการแก้ไขปัญหาอะไร ว่ามีกลุ่มลูกค้าเป้าหมายเป็นใคร ถ้าไม่มีสิ่งเหล่านี้ จะสร้าง product อะไรออกมา และไม่มีทางจะประสบความสำเร็จได้ แต่ถามว่าในระหว่างการพัฒนาสามารถเปลี่ยนได้ไหม ตอบได้เลยว่า ได้ แต่ปลายทางยังต้องชัดเช่นเดิมนะ เหมือนกันกับ Developer ทุกคนต้องมีเป้าหมายที่ชัดเจน สำหรับการพัฒนาตัวเองนะ6. อย่าเร่ง อย่ารีบ
ในการพัฒนา software นั้น เราพบว่า ยิ่งเร่ง ยิ่งรีบ ยิ่งก่อให้เกิดความผิดพลาดจำนวนมากมาย บางครั้งการแก้ไขปัญหาในช่วงเร่งรีบ กลับกลายเป็นการสร้างปัญหา และต้องกลับมาแก้ไขต่อไป บ่อยครั้งจะใช้เวลาแก้ไขเยอะมาก ๆ แต่ Developer ที่ดี จะต้องสามารถรับมือ และ จัดการปัญหาเหล่านี้ได้ และต้องส่งมอบงานที่มีคุณภาพสูงอีกด้วย7. เรียนรู้อยู่อย่างสม่ำเสมอ
ในโลกของ IT นั้น เทคโนโลยีต่าง ๆ มันเปลี่ยนแปลงรวดเร็วมาก ดังนั้น สิ่งที่ Developer ทุกคนต้องทำ คือ การเรียนรู้ และ ติดตามเรื่องใหม่ ๆ อยู่อย่างเสมอ ทั้งจาก blog, feed, social และ forum/web board แต่ปัญหาหลัก คือ ข้อมูลมันเยอะมาก ๆ ดังนั้นให้คัดกรองเฉพาะเรื่องที่สนใจเท่านั้น8. อย่ากลัวที่จะผิดพลาด
มันเป็นคำพูดที่ใคร ๆ ก็พูดกันนะ แต่ว่ามันทำยากมาก ๆ เพราะว่า ไม่มีใครหรอกที่อยากจะทำผิดพลาด ถ้ามัวแต่กลัว ก็ไม่ได้ทำอะไรกันพอดี ดังนั้น ลงมือทำเถอะนะ แต่ถ้าผิดพลาดแล้ว ขอให้เรียนรู้จากมัน และท่องไว้เลยว่า จะไม่ยอมผิดซ้ำสองกับเรื่องเดิม ๆ อีก และอย่ามัวแต่โทษคนอื่น แล้วจะทำให้ Developer พัฒนาขึ้นอย่างรวดเร็วช่วงวันหยุด Devleoper มันปรับปรุง และ พัฒนาตัวเองกันนะReference Websites https://dzone.com/articles/the-top-8-habits-of-successful-developers http://www.slideshare.net/bright9977/the-8th-habit-by-stephen-r-covey-summary-13483021