Author Archive

สวัสดี GraalVM จาก Oracle

GraalVM นั้นเป็นงานวิจัยจาก Oracle Lab และถูกใช้งานบน production ของ Twitter GraalVM นั้นมีเป้าหมายเพื่อให้เราสามารถ share runtime ให้กับภาษาต่าง ๆ แน่นอนว่า ไม่ใช่เพียงแค่ JVM เท่านั้นที่สามารถ run พวก Java, Kotlin, Scala, Groovy ได้ แต่ยังสนับสนุนภาษาอื่น ๆ เช่น JavaScript, Ruby, Python และ R นี่มัน Polyglot ชัด ๆ โดยที่ performance ของการทำงานยังคงสูงอยู่ มาลองใช้งานกันดู

Read More…

[Part 3] ว่าด้วยเรื่องของรูปแบบความสัมพันธ์ระหว่าง Boundary context ใน DDD

ในระบบงานหนึ่ง ๆ นั้นมักจะซับซ้อนเสมอ มี context หรือส่วนการทำงานจำนวนมาก ดังนั้นจำเป็นต้องแยกและกำหนดกรอบทำงานที่ชัดเจนให้แต่ละ context หรือเรียกว่า Boundary context แต่ปัญหาที่เกิดตามมาก็คือ แต่ละ Boundary context จะต้องติดต่อสื่อสาร หรือต้องทำการแลกเปลี่ยนข้อมูลกัน หรือเรียกว่าความสัมพันธ์ระหว่าง Boundary context กันอย่างไร

Read More…

ลองเขียน Unit test ในภาษา Lua

ลองนั่งเขียน Unit test สำหรับภาษา Lua นิดหน่อย ซึ่งพบว่าตัวภาษา Lua มีสรุป library ต่าง ๆ ไว้ที่ Lua Unit Testing  ที่สำคัญตัวภาษาเองตังแต่ version 5.0 ขึ้นมา มีชุดการทดสอบของภาษาให้ดูด้วย มันดีมาก แล้วทำไมนักพัฒนาจะไม่เขียนละ !!ดังนั้นมาลอง สวัสดีกันหน่อย

Read More…

[Part 2] สรุปการเรียน Domain-Driven Design ในเรื่องของการออกแบบ

จาก Part 1 เรื่องที่มาของ Domain-Driven Design (DDD)ต่อมาใน Part 2 เป็นเรื่อง workshop การออกแบบตามแนวทาง DDD แต่มีสรุปเรื่องของการออกแบบระบบงานใน class Domain-Driven Design แล้ว ที่ blog สรุป Class Domain-Driven Design by Roofimonผมจึงทำการสรุปในมุมมองเล็ก ๆ น้อย ๆ ดีกว่า เพื่อให้เห็นมุมมองในการออกแบบเพิ่มขึ้น

Read More…

[VDO] Java ยังคงฟรีอยู่ใช่ไหม ?

จากงาน QCon London 2019 นั้นมี session น่าสนใจเพียบเลยหนึ่งในนั้นคือ panel discussion เรื่อง Java is Still Free ?ผู้ตอบคำถามต่าง ๆ จากคนดูแล OpenJDK, Oracle และ IBMมาดูว่าเป็นอย่างไร

Read More…

สรุปเรื่อง Distributed tracing จากงาน Go Get TH Meetup ครั้งที่ 5

มีโอกาสไปแบ่งปันเรื่อง Distributed Tracing ในงาน Go Get TH Meetup ครั้งที่ 5 โดยเนื้อหาประกอบไปด้วย Observability ของระบบงาน Tracing ระบบงาน ตัวอย่าง code การใช้งาน tracing ด้วยภาษา Go มาเริ่มกันเลย

Read More…

Elasticsearch ใส่ระบบ security มาให้แบบฟรี ๆ แล้ว

ทางบริษัท Elastic ได้ประกาศทางบทความ Security Elasticseach is now freeนั่นหมายความว่า Elasticsearch ตัวใหม่ตั้งแต่ version 6.8 และ 7.1 ขึ้นมา จะมีความสามารถเรื่อง securirty มาให้ใช้งานแบบฟรี ๆ ไม่ต้องไป config ข้างนอกเองอีกแล้ว โดยมีความสามารถคร่าว ๆ ดังนี้

Read More…

เมื่อใดที่ไม่ควรเขียน code ?

อ่านหนังสือ The Art of Readable Code: Simple and Practical Techniques for Writing Better Code ไปเจอเรื่องที่น่าสนใจคือ ความสามารถหนึ่งที่สำคัญของ developer ที่ต้องมี นอกเหนือจากการ coding นั่นก็คือ รู้ว่าเมื่อใดที่ไม่ควรเขียน code เนื่องจากบ่อยครั้งมักจะเขียนเยอะไป

Read More…

ทำไมนำแนวคิด Microservices ไปใช้งานแล้ว กลับมีปัญหากว่าเดิม ?

ทำไมนำแนวคิด Microservices ไปใช้งานแล้ว กลับวุ่นวายหรือมีปัญหากว่าเดิม ? ส่วนใหญ่มักพูดกันว่า เมื่อเราทำงานแบ่งงานใหญ่ ๆ ออกเป็นงานเล็ก ๆ แล้ว ผลที่ได้มันจะแจ่มมากเพราะว่า พัฒนาและจัดการได้ง่าย และมักจะอธิบายในแง่ดีว่า ช่วยเพิ่ม productivity ของการพัฒนาให้ดีขึ้น Time to market เร็วมาก Scale ระบบได้เร็วมาก คุณภาพของระบบงานที่ดีขึ้น มีความยืดหยุ่นสูงทั้งเรื่องของคนและเทคโนโลยี

Read More…

เรียกใช้งาน gRPC service ผ่าน web browser กัน

อ่านบทความเรื่อง มาทำ gRPC Service ด้วย Go กัน ดูแล้วน่าสนใจดี ก็เลยคิดว่า น่าจะลองเรียก gRPC service จากฝั่ง web browser กันหน่อย นั่นคือการเรียกใช้งานผ่าน gRPC Web นั่นเอง ดังนั้นมาลองดูกันหน่อย

Read More…