ว่าด้วยเรื่องของ Distributed tracing กับ OpenTelemetry แบบง่าย ๆ
จากที่เคยเขียน blog เรื่อง Jaeger ระบบ Distributed Tracing นั้น ใช้งานผ่าน library ชื่อว่า OpenTracing สำหรับจัดการรูปแบบข้อมูลของ tracing message และจัดเก็บข้อมูลด้วย Jaeger ในตอนนี้ OpenTracing...
View ArticleGolang :: ทำการทดสอบแบบอัตโนมัติ เมื่อมีการเปลี่ยนแปลง
ปัญหา เมื่อทำการแก้ไข production code หรือ test code แล้ว ต้องทำการ run ชุดการทดสอบเองเสมอ ซึ่งน่าเบื่อมาก ๆ ดังนั้นจึงอยากให้ทำการทดสอบแบบอัตโนมัติ (Continuous Testing) เมื่อมีการเปลี่ยนแปลง...
View Articleลองใช้งาน SwiftFormat ใน XCode กันหน่อย
ปัญหาที่มักเจอใน XCode สำหรับการเขียน iOS app ด้วยภาษา Swift คือ รูปแบบการเขียน code ที่แตกต่างกัน ซึ่งมักจะแก้ไขด้วย การพูดคุยและกำหนด rule ด้วยข้อตกลงหรือนำเครื่องมือมาใช้งาน ยกตัวแย่างเช่น Swift...
View Articleความสามารถที่น่าสนใจใน Go 1.14
หลังจากที่ทำการ update Go มาเป็น version 1.14 แล้วพบว่า มีความสามารถหลาย ๆ อย่างเปลี่ยนแปลงเข้ามา ทั้งสิ่งที่เข้ามาเปลี่ยนแปลงตัวภาษาคือ Overlapping interface รวมกับการเปลี่ยนแปลงหลัก ๆ ที่น่าสนใจเช่น...
View ArticleAndroid Studio 3.6 :: ใช้งาน view binding ไปเลย
ไปอ่านดู feature ที่น่าสนใจใน Android Studio 3.6 พบว่าเยอะมาก หนึ่งในนั้นคือ การใช้งาน view binding แทนการใช้งาน method findViewById() ไปเลย ที่สำคัญใช้งานได้ทั้ง Java และ Kotlin ด้วย...
View Articleเห็นรูปนี้แล้วคิดถึงคำว่า “ขอแก้นิดเดียวนะ”
พอดีเห็นรูปนี้ใน timeline แล้วทำให้คิดถึงคำว่า "ขอแก้นิดเดียวนะ ไม่เยอะหรอกนะ !!"หลังจากนั้นก็งานเข้าเลยเนื่องจากสิ่งเล็ก ๆ ที่แก้ไขนั้นก่อให้เกิดผลกีะทบมากมายตามมาถามว่าใครสร้างมันขึ้นมา...
View Articleแนะนำ Fastify สำหรับพัฒนา web application ด้วย Node.JS
วันนี้แนะนำ Fastify ซึ่งเป็น web framework พัฒนาสำหรับ Node.JS เป็นตระกูลเดียวกับ express, koa, hapi นั่นเอง มีเป้าหมายเพื่อ เป็นมิตรกับนักพัฒนามากขึ้น นั่นคือเพิ่ม productivity ลดการใช้ทรัพยากรต่าง ๆ...
View Articleทำการสรุปจากบทความเรื่อง The Elephant in the Architecture
จากบทความเรื่อง The Elephant in the Architecture นั้น ทำการอธิบายถึงที่มาที่ไปของปัญหาต่าง ๆ ที่เกิดขึ้นในการออกแบบ software ว่าเราทำการออกแบบด้วยแนวคิดอย่างไร ? ซึ่งแนวทางนั้นจะเทียบเคียงได้กับสำนวน...
View ArticleElastcisearch :: การ sync ข้อมูลกับ RDBMS (Relational Database Management...
คำถามถ้าต้องเก็บข้อมูลสำหรับการค้นหาและวิเคราะห์ไว้ใน Elasticsearch โดยข้อมูลต้นทางจะถูกเก็บไว้ใน RDBMS เช่น MySQL และ PostgreSQL เป็นต้น ถ้ามีการแก้ไขข้อมูลที่ RDBMS แล้ว จะทำการ sync หรือ update...
View Articleรูปว่าด้วยเรื่อง Loose coupling แต่ว่า …
เจอรูปที่น่าสนใจว่า เราให้ความสำคัญกับคำว่า Loose coupling มากจนเกินไปทำให้เกิดระบบแยกกันมาก ๆ ทำการเกิด communication และ relationship กันเยอะไปยิ่งกว่านั้นกลายเป็น dependency ที่เหนียวแน่นมาก ๆ...
View Articleเก็บมาแบ่งปันเรื่อง OWASP API Security Top 10 ปี 2019
ไปเจอว่า OWASP นั้นเพิ่มเรื่องของ API Security มาด้วย (ตามจริงมานานละ แต่เพิ่งเห็น) กับมีงานที่ต้องนำไปใช้นิดหน่อย เนื่องจากทุกระบบงานก็มีการใช้งาน API (Application Programming Interface) อยู่แล้ว...
View Articleลองใช้งาน Golang CI Lint เพื่อปรับปรุงคุณภาพของ code
อีกเรื่องที่น่าสนใจในการเขียน code ด้วยภาษา Go คือ Static Code Analysis ซึ่งมีเครื่องมือให้ใช้เพียบเลย แต่มีอีกตัวที่เพิ่มเห็นเลยขอลองสักหน่อย นั่นคือ Golang CI Lint การใช้งานก็ไม่ยาก...
View Articleเขียน .NET Core บน Jupyter Notebook ได้แล้วนะ
ทาง Microsofts ได้ปล่อย project ที่ชื่อว่า .NET Interactive ออกมา ซึ่งเป็นการรวมชุดเครื่องมือและ APIs ต่าง ๆ ที่ให้ผู้ใช้งานสามารถใช้งานแบบ interactive ผ่าน Web, Markdown และ Jupyter Notebook ได้...
View Articleมาแบ่งปันเครื่องมือการทำงานแบบ Remote กัน
ช่วงนี้การทำงานแบบ Remote หรือ Work From Home (WFH) หรือบางคนอาจจะแย้งว่า มันคือ Work From Coffee shop มากกว่า แน่นอนว่า การทำงานแบบ Remote ของทีมพัฒนา software จำเป็นต้องมีเครื่องมือที่ดี...
View Articleการนำแนวคิด DevOps มาปรับปรุงการทำงาน
มีโอกาสไปคลุกคลีกับคำว่า DevOps เยอะหน่อย พบว่าในแต่ละองค์กรนั้นจะเชื่อมั่นว่า DevOps เป็นแนวทางที่มีประโยชน์ ทั้งทางด้วย IT และ Business เนื่องจากช่วยทำให้คนในกลุ่มต่าง ๆ...
View Articleสร้าง Build pipeline (Build -> Test -> Release) ของระบบงานด้วย GitHub Actions
เรื่องที่สำคัญของการพัฒนา software คือ ขั้นตอนการ build, test, release และ deploy เป็นอย่างไรบ้าง ในการพัฒนาที่ดี น่าจะต้องวางแผนและกำหนดขั้นตอนการทำงานไว้ ซึ่งเราจะเรียกขั้นตอนเหล่านี้ว่า Build...
View Articleหนังสือฟรีเรื่อง What is SRE ?
ทาง O'reilly ได้ปล่อยหนังสือแบบฟรี ๆ ชื่อว่า What is SRE ? ซึ่งย่อมาจาก Site Reliability Engineering เป็นอีกเรื่องที่สำคัญของระบบงานในปัจจุบัน เพื่อช่วยทำให้ระบบงานมีความถูกต้องและน่าเชื่อถือ...
View Articleมาแกะดู GitHub app for Android กันหน่อย
เห็นว่า GitHub ได้ประกาศว่า ปล่อย GitHub app for mobile ออกมาซึ่งพัฒนาด้วย Native app เลย ดังนั้นมาแกะดู GitHub app for Android กันหน่อย ว่าพัฒนาด้วยอะไรบ้าง จากการไป download และลองเข้าไปลอง reverse...
View Articleสรุป web สำหรับติดตามข้อมูล COVID-19 ของไทย
https://www.who.int/emergencies/diseases/novel-coronavirus-2019/advice-for-public ทำการรวบรวม website สำหรับติดตามข้อมูล COVID-19...
View Articleสรุปการอ่านหนังสือ Elm Web Development บทที่ 1
บทที่ 1 เรื่อง Why is This a Great Time to Learn Elm ?ทำไมถึงเป็นช่วงเวลาที่ดีมาก ๆ สำหรับการเรียนรู้ Elm โดยจะมีเนื้อหาประกอบไปด้วยสิ่งต่าง ๆ ดังนี้ Elm คืออะไร จุดเด่นของ Elm สำหรับการพัฒนา frontend...
View Article