<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Boonsong’s Blog</title>
    <link>https://boonsong.dev</link>
    <description>A product developer and obsessed with coding.</description>
    <language>th-TH</language>
    <item>
      <title>Event Storming: วิธีออกแบบ Software Architecture Partitioning</title>
      <link>https://www.boonsong.dev/event-storming-วิธีออกแบบ-software-architecture-partitioning</link>
      <description>ต้องอ่าน 2 บทความนี้ก่อน</description>
      <pubDate>2026-06-27T08:15:00Z</pubDate>
    </item>
    <item>
      <title>Software Engineering กับ Harness Engineering: 10x หรือ Technical Debt</title>
      <link>https://www.boonsong.dev/10x-หรือ-technical-debt</link>
      <description>ลองนึกภาพร้านก๋วยเตี๋ยวเจ้าเก่าที่ขายดีมา 20 ปี วันดีคืนดีพี่มาวินมารีวิวลง TikTok แล้วลูกค้าทะลักเข้ามา 10 เท่า เตาเดิม หม้อเดิม พนักงานเท่าเดิม แต่ Order เพิ่...</description>
      <pubDate>2026-05-26T00:00:00Z</pubDate>
    </item>
    <item>
      <title>Event Storming กับคนแคระทั้งเจ็ด ตอนที่ 1</title>
      <link>https://www.boonsong.dev/event-storming</link>
      <description>หากเปรียบ Event Storming เป็นนิทานเรื่องหนึ่ง บทเกริ่นนำคงจะเป็นการกล่าวถึง 3 ดินแดนสำคัญของจุดเริ่มต้นการเดินทางในครั้งนี้ ดินแดนเหล่านั้นได้แก่ Big Picture Le...</description>
      <pubDate>2026-02-26T00:00:00Z</pubDate>
    </item>
    <item>
      <title>AI คือ Auto Suggestion Text ใน Keyboard?</title>
      <link>https://www.boonsong.dev/ai-auto-suggestion-keyboard</link>
      <description>รู้หรือไม่ว่าจริงๆ AI มันมีมานานแล้วนะ เวลาที่เราพิมพ์แล้ว Keyboard ในโทรศัพท์จะขึ้น Suggestions นั่นคือ AI มาทำความเข้าใจว่า AI เดาคำอย่างไร จาก Language Models ถึง Large Language Models</description>
      <pubDate>2026-02-17T12:00:00Z</pubDate>
    </item>
    <item>
      <title>เมื่อผมต้องให้ Feedback เพื่อนร่วมงาน</title>
      <link>https://www.boonsong.dev/feedback</link>
      <description>ธรรมชาติของมนุษย์ล้วนปรารถนาจะเติบโต เรียนรู้ และก้าวข้ามข้อผิดพลาดในตนเอง บ่อยครั้งเรากลับไม่ล่วงรู้ว่าพฤติกรรมบางอย่างได้ส่งผลกระทบหรือสร้างความเจ็บปวดให้ผู้อ...</description>
      <pubDate>2025-09-11T00:00:00Z</pubDate>
    </item>
    <item>
      <title>What is Software Architecture?</title>
      <link>https://www.boonsong.dev/what-is-software-architecture</link>
      <description>โดยปกติผมมักจะเริ่มเนื้อหาด้วยการอธิบายความหมายของหัวข้อที่ต้องการจะเขียน เช่น Software Architecture คืออะไร แต่สำหรับครั้งนี้ ผมขอสารภาพเลยว่าผมก็เองก็ยังไม่สา...</description>
      <pubDate>2025-07-24T00:00:00Z</pubDate>
    </item>
    <item>
      <title>“Loop” ตอนที่ 2 Primitive Obsession — Code Smell</title>
      <link>https://www.boonsong.dev/loop-2</link>
      <description>“คันหลังนะหนุ่ม ลุงจะไปส่งแก๊ส” เห็นได้ชัด ผมไม่ได้โชดดีเหมือนวันก่อน เมื่อถึงตึกผมได้แต่ถอนหายใจเบาๆ อีกครั้งและเดินไปแลกบัตรขึ้นตึกที่ฝ่ายต้อนรับ</description>
      <pubDate>2025-04-29T00:00:00Z</pubDate>
    </item>
    <item>
      <title>Implementing Simple Business Logic</title>
      <link>https://www.boonsong.dev/implementing-simple-business-logic</link>
      <description>องค์กรประกอบด้วยหน่วยงานย่อย ๆ หลากหลายส่วน หากนิยามหน่วยงานย่อย ๆ เหล่านั่นว่า “Subdomain” การที่องค์กรจะทำงานเพื่อให้บรรลุผลสำเร็จตามเป้าหมาย ต้องอาคัยแรงผลัก...</description>
      <pubDate>2025-03-25T00:00:00Z</pubDate>
    </item>
    <item>
      <title>When to use Event Modeling?</title>
      <link>https://www.boonsong.dev/when-to-use-event-modeling</link>
      <description>หลังจากผ่านกระบวนการศึกษาและหาความเรียนรู้ ก้าวต่อไปคือการนำไปใช้ให้เกิดประโยชน์</description>
      <pubDate>2024-10-20T00:00:00Z</pubDate>
    </item>
    <item>
      <title>“Loop” ตอนที่ 1 ทำงานวันแรก</title>
      <link>https://www.boonsong.dev/loop-1</link>
      <description>ในโลกที่หมุนวนอย่างไม่หยุดนิ่ง ทั้งการเงิน เทคโนโลยี และการตัดสินใจที่ต้องเร่งรัด ลูป คือชายหนุ่มที่ก้าวเข้ามาสู่เส้นทางนี้ด้วยความมุ่งมั่น เขาเริ่มทำงานวันแรกใ...</description>
      <pubDate>2024-09-28T00:00:00Z</pubDate>
    </item>
    <item>
      <title>Saga Pattern: Fundamentals</title>
      <link>https://www.boonsong.dev/saga-pattern-fundamentals</link>
      <description>Saga ถูกพูดถึงครั้งแรกในปี 1987 () โดย Hector Garcia-Molina และ Kenneth Salem พวกเขาเสนอวิธีการแก้ปัญหา LLTs (Long Lived Transactions) และถูกพูดถึงอีกครั้งในปี ...</description>
      <pubDate>2024-06-23T00:00:00Z</pubDate>
    </item>
    <item>
      <title>บทความนี้ชื่อว่า Keycloak คือ, SAML คือ, OAuth และ OpenID Connect คือ</title>
      <link>https://www.boonsong.dev/keycloak-saml-oauth-openid</link>
      <description>Keycloak เป็นระบบการจัดการข้อมูลซึ่งพัฒนาโดย Red Hat ช่วยให้การรักษาความปลอดภัยสำหรับแอปพลิเคชันและบริการที่ทันสมัยเป็นเรื่องง่าย บลา ๆๆๆ</description>
      <pubDate>2024-05-26T00:00:00Z</pubDate>
    </item>
    <item>
      <title>Authorization code with PKCE for Flutter</title>
      <link>https://www.boonsong.dev/authorization-code-with-pkce-for-flutter</link>
      <description>OAuth 2.0 แนะนำให้ใช้ Authorization code ด้วย Proof Key for Code Exchange () มันคืออะไร ทำไมต้องใช้ และมันทำงานอย่างไร</description>
      <pubDate>2024-05-01T00:00:00Z</pubDate>
    </item>
    <item>
      <title>Integrating EDA with Legacy systems</title>
      <link>https://www.boonsong.dev/integrating-eda-with-legacy-systems</link>
      <description>ในบทความนี้เราจะพาเปิดคอม เข้าสู่ท้องของน้อง Moby Dock ปลาวาฬตัวใหญ่ยักษ์ โดยมีสมาชิกคือเจ้า Gopher ผู้ปกครองดินแดน Legacy systems ที่มีความปรารถนานำส่งสารสำคัญให้เจ้า Rocket Turtle ในดินแดนแห่งใหม่นามว่า Event driven architecture</description>
      <pubDate>2024-04-21T17:23:13Z</pubDate>
    </item>
    <item>
      <title>SSO Authentication ด้วย Sidecar Containers</title>
      <link>https://www.boonsong.dev/sso-authentication-with-sidecar-ontainers</link>
      <description>ในบทความนี้เราจะมาประยุกต์ใช้ Sidecar pattern เพื่อนำ Logic ของ Authentication ออกจาก Application Layer พร้อมกับ Reuse ใช้กับ Service อื่นๆ โดยที่ไม่ต้องสนใจเรื่องของ Programming Language</description>
      <pubDate>2024-01-09T09:09:13Z</pubDate>
    </item>
    <item>
      <title>Pattern: Strangler Fig Application #1</title>
      <link>https://www.boonsong.dev/strangler-fig-application-1</link>
      <description>วิธีการ migrate จาก monolith ไปสู่ microservices แบบไปทีละเล็กไปทีละน้อย</description>
      <pubDate>2023-11-30T01:10:51.767Z</pubDate>
    </item>
    <item>
      <title>Technical Debt กับ Scrum Teams</title>
      <link>https://www.boonsong.dev/technical-debt-and-scrum-teams</link>
      <description>Technical Debt ถูกเรียกครั้งแรกโดย Ward Cunningham ในปี 1992 มาทำความรู้จักและลองมองจากมุมของ scrum teams กัน</description>
      <pubDate>2023-08-03T17:27:13Z</pubDate>
    </item>
    <item>
      <title>Event-carried state transfer</title>
      <link>https://www.boonsong.dev/event-carried-state-transfer</link>
      <description>Event-carried state transfer (ECST) มักนำมาใช้เมื่อเราไม่ต้องการให้ระบบยึดติดกันเกินไป ในบทความนี้จะมาพูดถึงรูปแบบของ ECST และ ตัวอย่าง Message schema ที่นิยมใช้กัน</description>
      <pubDate>2023-01-22T11:41:13Z</pubDate>
    </item>
    <item>
      <title>Business domain and Subdomain</title>
      <link>https://www.boonsong.dev/business-domain-and-subdomain</link>
      <description>ก่อนที่เราจะเริ่ม Implementing Domain-Driven Design ควรรู้จัก Business domain และ Subdomain ซึ่งเป็นเรื่องสำคัญที่ทำให้เราเข้าใจองค์กรของเรามากขึ้น</description>
      <pubDate>2023-01-08T11:50:13Z</pubDate>
    </item>
    <item>
      <title>Active Record to Domain Model</title>
      <link>https://www.boonsong.dev/active-record-to-domain-model</link>
      <description>Domain Model เป็นวิธีการที่ให้ความสำคัญกับ business logic เป็นอันดับแรก ไม่ว่าจะเป็นชื่อตัวแปร ชื่อ function สิ่งเหล่าเราได้จาก domain experts</description>
      <pubDate>2022-12-28T09:09:13Z</pubDate>
    </item>
    <item>
      <title>Transaction Script to Active record</title>
      <link>https://www.boonsong.dev/transaction-script-to-active-record</link>
      <description>Transaction Script และ Active record คือ implementing domain logic ที่ได้รับความนิยมมาอย่างยาวนาน เราจะมาทำความรู้จักและค่อยๆ ทำความเข้าใจไปที่ละ step พร้อมตัวอย่าง code การเปลี่ยนจาก Transaction Script ไป Active record</description>
      <pubDate>2022-12-28T09:09:13Z</pubDate>
    </item>
    <item>
      <title>Event notifications</title>
      <link>https://www.boonsong.dev/pattern-event-driven-architecture-2</link>
      <description>Event notifications หนึ่งใน pattern ที่ได้รับความนิยมสำหรับ EDA ในบทความนี้เราจะมาทำความรู้จักความหมายและตัวอย่างของ messages</description>
      <pubDate>2022-12-12T20:09:13Z</pubDate>
    </item>
    <item>
      <title>Liveness, Readiness and Startup Probes</title>
      <link>https://www.boonsong.dev/kubernetes-liveness-readiness-and-startup-probes</link>
      <description>บางครั้ง application ก็ไม่สามารถเริ่มทำงานได้ทันที ถ้า kubernetes restart container เพราะว่า application ยัง setup ไม่เสร็จจะเกิดการ loop restart ได้</description>
      <pubDate>2022-12-05T16:04:13Z</pubDate>
    </item>
    <item>
      <title>Should Use: เอกพจน์ or พหูพจน์ ? - REST API</title>
      <link>https://www.boonsong.dev/singular-or-plural-naming</link>
      <description>ปัญหาการตั้งชื่อด้วยคำ Nouns ที่เป็น เอกพจน์(singular) หรือ พหูพจน์(plural) ยังเป็นสิ่งที่โต้เถียงกัน ว่า GET /resources หรือ GET /resource ใครถูก? ใครผิด?</description>
      <pubDate>2022-07-01T12:04:13Z</pubDate>
    </item>
    <item>
      <title>Long Method</title>
      <link>https://www.boonsong.dev/smells-long-method</link>
      <description>code smells ที่น่ารักอีก 1 ตัว มาดูวิธีจัดการกับความน่ารักของ smell นี้กัน โดยอ้างอิงจากหนังสือ Refactoring</description>
      <pubDate>2022-06-25T17:04:13Z</pubDate>
    </item>
    <item>
      <title>Widgets vs helper methods</title>
      <link>https://www.boonsong.dev/widgets-vs-helper-methods</link>
      <description>เปรียบเทียบระหว่าง Widgets กับ helper methods การ Refactoring และ Effort ที่คุณต้องจ่าย</description>
      <pubDate>2022-06-04T11:04:13Z</pubDate>
    </item>
  </channel>
</rss>
