Practice Archive

ทำไม Developer ควรให้เวลากับการลบ code ของตัวเองทิ้งไปบ้าง ?

Developer ทุกคนต้องเขียน code Developer รู้ดีกว่าการเขียน code ที่ดีเป็นอย่างไร Developer รู้ดีกว่าการเขียน code ที่ไม่ดีเป็นอย่างไร ดังนั้น Developer จำเป็นต้องพัฒนาและปรับปรุงการเขียน code อยู่ตลอดเวลา แต่ Developer รู้ไหมว่า เวลาส่วนใหญ่ที่ใช้ไปนั้น กลับเป็นการกลับไปแก้ไขและลบ code เก่าที่เคยเขียนไว้ ? ถ้าเป็นแบบนี้จริง ๆ แสดงว่า เราสูญเสียเวลาไปมากมาย ให้กับ code ที่ต้องถูกลบทิ้ง หรือ เขียนใหม่ !!! ทำไมนะ

Read More…

ว่าด้วยเรื่อง Spaghetti Pattern ในชุดการทดสอบ

ในการพัฒนา software นั้นเรามักจะได้ยินคำว่า Spaghetti code บ่อยมาก ๆ ซึ่งก่อให้เกิดปัญหาตามมามากมาย ส่งผลให้การดูแลรักษาระบบเป็นเรื่องที่ยาก และ ต้องใช้ค่าใช้จ่ายที่สูงมาก ๆ โดยปัญหานี้ก็ยังพบเจอในชุดการทดสอบอีกด้วย เนื่องจากทีมพัฒนาไม่สนใจ เนื่องจากทีมพัฒนาไม่ใส่ใจ เนื่องจากทีมพัฒนาไม่ทำการปรับปรุงให้ดีขึ้นอย่างสม่ำเสมอ หรืออาจจะไม่รู้ด้วยว่า สิ่งที่ทำลงไปนั้นมันก่อให้เกิดปัญหาอย่างไร ดังนั้นสิ่งที่ควรทำก็คือ ปรับปรุงชุดการทดสอบอย่างสม่ำเสมอ ทั้งการปรับปรุงโครงสร้าง ทั้งการลบชุดการทดสอบที่ไม่ได้ใช้งาน ทั้งเวลาในการทดสอบที่ต้องลดลง รวมทั้งปรับปรุงเรื่องความรู้ความสามารถอีกด้วย คำถามคือ ปัจจุบันเราทำการปรับปรุงกันบ้างหรือไม่ ? หรือเพียงทำให้มันเสร็จไปวัน ๆ เท่านั้นเอง !!

Read More…

สิ่งที่น่าสนใจจากบทความเรื่อง Last Line Effect

จากบทความเรื่อง Last Line Effect ทำการศึกษาผลกระทบที่มักเกิดกับการ Copy-and-Paste code ซึ่งแน่นอนว่า developer ส่วนใหญ่ชอบใช้งาน แถมใช้งานกันบ่อย ๆ อีกด้วย และบ่อยครั้งพบว่าการกระทำแบบนี้ก่อให้เกิดความผิดพลาดขึ้นมา หนึ่งในข้อผิดพลาดนั้นก็คือ code ใน block หรือบรรทัดท้าย ๆ นั่นเอง มาดูผลการศึกษากัน

Read More…

Developer ต้องเรียนรู้และฝึกฝนอยู่อย่างสม่ำเสมอ

มีโอกาสไปแบ่งปันความรู้สำหรับการเขียนโปรแกรมมานิดหน่อย แนวคิดและแนวปฏิบัติที่แนะนำไปก็คือ Developer ต้องทำการเรียนรู้อยู่อย่างสม่ำเสมอ Developer ต้องฝึกฝนอยู่อย่างสม่ำเสมอ ไม่ใช่เพียงสิ่งที่เรารู้เท่านั้น ยังรวมไปถึงสิ่งใหม่ ๆ และ สิ่งที่เรายังไม่รู้อีกด้วย ยิ่งโลกในปัจจุบันเทคโนโลยี ความรู้มันเปลี่ยนแปลงไปเร็วมาก ๆ ดังนั้นเรามาเรียนรู้กันเถอะ ปล. เรียนรู้เพื่อเข้าใจถึงการเปลี่ยนแปลง มิใช่การนำมาใช้แบบหลับหูหลับตานะครับ

