Using Pattern Matching with C# Switch Expression

Classification and decision logic are among the most common tasks in application code. Developers must routinely map input values to categories, dispatch behavior based on object types, and validate data against a set of business rules. Traditionally, these scenarios have been addressed using long if-else chains or switch statements that compare against constant values only. Modern C# offers a more expressive alternative: pattern matching. Introduced in C# 7.0 and expanded in every major language release since, pattern matching allows developers to evaluate types, properties, relations, and logical conditions within a single, declarative construct. The Limitations of Conditional Chains Consider a…

ลองใช้ driver.js เพื่อทำ product tours

Product Tours คืออะไร ? Product Tours วิธีการแนะนำการใช้งานแบบ Interactive เพื่อแนะนำให้ User เข้าใจวิธีการใช้งาน Product (Web / App) เพื่อลดความสับสน ลดสร้างความรู้สึกทีดีกับการใช้งาน โดย Product Tours จะมีชื่อเรียกอื่นๆ เช่น User Onboarding หรือ Feature Walkthrough โดยมีประโยชน์ ดังนี้ ข้อควรระวัง ควรเลือก Trigger ที่เหมาะสม เช่น แนะนำการใช้งานครั้งแรก driver.js คืออะไร ? driver.js – เป็น Library ที่มีขนาดเล็ก JavaScript และไม่มี Dependency กับ Lib อื่นทำให้ Lightweight เหมาะกับการเอามาสร้าง Product Tour โดยจากที่ลองใช้มาจุดเด่น Simple / Build-In Focus Effect ช่วยเน้นจุดสนใจแต่ละ Step ได้ / Keyboard Control / Responsive Sample use กรณีที่ใช้จาก cdn ตอนสร้าง driver object ต่างนิดหน่อย ต้องไปใช้จาก windows แทนการ import ลองใช้งานกับ nuxt 4 สำหรับใครที่อยากดู Code เต็มๆ ดูจาก Commit 51e48d4 ได้เลยครับ Reference

จดๆจาก Cloud Native Bangkok: Cloud Native AI (AUG-2026)

Building Inference Workloads with vLLM on Kubernetes (EKS) Speaker: Patis Piriyahaphan, Dasapich Thongnopnua, Mongkol Thongkraikaew, Fukiat Julnual 📌AI Project หลายๆอันที่เปิดตัวกันมาเยอะ และ ไปเงียบหายไป สาเหตุหลักๆมาจาก 2 ส่วน 📌รูปแบบของ AI Project มันเปลี่ยนไปด้วย 📌ทำไมต้อง K8S + Self Host 📌ถ้าเราจะ Self Host และติดต้องถึงอะไรบ้าง 📌Reference Arch ถ้าไม่รู้จะเริ่มยังไงดู Reference Arch ได้ 📌แล้ว ถ้าต้อง Scale Cluster ? มันช่วยได้จริงไหม ต้องเข้าใจก่อนการ Scale ช่วยได้ แต่ผู้ใช้เดิมต้องอยู่ที่ Node เดิม ส่วนคนใหม่ให้ไปที่ Node อื่น เพราะเคสของ AI มันที่เป็น Multi Turn มันต้องกับไปคุยต่อที่ Node เดิม ไม่งั้นมันจะหา KV Cache เดิมไม่เจอ แล้วเอ่อ ต้องมีของมาช่วยจัดการ นอกจากนี้ต้องเข้าใจกระบวนการทำการของ Model ด้วย จากปัญหาข้างต้นเอา KServe มาช่วยได้ รองรับ Inference ได้หลายตัวอย่าง vLLM / llm-d.ai เป็นต้น ซึ่งมาช่วย Auto Scale / Prefix Cache / Distribute Prefill Decode / Multi Node…

How to use RustDesk on local network

Many people know RustDesk as a TeamViewer or AnyDesk alternative built with Rust. Most guides out there show you how to pair it with Tailscale for remote access from anywhere. But what if you only need it on your local network (LAN)? This Blog has got you covered. At Host PC (Target) Connect from the Client PC Note: Direct IP connections on a local network are fast and do not require internet, but note that direct LAN IP connections may show as unencrypted by default Reference

สรุป Arise Tech Meetup #10: AI Agents in Action

Build an AI Knowledge Fabric for Your Organization Speaker Surasuk Oakkharaamonphong / Nitchakran Chaipojjana สำหรับมาอธิบายก่อน แล้วมาแชร์ Internal Tools ที่ใช้ภายในองค์กรครับ เพราะ AI ตอนนี้มันเก่ง แต่มันก็โ่งถ้าเราไม่สามารถให้ AI Agent มันอยู่ใน Context เดียวกับเราได้ แต่พื้นที่ของ Context ที่จำกัด เราทำยังไงไมให้ AI Agent Cognitive load แล้วมันหลอน ตรงนี้ Gartner 2026 บอกเสนอการจัดการ Context โดยดูจาก 3 มุมมอง 📌 Semantic – Ubiquitous Language (ภาษากลาง Idea มาจาก DDD) เพื่อป้องกันไม่ให้ AI ตีความไปเองจนผิดบริบท โดย 📌 Operational State / System State: ข้อมูลและเอกสารต้อง Up To Date และ เข้าถึง Enrioment ล่าสุด / RAGหาก AI ได้ข้อมูลที่เก่า จะทำให้ตอบคำถามผิดพลาด. 📌 Provenance – ตรวจสอบการทำงานย้อนหลัง (Audit trail) เพื่อดูว่า AI ตอบคำถาม ตัดสินใจ และทำงานอย่างไร เอาไปเป็น Feedback Loop เพื่อปรับปรุงแก้ไขบริบทให้ดีขึ้นในอนาคต ถ้าจะเริ่ม เราต้องเตรียมความพร้อมยังไง อันนี้มี Share Usecase ของ Verizon ทำ…

