วันนี้เราลบ code ที่ไม่ใช้งาน แล้วหรือยัง ?
เพิ่งไปแบ่งปันเรื่องของ Code Quality มีหนึ่งเรื่องที่น่าสนใจคือ dead code หรือ code ที่ไม่ถูก execute หรือ code ที่ไม่ถูกใช้งาน หรือ code ที่ comment ไว้ ทั้ง ๆ ที่ใช้ version control หรือหนักสุดคือ...
View Articleบันทึกการเรียน Kafka 101 :: Part 1 เรื่อง Messaging system
วันนี้ได้เข้าเรียน Kafka 101 ที่ SCK Dojo ซึ่งสอนโดย Surasit Neng Liangpornrattana ซึ่งหัวข้อต่าง ๆ ที่ได้เรียนประกอบไปด้วย เรื่องของ Messaging system ทำไมต้องใช้งาน Kafka ด้วย RabbitMQ vs Kafka...
View ArticlePart 2 :: ว่าด้วยเรื่องความรู้พื้นฐานของ Kafka
หลังจากที่ใน part 1 นั้นได้ทำการสรุปเรื่องของ Messaging system จากการไปเรียนมา มาใน blog นี้จะทำการสรุปเกี่ยวกับความรู้พื้นฐานของ Kafka ว่ามีที่มาที่ไปอย่างไร ? ว่ามี architecture อย่างไร ?...
View Articleมาสร้าง Go Module แบบง่าย ๆ ใน Go 1.11 RC2 เล่นกัน
ตอนนี้ Go 1.11 ได้ออก RC2 มาแล้ว นั่นหมายความว่าตัว final ใกล้เข้ามาทุกที ดังนั้นมาลองสร้าง module ด้วยภาษา Go กันหน่อย ซึ่งเป็น feature ใหม่ที่น่าสนใจ โดยใน blog นี้จะมีเรื่องต่าง ๆ ดังนี้ การสร้าง...
View Articleความรู้พื้นฐานเกี่ยวกับ Istio
ช่วงนี้พูดถึง Istio กันเยอะ แต่คำถามที่น่าสนใจคือ มันอ่านว่าอะไร ? มีทั้ง ไอ เอส ที ไอ โอ และ อิท ทิ โอ อ่านอย่างไรก็ช่างมันนะ มันคืออะไร ? มันมาจัดการ service mesh ไง แล้ว service mesh คืออะไร ?...
View Articleมาดูโครงสร้าง code ของ Google I/O 2018 app for Android กัน
จาก session Architecture Components in Real Life (Android) ในงาน Mobile Conf 2018 มีคำถามหนึ่งที่น่าสนใจคือ ทาง Google ได้ปล่อย source code ของ Google I/O 2018 app ออกมา เหล่า Android developer...
View Articleสวัสดี WebAssembly กับ Go 1.11
ภาษา Go 1.11 ออกตัวเต็ม ๆ มาแล้ว หนึ่งใน feature ที่เพิ่มเข้ามานั่นคือ การทำงานร่วมกับ WebAssembly แต่ยังเป็น experiment feature นะ จากความสามารถนี้ ทำให้เราสามารถพัฒนาระบบด้วยภาษา Go ทำการ compile...
View Articleแก้ปัญหาขนาดหน้าจอของ Google Chrome Headless
ในการทดสอบระบบ web application ผ่าน Robotframework ด้วย Library ชื่อว่า SeleniumLibrary นั้น เราสามารถทดสอบบน Google Chrome แบบ Headless ได้ (selenium 3.8 และ seleniumlibrary 3.1 ขึ้นไปนะ)...
View Articleทำการ deploy ระบบงานกับ Istio กัน
หลังจากอธิบายเกี่ยวกับ Istio ไปนิดหน่อย ดังนั้นเพื่อให้เห้นภาพชัดเจนขึ้น มาลองติดตั้ง และ deploy ระบบงานกันดีกว่า โดยใน blog นี้ทำการติดตั้งบน Kubernetes engine ของ Google Cloud เนื่องจากติดตั้งบน...
View Articleสรุปสิ่งที่น่าสนใจจากหนังสือ Accelerate: The Science of Lean Software and DevOps
ช่วงวันหยุดหยิบหนังสือ Accelerate: The Science of Lean Software and DevOps มาอ่าน เป็นหนังสือที่สรุปส่วนประกอบต่าง ๆ ที่ช่วยให้บริษัท IT ขับเคลื่อนได้อย่างดี (high-performance) ทั้งองค์กรและทีม...
View Articleแนะนำหนังสือ online :: Learn Go with Tests
มีหนังสือ online สอนเกี่ยวกับการพัฒนาระบบงานด้วยภาษา Go ที่น่าสนใจเพียบ ยกตัวอย่างเช่น Building Web Application with Golang Go by Example A Tour of Go แต่ก็มีอีกเล่มที่น่าสนใจนั่นคือ Learn Go with...
View Article[Part 1] ว่าง ๆ มาลองพัฒนาระบบด้วยภาษา Python ตามแนวคิด 12 Factor กัน
ช่วงหลังมีการพูดถึง The Twelve -Factor App กันเยอะ แต่ไม่ค่อยบอกหรือแสดงให้ดูว่ามันทำอย่างไรบ้าง ? ดังนั้นเราลองมาพัฒนาระบบงานแบบง่าย ๆ ตามแนวคิดนี้กันดู (ตามความเข้าใจที่มีนะ ผิดถูกก็ตามข้างล่างนี้)...
View Article[Part 2] มาต่ออีก 4 ข้อ สำหรับการพัฒนาระบบตามแนวคิด 12 Factor
หลังจากที่ลองพัฒนาระบบด้วยภาษา Python ตามแนวคิด The Twelve Factor App มาแล้ว 4 ข้อคือ Codebases Dependencies Configs Backing services ซึ่งยังเหลืออีก 8 ข้อ ดังนั้นมาต่อกันให้จบ โดยทั้ง 8...
View Article[Part 3] ภาคจบสำหรับการพัฒนาระบบตามแนวคิด 12 Factor
มาทำความรู้จักกับ 4 ข้อสุดท้ายสำหรับ The Twelve-Factor App โดยในส่วนนี้จะเป็นส่วนของผู้ดูแลระบบ ประกอบไปด้วย Disposability Dev/prod parity Logs Admin processes มาดูในรายละเอียดกัน ข้อที่ 9...
View Articleปรับปรุง productivity ด้วย code ที่ดีกันหน่อย
Code ที่ดีนั้นอาจจะไม่ได้สร้างหรือส่งมอบ product ที่ดีเสมอไป แต่ code ที่ดีมันกลับทำให้คนที่ดูแลง่าย และ มีชีวิตที่สงบสุขมากขึ้น คำว่า Code ที่ดีนั้นมีหลายรูปบบ หลายความหมาย ตามแต่ประสบการณ์ ความรู้...
View Articleใส่สีให้กับการทดสอบสำหรับภาษา Python
ปัญหาและความต้องการ หลังจากที่ทำการ run test ที่พัฒนาด้วยภาษา Python ซึ่งใช้งานผ่าน module unittest เมื่อทำการ run ได้แล้วพบว่า ผลลัพธ์ที่ออกมามันไม่สวย นั่นคือไม่มีสีสันอะไรเลย ดูลำบาก [code]...
View Articleว่าด้วยเรื่องของ Goroutine และ Channel
ไปฟังเรื่อง Goroutine, Channel และ Parallelism จากงาน Go Get # 2 จากกลุ่ม Golang Thailand ก็เลยกลับมานั่งสรุปกันนิดหน่อย เพราะว่าเป็นเรื่องที่มีโอกาสใช้งานน้อยมาก ๆ ตั้งแต่ทำ project ด้วยภาษา Go...
View Articleสิ่งที่ทำให้นักพัฒนาไม่พอใจ !! สุดท้ายก็ …
นั่งคุยกับนักพัฒนามาพอสมควร ได้รับรู้ปัญหาเกี่ยวกับสิ่งที่ทำให้นักพัฒนาไม่พอใจ สุดท้ายทำให้นักพัฒนาเหล่านั้นต้องเปลี่ยนที่ทำงาน !! เหมือนเป็นศาลาคนเศร้าเลย มาดูกันว่ามีอะไรบ้าง เจอแต่เทคโนโลยีเก่า ๆ...
View Articleมา Vue.js Thailand Meetup เลยมา TDD กันหน่อย
มาร่วมงาน Vue.js Thailand Meetup #4 ของกลุ่ม Vue.js Thailand บอกตามตรงว่า ไม่เคยใช้งานมันเลย ดังนั้นเพื่อให้เข้าใจมากขึ้นมาลองศึกษากันบ้าง เริ่มด้วย TDD with Vue.js กันหน่อย มาเริ่มกันเลย ขั้นตอนแรก...
View Articleมาดูผลการสำรวจเรื่อง High-performing DevOps 2018 จาก DORA กัน
จากบทความเรื่อง New research: what sets top-performing DevOps teams apart ทำการสรุปผลการสำรวจเรื่อง Accelerate: State of DevOps 2018: Strategies for a New Economy ว่าด้วยเรื่องของผลของการนำแนวคิด...
View Article