Read More…

แบ่งปันเรื่อง Developer ที่ดี

มีโอกาสแลกเปลี่ยนแนวคิดเกี่ยวกับการเป็น developer ที่ดี (Good Developer) ซึ่งคำนี้มันไม่มีอยู่ในพจนานุกรมใด ๆ แต่เป็นสิ่งที่ developer ทุกคนต้องค้นหา เพื่อให้ประสบความสำเร็จและสนุกกับการพัฒนา มาดูกันว่ามีสิ่งใดบ้าง

Read More…

แนะนำการใช้งาน Version Control ที่ดี

ในการพัฒนา software นั้นสิ่งที่ขาดไปไม่ได้เลยก็คือ Version Control ใช้สำหรับจัดการการเปลี่ยนแปลงต่าง ๆ ทั้งการสร้าง การแก้ไข การลบ การ merge ตัวอย่างเช่น source code และ configuration แต่การใช้งาน Version Control ก็แตกต่างกันไป บางคนใช้เพื่อ backup code บางคนไม่เคย update ข้อมูลใน Version Control เลย บางคนนำ source code ของตัวเองไปทับคนอื่นเฉยเลย บางคนสร้าง branch เยอะมาก ๆ จนไม่รู้ว่า branch ไหนล่าสุด บางคนบอกว่าเลิกใช้มันแล้ว เพราะว่าเกิด conflict มากมาย บางคนบอกว่าใช้ไปทำไม ขอ thumbdrive มาแล้ว copy ไปสิเร็วกว่า

Read More…

สิ่งเน้นย้ำสำหรับ Developer ที่ดี

สรุปสิ่งที่ developer ที่ดีควรต้องรู้และเข้าใจ เพื่อลดปัญหาต่าง ๆ ที่จะเกิดขึ้นมา และน่าจะทำให้การพัฒนา software สนุกขึ้นมา มันอาจจะเป็นเรื่องที่ยากสักหน่อย แต่เชื่อว่ามันจะช่วย developer ได้นะ

Read More…

5ส สำหรับการพัฒนา software

คิดว่า developer หลาย ๆ คนน่าจะรู้จักกับ 5ส หรือ 5S 5S was developed in Japan and was identified as one of the techniques that enabled Just in Time manufacturing ซึ่งประกอบไปด้วย Seiri หรือ Sort/Clearing/Classify หรือ สะสาง Seiton หรือ Systematic Arrangement/Streamline/Simplify/Configure หรือ สะดวก Seiso หรือ Shine/Cleanliness/Clean and check หรือ สะอาด Seiketsu หรือ Standardize/Conformity หรือ สร้างมาตรฐาน Shitsuke หรือ Sustain the [&hellip

Read More…

ทำไม developer กลัวการ refactor code ?

คำถามที่น่าสนใจสำหรับการ refactor code หรือปรับปรุง code ให้ดีขึ้นว่า ทำไม developer ส่วนใหญ่ถึงกลัวกันนะ ? ไม่ว่าจะเป็น code ของตัวเองหรือ code ของคนอื่น ดังนั้นมาหาเหตุผลของความกลัวกันหน่อย

Read More…

สรุปการแบ่งปันเรื่อง Automated Deployment สำหรับ Mobile App

เพิ่งไปแบ่งปันเรื่องระบบ Automated deployment สำหรับ Mobile app มา โดยประกอบไปด้วยส่วนต่าง ๆ เช่น ระบบ API หรือ Backend ระบบ Mobile หรือ Frontend ทั้ง Android และ iOS มีทั้ง process และเครื่องมือที่ใช้งาน จึงนำมาสรุปไว้นิดหน่อย มาเริ่มกันเลย

Read More…