ฟังย้อนหลังจาก Claude Code Sharing #3

สำหรับ Blog นี้ ฟังย้อนหลังจาก live พอดีเพิ่งเห็น Feed พี่มาร์คแจ้งมา ตอนตี 3 เลยลองมาจด Recap นิดหน่อย เผื่อเราเองใช้ด้วยครับ สำหรับ Live มี FB และเดี๋ยวทีมงานเอาขึ้น YouTube นะ Quick Survey – AI Coding จากผลสำรวจผู้เข้าร่วมงานทั้ง Online / Onsite พบข้อมูลที่น่าสนใจเกี่ยวกับพฤติกรรมการใช้ AI Coding Leveraging iOS ecosystem for agentic coding Speaker ศิริวัชร์ คุณาพร สำหรับ Talk นี้ Key ที่สำคัญเลย อยากสร้าง Agent อยากใช้งานที่ไหนก็ได้ “Always Running & Always Accessible” จะได้ไม่ต้องแบก Mac Book ติดตัวไปตลอด โดยสั่งจาก iPad ซึ่งได้ Idea จาก Talk Claude Code that works is simple than you think 1. Stack สำหรับภาพรวมของ Flow จะประมาณนี้ครับ 2. Workflow ของ Speaker ไม่ได้ปล่อยให้ทำทั้งหมด การใช้งานจริงมีปัญหาเล็กน้อยมาปรับ เพราะ Speaker ได้ Recap มาตามนี้ นอกจากนี้ พอมันเป็น Ecosystem เราทำให้งานเรางานแล้ว ยังสามารถใชั App อื่นเข้ามาร่วมวงกับ Agent ได้ด้วย อย่าง…

คุณสมบัติของ Pragmatic Programmer

สำหรับ Blog นี้ขอสารภาพก่อนครับ มันเขียนดองไว้ใน Draft ตั้งแต่ปี 2016 เลย 5555 พอดีทยอยไล่ Clear พวก Draft แล้วดูว่าอันไหนยังใช้ได้ เลย Rewrite หรือ เติมให้มันสมบูรณ์ครับ มาเข้าเนื่อหากันดีกว่า 1. Early adopter/fast adapter Early adopter/fast adapter – กล้าลองสิ่งใหม่ รวมถึงปรับตัวได้ไว เพราะรอบตัวเราเทคโนโลนยีมันเปลี่ยนไปหมดเลย อย่างตอนเขียน Blog นี้ดองไว้ AI ยังไม่มี หลักๆต้องๆไปลองทำมือ Dojo + Google ตอนนี้ยอมรับเลยว่าตามไม่ทันในหลายๆเรื่องเหมือนกัน 2. Inquisitive Inquisitive – อยากรู้อยากเห็น มีการตั้งคำถาม (What / How) คือ อะไร แล้วมีการทำงานอย่างไร เช่น ถ้าเปลี่ยน library ตัวนี้จะมีผลอะไร หรือ ข้อมูล API เอามาได้ มาจากไหน 3. Critical thinker ผมมองว่า “กาลามสูตร” หรือหลักแห่งการไม่เชื่อโดยง่าย (Opanayiko) เค้าบอกกันมา แต่เราต้องมีต่อมเอ๊ะ แล้วตั้งสมมติฐานขึ้นมาด้วย ว่ามันเป็นอย่างนั้นจริงไหม เช่น การมี Critical thinker เราต้องมี Fundamental ด้วย ยิ่งในยุคที่ AI มาช่วยเยอะแล้ว Fundamental สำคัญมากๆ เพราะ AI มันมาเป็นก้อนเลย ต้องรู้ Fundamental มัน Gen มาตรงกับความต้องการเราไหม และดีกับการที่เราอยู่กับมัน หรือป่าว ? 4. Realistic  Realistic – อยู่กับปัจจุบัน และเข้าใจความเป็นจริงทั้งหมด การทำงานจริงนั้น เรา…

Recap: Lead Engineer Meetup 02 (English Ver)

I’ve also created an English version of this blog post. At the meetup, I met a foreign developer who discovered the event through ChatGPT and decided to attend, but he couldn’t understand Thai. So, I put together this English version so that AI can scrape it and help translate my other blog posts as well. Thai Ver: แวะมาฟัง Lead Engineer Meetup#02 Today, I attended two events. The first was the BrowserStack QA Meetup Group – Bangkok – AUG2026 (MCP / Web Perf) Thai Ver in the morning. In the afternoon, I came to this event at UnixDev. The view from…