Java 9 :: สิ้นสุดการรอคอยอันยาวนาน

เป็นการรอคอยที่ยาวนานมาก ๆ สำหรับ Java 9 หลังจากที่ Java 8 ปล่อยออกมาเมื่อ 3 ปีที่แล้ว !! ดังนั้นมาดูกันหน่อยว่า มี feature หลัก ๆ อะไรกันบ้าง ? มีอะไรที่เปลี่ยนแปลงกันบ้าง ? มาดูกันเลย

Read More…

[Robotframework] Selenium2Library มันกลับไปรวมกับ SeleniumLibrary แล้วนะ

วันนี้เข้าไปที่ Selenium2Library แล้วพบว่า ตั้งแต่ version 3.x ขึ้นมานั้นจะเปลี่ยนไปใช้ชื่อ SeleniumLibrary แทน โดยที่ประวัติของ library ทั้งสองอาจจะตลกหน่อยคือ Selenium2Library นั้นถูก fork มาจาก SeleniumLibrary เนื่องจาก SeleniumLibrary ยังผูกติดกับ Selenium version 1 แต่เมื่อวันเวลาผ่านไปทั้งสองกลับมารวมกันใหม่

Read More…

วันนี้นักพัฒนาเขียน TODO และ FIXME ใน code แล้วหรือยัง ?

วันนี้นั่งดู code ช่วงบ่ายในขณะที่ฝนกำลังถล่ม กทม เจอชุด comment ที่น่าสนใจ ซึ่งนักพัฒนาทุกคนน่าจะเคยเห็นผ่านตามาแล้ว ทั้งเกิดจากการ generate แบบอัตโนมัติจาก IDE ทั้งเขียนจากคนอื่น รวมทั้งตัวเราเองด้วย นั่นคือ TODO และ FIXME คำถามที่น่าสนใจคือ มันคืออะไร ? เขียนไว้ทำไม ? ทำไมไม่มีใครมาลบมันออก ? มาหาคำตอบกัน

Read More…

คำตอบของ Dan Abramov จากคำถามใน HashNode

วันนี้ Dan Abramov มาตอบคำถามใน HashNode เกี่ยวกับ 2 ปีที่ทำงานที่ facebook ว่าได้เรียนรู้อะไรบ้าง ? ดังนั้นจึงทำการแปลและสรุป รวมทั้งเพิ่มเติมไว้นิดหน่อย น่าจะมีประโยชน์สำหรับนักพัฒนากันบ้าง

Read More…

ความแตกต่างระหว่าง Method และ Computed property ใน Vue.js

เช้านี้อ่านเจอการพูดคุยเรื่องของความแตกต่างระหว่าง Method และ Computed property ใน Vue.js ซึ่งเป็นความสามารถที่อาจจะทำให้สับสนได้ ดังนั้นมาดูรายละเอียด และ code ตัวอย่างกัน มาเริ่มกันเลย

Read More…

ความสามารถที่น่าสนใจใน Kotlin 1.1.4

ทางทีมพัฒนา Kotlin เพิ่งปล่อย Kotlin 1.1.4 ออกมาตั้งแต่วันที่ 15 เดือนสิ่งหาคม แต่ไม่มีเวลาดูเท่าไร ดังนั้นว่าง ๆ เลยมาสรุปความสามารถที่น่าสนใจกันหน่อย

Read More…

ว่าด้วยเรื่อง ลืม Configuration ของระบบงาน

นักพัฒนาน่าจะคุ้นเคยกับการจัดการเรื่องของ configuration ค่าต่าง ๆ ในระบบเป็นอย่างดี ยกตัวอย่างเช่น ข้อมูลสำหรับ database ข้อมูลสำหรับ URL ของ service ต่าง ๆ username และ password บ่อยครั้งมักจะทำการ hardcode เอาไว้ใน source code !!

Read More…

ปัญหาจากการนำ DevOps มาประยุกต์ใช้งาน

จากบทความเรื่อง Why DevOps Efforts Fail ? เป็นเรื่องเกี่ยวกับปัญหาเมื่อนำเอา DevOps มาประยุกต์ใช้ จึงนำมาแปลและสรุปไว้นิดหน่อย เป้าหมายของ DevOps นั้นเรียบง่ายมาก ๆ คือ ส่งมอบ software ให้ราบรื่น ส่งมอบ software ให้รวดเร็ว ส่งมอบ software ที่มีความน่าเชื่อถือ ส่งมอบ software ที่มีคุณภาพ

Read More…

ว่าง ๆ มาติดตั้ง Continuous Integration Server ใช้บนเครื่องด้วย Buildpal กัน

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

Read More…

มาเรียนรู้ Git จาก Sketchnote น่ารัก ๆ

วันนี้เห็นมีคน tweet เกี่ยวกับ Sketchnotes สำหรับอธิบายการทำงานของ Git ประกอบไปด้วย Git pull Git merge Git rebase สิ่งที่น่าสนใจคือ อธิบายการทำงานด้วยรูปแบบซึ่งน่ารักดี เลยนำมาฝาก เผื่อจะทำให้การอธิบายเรื่อง Git ไม่น่าเบื่ออีกต่อไป

Read More…