Programming Archive

[Clojure] ว่าด้วยเรื่องของ Vector และ List

หลังจากที่ทำความรู้จักกับภาษา Clojure ไปบ้างเล็กน้อยแล้ว ต่อมาก็เริ่มไปดู Data structure พื้นฐาน ทั้ง Vector, List, Map, Keyword และ Set โดยครั้งนี้จะเรียนรู้กับ Vector และ List กัน มาเริ่มกันเลย

Read More…

คำแนะนำสำหรับการเขียน code ในโลกของ Data Science

มีโอกาส review code ของชาว Data Science หรือบางที่เรียกว่า Data Science Team/Project ซึ่ง code ต่าง ๆ ที่เขียนขึ้นมานั้นมันทำงานได้ดีตามที่ต้องการ เขียนจากทั้งนักพัฒนาจริง ๆ และ ไม่ใช่จากสายนักพัฒนา แน่นอนว่า มันไม่แปลกอะไรเลย แต่พบว่า code ส่วนใหญ่มันส่งกลิ่นแปลก ๆ มากพอควร ถ้าเรายังอยู่กับ code แบบนี้ต่อไป คิดว่า ไม่น่าจะส่งผลดีต่อทีม และ บริษัทเลย ดังนั้นจึงให้คำแนะนำไปนิดหน่อย น่าจะพอมีประโยชน์ หรือ อาจจะทำให้เสียกำลังใจก็เป็นไปได้ Make it Work ก่อน แต่อย่าลืม Make it Right นะ

Read More…

มาใช้งาน Android KTX กันนะ (Preview version)

Android KTX คืออะไร ? คือ เป็นชุดของ API สำหรับการพัฒนา Android application ด้วยภาษา Kotlin ที่อยู่บน Android framework และ Support library ต่าง ๆ มีเป้าหมายเพื่อ ให้สามารถเขียน Kotlin ถูกต้องและกระชับตามหลักของภาษา (Less code, More fun) ดังนั้นมาลองใช้งานกันดู

Read More…

[Kotlin for Android] ว่าง ๆ มาดูจำนวน Method ของ Data Class กัน

หลังดูบอลมานั่งเขียน Android app ด้วยภาษา Kotlin กันหน่อย ซึ่งเป็นภาษาที่มีความสามารถที่ดีมากมาย หนึ่งในนั้นคือ Data Class ที่ Java Developer ถือว่าเป็น killer feature เลยนะ เพราะว่า ไม่ต้องมาเขียนหรือ generate getter/setter method เอง ดังนั้นทุกคนก็จะ convert พวก POJO class มาเป็น Data Class กันหมดเลย รู้กันไหมว่า ความสามารถนี้มันมาพร้อม cost นะ มาลองดูกัน

Read More…

สวัสดี Clojure มาเริ่มต้นเรียนรู้กัน ?

จากหนังสือ Getting Clojure ออก beta version มา (Build your functional skills one idea at a time) ซึ่งแบ่งเนื้อหาเป็น 3 ระดับคือ Basic, Intermediate และ Advance พบว่ามีให้อ่านฟรี ๆ 3 บทคือ [Basic] Hello Clojure [Basic] Functional Things [Advance] Read and Eval เนื่องจากไม่เคยเขียนภาษานี้เลย ดังนั้นก็ต้องเริ่มด้วย Hello Clojure สิ เริ่มกันเลย

Read More…

สวัสดี Go-kit ชุดเครื่องมือสำหรับพัฒนา Microservices ด้วยภาษา Go

ในช่วงที่ผ่านมาได้มีการพูดถึง Go-kit กันพอสมควร ทั้งในเรื่องของรูปแบบการเขียนที่ดี ทั้งในเรื่องของชุดเครื่องมือสำหรับการพัฒนา Microservices บางคนก็บอกว่าเหมือน Netflix เลย บางคนก็บอกว่าเหมือน Finagle ของ Twitter เลย

Read More…

สร้างระบบ Distributed Tracing ของระบบที่พัฒนาด้วย Spring Boot

Tracing เป็นอีกเรื่องหนึ่งที่ service หรือระบบงานต่าง ๆ ต้องมีเสมอ และมันมีประโยชน์ต่อระบบและทีมพัฒนาอย่างมาก แต่เราพบว่าระบบงานส่วนใหญ่ไม่มี หรือ มีน้อยมาก ๆ ดังนั้นเรามาลองสร้างระบบงานที่มีการ tracing การทำงานของระบบ

Read More…

สวัสดีภาษา Golang ใน AWS Lambda

ทาง AWS Lambda ได้ประกาศสนับสนุนภาษา Go แล้ว ดังนั้นเรามาเรียนรู้กันหน่อยว่า จะเริ่มต้นอย่างไร มีอะไรให้ลองใช้งานกันบ้าง

Read More…

บันทึกการใช้งาน Puppeteer สำหรับการทำ End-to-End Testing

Puppeteer เป็น Node library พัฒนาจาก Google เตรียมชุดของ API สำหรับการควบคุม Google Chrome (Headless และ Non-headless) หรือ Chromium ผ่าน DevTool protocol ที่สำคัญไม่ต้องทำงานผ่าน Web Driver อีกต่อไป ซึ่งถ้าใครใช้งานผ่าน Selenium จะรู้ว่ามันน่าเบื่อมาก ๆ เพราะว่าต้อง update version ตาม Google Chrome !!

Read More…

สรุปขั้นตอนในการพัฒนาระบบ REST API ด้วยภาษา Go ที่น่าจะดี

จากบทความเรื่อง Write a Kubernetes-ready service from zero step-by-step ทำการสรุป workflow หรือขั้นตอนของการพัฒนาระบบ REST API ด้วยภาษา Go เริ่มตั้งแต่การพัฒนา API แบบง่าย ๆ จากนั้นทำการเพิ่มความสามารถที่จำเป็นต้องมีทั้ง logging, health check และ graceful shutdown รวมไปถึงการ deploy ระบบงาน ซึ่งในตัวอย่างจะทำการสร้าง Docker Image และทำการ deploy ด้วย Kubernetes จึงทำการแปลและสรุปในแบบที่เข้าใจไว้นิดหน่อย มาเริ่มกันเลย

Read More…