golang Archive

Vite 0.12.0 ได้นำ esbuild มาใช้งาน

จาก blog เรื่องสวัสดี Vite แปลว่า เร็ว อ่านว่า วิท (vit)ในตอนนี้ได้ออก version 0.12.0 มาแล้วซึ่งได้นำ esbuild เข้ามาใช้สำหรับการแปลง TypeScript รวมไปถึง JSX และ TSX มาเป็น JavaScript codeแน่นอนว่า esbuild มันทำงานเร็วมาก ๆ

Read More…

เขาบอกว่า ไฟล์ binary ที่ได้จาก Go 1.15 ขนาดเล็กลงมาก ๆ

จาก Tweet ของคุณ Brad Fitzpatrick บอกว่าไฟล์ binary ที่ได้จากการ build ของ Go 1.15 ที่จะออกมาใน release ต่อไป ขนาดของไฟล์ลดลงไปเกือบ 50% เพื่อให้หายข้องใจก็ลองดูหน่อย ว่าเป็นจริงไหม

Read More…

สร้าง Build pipeline (Build -> Test -> Release) ของระบบงานด้วย GitHub Actions

เรื่องที่สำคัญของการพัฒนา software คือ ขั้นตอนการ build, test, release และ deploy เป็นอย่างไรบ้าง ในการพัฒนาที่ดี น่าจะต้องวางแผนและกำหนดขั้นตอนการทำงานไว้ ซึ่งเราจะเรียกขั้นตอนเหล่านี้ว่า Build pipeline (workflow) นำมาจากแนวคิดของ Continuous Integration และ Continuous Delivery โดยในบทความนี้ จะนำ GitHub Actions มาสร้างกระบวนการเหล่านี้ มาเริ่มกันเลย

Read More…

ลองใช้งาน Golang CI Lint เพื่อปรับปรุงคุณภาพของ code

อีกเรื่องที่น่าสนใจในการเขียน code ด้วยภาษา Go คือ Static Code Analysis ซึ่งมีเครื่องมือให้ใช้เพียบเลย แต่มีอีกตัวที่เพิ่มเห็นเลยขอลองสักหน่อย นั่นคือ Golang CI Lint

Read More…

ความสามารถที่น่าสนใจใน Go 1.14

หลังจากที่ทำการ update Go มาเป็น version 1.14 แล้วพบว่า มีความสามารถหลาย ๆ อย่างเปลี่ยนแปลงเข้ามา ทั้งสิ่งที่เข้ามาเปลี่ยนแปลงตัวภาษาคือ Overlapping interface รวมกับการเปลี่ยนแปลงหลัก ๆ ที่น่าสนใจเช่น

Read More…

Golang :: ทำการทดสอบแบบอัตโนมัติ เมื่อมีการเปลี่ยนแปลง

ปัญหา เมื่อทำการแก้ไข production code หรือ test code แล้ว ต้องทำการ run ชุดการทดสอบเองเสมอ ซึ่งน่าเบื่อมาก ๆ  ดังนั้นจึงอยากให้ทำการทดสอบแบบอัตโนมัติ (Continuous Testing) เมื่อมีการเปลี่ยนแปลง เหมือนกับพวก JavaScript framework ต่าง ๆ

Read More…

ว่าด้วยเรื่องของ Distributed tracing กับ OpenTelemetry แบบง่าย ๆ

จากที่เคยเขียน blog เรื่อง Jaeger ระบบ Distributed Tracing นั้น ใช้งานผ่าน library ชื่อว่า OpenTracing สำหรับจัดการรูปแบบข้อมูลของ tracing message และจัดเก็บข้อมูลด้วย Jaeger ในตอนนี้ OpenTracing ได้รวมกับ OpenCensus ในชื่อ OpenTelemetryจึงมาดูการใช้งานหน่อย เห็นเขาว่าง่ายดี

Read More…

Golang :: บันทึกการใช้งาน module จาก private Git repository

ปัญหา ต้องทำการเก็บและใช้งาน Go module แบบ private แน่นอนว่า มีทั้งภายในและภายนอกองค์กร ปัญหาที่เจอคือ ทำอย่างไรดี

Read More…

[Golang] มาดูหน่อยว่า go มีเครื่องมืออะไรให้ใช้งานบ้าง

คำถามที่น่าสนใจเกี่ยวกับ go command ของภาษา Go คือ มีอะไรให้ใช้บ้าง ? คำตอบคือ มีเยอะมาก ๆ ใช้ไม่น่าหมด แต่มาดูสิ่งที่น่าจะเป็นประโยชน์ และใช้งานบ่อย ๆ กันดีกว่า

Read More…

ลองทำการ build/deploy ระบบที่พัฒนาด้วย OpenFaaS

ระบบงานี่พัฒนาด้วย OpenFaaS นั้น ในการ build และ deploy จะสร้าง container image ในรูปแบบของ OCI นั่นทำให้เราสามารถ deploy ระบบได้หลากหลายวิธี ยกตัวอย่างเช่น Docker Docker + Buildkit Buildkit standalone Img Pouch Podman Buildah K3s Kanico เยอะไปไหนนะ ? แต่เรามาลอง deploy ด้วยบางตัวกันนิดหน่อย

Read More…