<?xml version="1.0" encoding="UTF-8" ?> <?xml-stylesheet type="text/xsl" href="rss.xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel> <title>Pongsak Khamdee</title><description>Technology is changing over time like the human age, documenting the finding helps me remember my footstep</description><link>https://pkhamdee.blog/</link><atom:link href="https://pkhamdee.blog/feed_rss_updated.xml" rel="self" type="application/rss+xml" /> <managingEditor>Pongsak Khamdee</managingEditor><language>en</language> <pubDate>Fri, 29 May 2026 08:58:20 -0000</pubDate> <lastBuildDate>Fri, 29 May 2026 08:58:20 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.19.0</generator> <image> <url>https://github.com/pkhamdee.png</url> <title>Pongsak Khamdee</title> <link>https://pkhamdee.blog/</link> </image> <item> <title>Business Outcomes Lean Canvas: The Definitive Guide to Organizational Transformation</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Business Outcomes Lean Canvas: The Definitive Guide to Organizational Transformation&lt;/h1&gt; &lt;p&gt;Most digital transformation initiatives fail — not because of bad technology choices, but because nobody took the time to clearly articulate &lt;strong&gt;why&lt;/strong&gt; the change is needed, &lt;strong&gt;what&lt;/strong&gt; success looks like, and &lt;strong&gt;how&lt;/strong&gt; the pieces connect. The Business Outcomes Lean Canvas is a structured one-page framework that forces a team to answer all of those questions before a single line of code is written or a single vendor is selected.&lt;/p&gt; &lt;p&gt;This guide is the exhaustive reference — from the theory behind the canvas to a workshop you can run next week.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/business-outcomes-lean-canvas-the-definitive-guide-to-organizational-transformation/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/business-outcomes-lean-canvas-the-definitive-guide-to-organizational-transformation/</guid> </item> <item> <title>Nutanix Cloud Platform Overview</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Nutanix Cloud Platform Overview&lt;/h1&gt; &lt;p&gt;Most enterprises still run their workloads on a tangle of separate systems — one vendor for compute, another for storage, another for networking, yet another for virtualization. Managing all of that is expensive, slow, and fragile. Nutanix was founded on one radical idea: &lt;strong&gt;collapse all of those layers into a single, software-defined platform&lt;/strong&gt; that runs on commodity hardware and is as simple to operate as a public cloud.&lt;/p&gt; &lt;p&gt;In 2026, Nutanix Cloud Platform (NCP) has grown from that original idea into a comprehensive stack spanning private cloud infrastructure, multi-cloud management, enterprise Kubernetes, database-as-a-service, AI infrastructure, and unified storage — all managed through a single pane of glass.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/19/nutanix-cloud-platform-overview/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/19/nutanix-cloud-platform-overview/</guid> </item> <item> <title>What Is DevOps? The Complete Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;What Is DevOps? The Complete Guide&lt;/h1&gt; &lt;p&gt;Ask ten engineers what DevOps is and you&#39;ll get ten different answers.&lt;/p&gt; &lt;p&gt;&#34;It&#39;s CI/CD.&#34; &#34;It&#39;s automation.&#34; &#34;It&#39;s when developers do operations.&#34; &#34;It&#39;s a culture.&#34; &#34;It&#39;s a job title.&#34; &#34;It&#39;s a toolchain.&#34; &#34;It&#39;s a movement.&#34;&lt;/p&gt; &lt;p&gt;They&#39;re all partially right. And because DevOps touches culture, process, and technology simultaneously, it resists simple definition.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/what-is-devops-the-complete-guide/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/what-is-devops-the-complete-guide/</guid> </item> <item> <title>Git Workflow for Release Management: Branches vs Tags</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Git Workflow for Release Management: Branches vs Tags&lt;/h1&gt; &lt;p&gt;&lt;img alt=&#34;&#34; src=&#34;images/git-workflow-overview.png&#34;&gt;&lt;/p&gt; &lt;p&gt;Most teams invent their Git strategy as they go. One developer starts tagging releases. Another uses branches. A third creates a hotfix branch and never deletes it. By the time you need to patch a six-month-old release, nobody remembers what &lt;code&gt;release-final-v2&lt;/code&gt; means or where hotfixes actually landed.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;A clear branching strategy prevents this.&lt;/strong&gt; This post covers a battle-tested Git workflow built around two parallel approaches — version control with branches and version control with tags — and tells you exactly when to use each.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/29/git-workflow-for-release-management-branches-vs-tags/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/29/git-workflow-for-release-management-branches-vs-tags/</guid> </item> <item> <title>Engineering Standards for DevOps: The Complete Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Engineering Standards for DevOps: The Complete Guide&lt;/h1&gt; &lt;p&gt;A team without standards is a team that reinvents everything — every time, in every project. Standards are not bureaucracy. They are the codified answers to questions your team has already solved, so you can spend your energy solving new ones.&lt;/p&gt; &lt;p&gt;This guide covers thirteen engineering standards that separate high-performing DevOps teams from the rest. For each standard, we go beyond the &#34;what&#34; to explain the &#34;why&#34; and the &#34;how&#34; — with concrete tooling, configuration examples, and the decision frameworks you need to implement them in your organisation.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/engineering-standards-for-devops-the-complete-guide/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/engineering-standards-for-devops-the-complete-guide/</guid> </item> <item> <title>DevOps Project Example: From Code Push to Production with GitOps, FluxCD, and Kubernetes</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;DevOps Project Example: From Code Push to Production with GitOps, FluxCD, and Kubernetes&lt;/h1&gt; &lt;p&gt;Most DevOps tutorials show you a pipeline diagram. This one shows you a real pipeline, built on a real application, running on real Kubernetes clusters — with every tool, every workflow, and every design decision explained.&lt;/p&gt; &lt;p&gt;This post walks through the complete CI/CD system behind &lt;strong&gt;Slotmachine&lt;/strong&gt; — a real-time multiplayer tournament app — from the moment a developer pushes code to GitHub, through six security and quality gates, all the way to automated deployment on both Nutanix on-premise clusters and AWS EKS. No hand-waving. No &#34;and then magic happens.&#34;&lt;/p&gt; &lt;p&gt;The full source code is available in two repositories:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Application repo&lt;/strong&gt;: &lt;a href=&#34;https://github.com/pkhamdee/slotmachine&#34;&gt;github.com/pkhamdee/slotmachine&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Deployment repo&lt;/strong&gt;: &lt;a href=&#34;https://github.com/pkhamdee/slotmachine-deployment&#34;&gt;github.com/pkhamdee/slotmachine-deployment&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;</description> <link>https://pkhamdee.blog/2026/05/19/devops-project-example-from-code-push-to-production-with-gitops-fluxcd-and-kubernetes/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/19/devops-project-example-from-code-push-to-production-with-gitops-fluxcd-and-kubernetes/</guid> </item> <item> <title>The DevOps Delivery Pipeline: End-to-End Framework</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;The DevOps Delivery Pipeline: End-to-End Framework&lt;/h1&gt; &lt;p&gt;A DevOps framework is not a single tool or process — it is an &lt;strong&gt;end-to-end system&lt;/strong&gt; that connects your product idea to production software, with quality and security built in at every step.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/the-devops-delivery-pipeline-end-to-end-framework/</link> <pubDate>Fri, 29 May 2026 08:58:25 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/the-devops-delivery-pipeline-end-to-end-framework/</guid> </item> <item> <title>Cloud Engineer vs DevOps vs SRE vs Platform Engineer: Who Does What?</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Cloud Engineer vs DevOps vs SRE vs Platform Engineer: Who Does What?&lt;/h1&gt; &lt;p&gt;You&#39;re browsing job boards and you see four different titles: &lt;em&gt;Cloud Engineer&lt;/em&gt;, &lt;em&gt;DevOps Engineer&lt;/em&gt;, &lt;em&gt;Site Reliability Engineer&lt;/em&gt;, &lt;em&gt;Platform Engineer&lt;/em&gt;. The salaries are similar. The required skills overlap. Some listings seem interchangeable.&lt;/p&gt; &lt;p&gt;Are these the same job? Is one better than the others? Which should you aim for?&lt;/p&gt; &lt;p&gt;They are &lt;strong&gt;not&lt;/strong&gt; the same job — but they are deeply related, and the confusion is completely understandable. Each role grew from a different pain point in how software gets built and run, and in 2026, all four exist inside most engineering organizations at the same time.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/cloud-engineer-vs-devops-vs-sre-vs-platform-engineer-who-does-what/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/cloud-engineer-vs-devops-vs-sre-vs-platform-engineer-who-does-what/</guid> </item> <item> <title>9 Essential Components of a Production Microservice App</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;9 Essential Components of a Production Microservice App&lt;/h1&gt; &lt;p&gt;So you&#39;ve built a microservice. It works on your laptop. Now your manager says &#34;take it to production&#34; — and suddenly you realize a working service and a &lt;em&gt;production-ready&lt;/em&gt; service are two very different things.&lt;/p&gt; &lt;p&gt;This guide walks through all 9 essential components that every production microservice system must have, using the architecture diagram below as our map. By the end, you&#39;ll understand not just &lt;em&gt;what&lt;/em&gt; each component is, but &lt;em&gt;why&lt;/em&gt; it exists, &lt;em&gt;how&lt;/em&gt; it works, and &lt;em&gt;how to implement it&lt;/em&gt; in real code.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/9-essential-components-of-a-production-microservice-app/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/9-essential-components-of-a-production-microservice-app/</guid> </item> <item> <title>Tech Stack of a Modern AI App in 2026: The Complete Layer-by-Layer Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Tech Stack of a Modern AI App in 2026: The Complete Layer-by-Layer Guide&lt;/h1&gt; &lt;p&gt;Everyone wants to build an AI app. Most people start with the same two lines:&lt;/p&gt; &lt;p&gt;&lt;code&gt;python import openai response = openai.chat.completions.create(...)&lt;/code&gt;&lt;/p&gt; &lt;p&gt;That works for a demo. It does not work for a product. The moment you try to serve real users, you run into a wall of unanswered questions: Where does your data live? How do you keep the model&#39;s knowledge fresh? How do you know when it starts giving bad answers? How do you deploy it without rewriting everything from scratch every time the model changes?&lt;/p&gt; &lt;p&gt;A production AI application in 2026 is not a Python script. It&#39;s a &lt;strong&gt;10-layer system&lt;/strong&gt; — each layer solving a specific class of problem, each with its own ecosystem of tools.&lt;/p&gt; &lt;p&gt;This post is the map. We&#39;ll walk every layer from the ground up: what problem it solves, which tools the industry has standardized on, and how the layers connect. By the end, you&#39;ll be able to look at any real-world AI product and name exactly what&#39;s running inside it.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/tech-stack-of-a-modern-ai-app-in-2026-the-complete-layer-by-layer-guide/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/tech-stack-of-a-modern-ai-app-in-2026-the-complete-layer-by-layer-guide/</guid> </item> <item> <title>AI Agent Application Demo: Putting a Brain Inside Your App</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;AI Agent Application Demo: Putting a Brain Inside Your App&lt;/h1&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;Source code:&lt;/strong&gt; &lt;a href=&#34;https://github.com/pkhamdee/coffee-agent&#34;&gt;github.com/pkhamdee/coffee-agent&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt; &lt;p&gt;There&#39;s a quiet revolution happening in how we write software. For decades, we&#39;ve built applications the same way: write a function, call the next function, handle each case with an &lt;code&gt;if&lt;/code&gt; statement, repeat. The logic is explicit, deterministic, and completely predictable — a flowchart carved into code.&lt;/p&gt; &lt;p&gt;That model still works. But it has a hard ceiling.&lt;/p&gt; &lt;p&gt;When a user wants to do something that doesn&#39;t fit neatly into your flowchart — when they say something ambiguous, change their mind mid-conversation, or combine requests in ways you didn&#39;t anticipate — the rigid-logic app breaks down. You end up writing more and more special-case handling until the code becomes unmaintainable.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;AI agents flip this model.&lt;/strong&gt; Instead of programming every decision upfront, you give your application a reasoning engine — a &lt;em&gt;brain&lt;/em&gt; — and let it figure out what to do. The application stops being a flowchart and starts being a &lt;em&gt;collaborator&lt;/em&gt;.&lt;/p&gt; &lt;p&gt;This post walks through a real, runnable example: a coffee shop ordering chatbot called &lt;strong&gt;Coffee Agent&lt;/strong&gt;. It&#39;s a full-stack app built with NestJS, React, LangGraph, and a local LLM running on Ollama. By the time you finish reading, you&#39;ll understand exactly what an agent is, why this architecture is powerful, and how to build one yourself.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/20/ai-agent-application-demo-putting-a-brain-inside-your-app/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/20/ai-agent-application-demo-putting-a-brain-inside-your-app/</guid> </item> <item> <title>PostgreSQL Server Tuning: The Complete 2026 Configuration Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;PostgreSQL Server Tuning: The Complete 2026 Configuration Guide&lt;/h1&gt; &lt;p&gt;A freshly installed PostgreSQL server is configured to run safely on a shared laptop from 2005. &lt;code&gt;shared_buffers = 128MB&lt;/code&gt;. &lt;code&gt;work_mem = 4MB&lt;/code&gt;. &lt;code&gt;max_connections = 100&lt;/code&gt;. These defaults have not changed in over a decade — and they are deliberately conservative so the server starts without crashing on anything.&lt;/p&gt; &lt;p&gt;Your production server is not a 2005 laptop.&lt;/p&gt; &lt;p&gt;This guide covers every &lt;code&gt;postgresql.conf&lt;/code&gt; parameter that matters, the OS-level settings that underpin them, and a ready-to-use configuration reference for common server sizes — all updated for PostgreSQL 17 on Linux in 2026. It is the &lt;strong&gt;server configuration&lt;/strong&gt; companion to the &lt;a href=&#34;./postgresql-performance-tuning-2026.md&#34;&gt;query and index tuning guide&lt;/a&gt;, which covers &lt;code&gt;EXPLAIN&lt;/code&gt;, indexes, and PgBouncer.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/26/postgresql-server-tuning-the-complete-2026-configuration-guide/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/26/postgresql-server-tuning-the-complete-2026-configuration-guide/</guid> </item> <item> <title>PostgreSQL Performance Tuning for Application Developers (2026 Edition)</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;PostgreSQL Performance Tuning for Application Developers (2026 Edition)&lt;/h1&gt; &lt;p&gt;Slow queries are not a database problem. They are a design problem.&lt;/p&gt; &lt;p&gt;A query that takes 4 seconds on a table with 100 million rows almost always has a fixable root cause: missing index, wrong index type, table bloat, exhausted connection pool, or configuration defaults that were set for a 1GB dataset and never updated. Most performance problems are found — and solved — at the query and schema level before any hardware needs to be touched.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/26/postgresql-performance-tuning-for-application-developers-2026-edition/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/26/postgresql-performance-tuning-for-application-developers-2026-edition/</guid> </item> <item> <title>PostgreSQL High Availability with Patroni: 2026 Edition</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;PostgreSQL High Availability with Patroni: 2026 Edition&lt;/h1&gt; &lt;p&gt;Running a single PostgreSQL instance in production is a liability. When it goes down — and it will — so does your application. High availability is not optional for production databases; it is the baseline.&lt;/p&gt; &lt;p&gt;This guide builds a production-grade PostgreSQL HA cluster using the fully open-source community stack: &lt;strong&gt;PostgreSQL 17 from PGDG&lt;/strong&gt;, &lt;strong&gt;Patroni 4.x&lt;/strong&gt;, &lt;strong&gt;etcd 3.5&lt;/strong&gt;, &lt;strong&gt;pgbackrest 2.58&lt;/strong&gt;, and &lt;strong&gt;HAProxy&lt;/strong&gt;. No vendor-specific packages. No proprietary repositories. Everything here runs on Rocky Linux 9 or AlmaLinux 9 and stays fully open-source.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/26/postgresql-high-availability-with-patroni-2026-edition/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/26/postgresql-high-availability-with-patroni-2026-edition/</guid> </item> <item> <title>CKA Mock Exam — Complete Questions &amp;amp; Solutions</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;CKA Mock Exam — Complete Questions &amp;amp; Solutions&lt;/h1&gt; &lt;p&gt;&lt;strong&gt;Exam Rules Reminder&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Use &lt;code&gt;sudo&lt;/code&gt; to edit files in &lt;code&gt;/etc/kubernetes/manifests/&lt;/code&gt;&lt;/li&gt; &lt;li&gt;Use &lt;code&gt;sudo&lt;/code&gt; for kubelet restart and system-level debugging&lt;/li&gt; &lt;li&gt;Use documentation links provided in each question&lt;/li&gt; &lt;li&gt;SSH into the correct node as specified in the question&lt;/li&gt; &lt;li&gt;Always verify the correct namespace before applying changes&lt;/li&gt; &lt;/ul&gt;</description> <link>https://pkhamdee.blog/2026/05/27/cka-mock-exam--complete-questions--solutions/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/27/cka-mock-exam--complete-questions--solutions/</guid> </item> <item> <title>CKA Cheat Sheet 2026</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;CKA Cheat Sheet 2026&lt;/h1&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;Exam Domains:&lt;/strong&gt; Storage 10% | Troubleshooting 30% | Workloads &amp;amp; Scheduling 15% | Cluster Architecture 25% | Services &amp;amp; Networking 20%&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Kubernetes version on exam:&lt;/strong&gt; 1.34+ — &lt;code&gt;kubectl&lt;/code&gt; is pre-configured, &lt;code&gt;sudo&lt;/code&gt; required for node-level tasks. &lt;strong&gt;Allowed docs:&lt;/strong&gt; kubernetes.io/docs, kubernetes.io/blog, helm.sh/docs&lt;/p&gt; &lt;/blockquote&gt; &lt;h2&gt;Quick Wins — Always Do First&lt;/h2&gt; &lt;p&gt;```bash&lt;/p&gt; &lt;h1&gt;Set alias (saves time on every command)&lt;/h1&gt; &lt;p&gt;alias k=kubectl export do=&#34;--dry-run=client -o yaml&#34; # k run pod1 --image=nginx $do &amp;gt; pod.yaml export now=&#34;--force --grace-period=0&#34; # k delete pod pod1 $now&lt;/p&gt; &lt;h1&gt;Autocomplete&lt;/h1&gt; &lt;p&gt;source &amp;lt;(kubectl completion bash) complete -o default -F __start_kubectl k&lt;/p&gt; &lt;h1&gt;Context switching (exam has multiple clusters)&lt;/h1&gt; &lt;p&gt;kubectl config get-contexts kubectl config use-context &lt;context-name&gt; kubectl config current-context ```&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/24/cka-cheat-sheet-2026/</link> <pubDate>Fri, 29 May 2026 08:58:24 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/24/cka-cheat-sheet-2026/</guid> </item> <item> <title>The 12-Factor App: The Complete Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;The 12-Factor App: The Complete Guide&lt;/h1&gt; &lt;p&gt;Every cloud-native application fails the same ways: it leaks config into code, stores state in memory that dies on restart, has a local dev environment that behaves nothing like production, or can&#39;t scale horizontally because it writes files to disk.&lt;/p&gt; &lt;p&gt;The 12-Factor App methodology is a set of twelve principles that prevent all of these failures. Written by engineers at Heroku in 2011, it remains the most practical and universally applicable guide to building software-as-a-service applications. This guide takes you through every factor with real code, real anti-patterns, and how each principle translates to modern cloud-native deployments.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/the-12-factor-app-the-complete-guide/</link> <pubDate>Fri, 29 May 2026 08:58:23 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/the-12-factor-app-the-complete-guide/</guid> </item> <item> <title>Crossing the Chasm: The Complete Guide to Technology Adoption</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Crossing the Chasm: The Complete Guide to Technology Adoption&lt;/h1&gt; &lt;p&gt;In 1993, Apple launched the Newton — a handheld personal digital assistant a full decade before the smartphone era. It was revolutionary. It was technically impressive. It bombed spectacularly.&lt;/p&gt; &lt;p&gt;In 2007, Apple launched the iPhone. Same company. Arguably less technically innovative than what competitors had already shipped. It went on to become the most successful consumer product in history.&lt;/p&gt; &lt;p&gt;Same company. Same category. Completely different outcomes.&lt;/p&gt; &lt;p&gt;The difference wasn&#39;t the technology. It was the &lt;strong&gt;timing&lt;/strong&gt; — specifically, whether Apple understood where the market was in its adoption lifecycle and positioned its product accordingly.&lt;/p&gt; &lt;p&gt;This guide explains the framework that makes sense of that difference: the Technology Adoption Lifecycle and Geoffrey Moore&#39;s landmark insight about the chasm inside it. We&#39;ll go deep on the theory, explore the psychology of every adopter type, and apply it to cloud-native technologies that are reshaping software today.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/crossing-the-chasm-the-complete-guide-to-technology-adoption/</link> <pubDate>Fri, 29 May 2026 08:58:23 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/crossing-the-chasm-the-complete-guide-to-technology-adoption/</guid> </item> <item> <title>Software Development Strategy: The Complete Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Software Development Strategy: The Complete Guide&lt;/h1&gt; &lt;p&gt;Most software projects fail for one of two reasons: they build the &lt;strong&gt;wrong thing right&lt;/strong&gt;, or they build the &lt;strong&gt;right thing wrong&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;Building the wrong thing right means you execute perfectly — on time, on budget, with clean code — but the product solves a problem nobody actually has. Building the right thing wrong means you deeply understand the user&#39;s pain but your delivery is so slow, brittle, and expensive that the opportunity is gone before the product ships.&lt;/p&gt; &lt;p&gt;The framework that fixes both failure modes: &lt;strong&gt;Design Thinking + Lean + Agile&lt;/strong&gt; — applied together, not picked from a menu.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/software-development-strategy-the-complete-guide/</link> <pubDate>Fri, 29 May 2026 08:58:23 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/software-development-strategy-the-complete-guide/</guid> </item> <item> <title>Principles of Software Design: The Complete Guide</title> <author>Pongsak Khamdee</author> <description>&lt;h1&gt;Principles of Software Design: The Complete Guide&lt;/h1&gt; &lt;p&gt;Every senior engineer you admire follows a set of principles — not rules written in a style guide, but instincts built from hard experience. They look at code and immediately feel whether something is wrong, even before they can articulate why.&lt;/p&gt; &lt;p&gt;Those instincts are learnable. They&#39;re codified in the principles this guide covers.&lt;/p&gt; &lt;p&gt;Software design principles are heuristics — guidelines, not laws. No principle applies in every situation. But together they form a vocabulary for talking about code quality and a compass for navigating trade-offs. Internalize them, and you&#39;ll spend less time untangling the past and more time building the future.&lt;/p&gt;</description> <link>https://pkhamdee.blog/2026/05/18/principles-of-software-design-the-complete-guide/</link> <pubDate>Fri, 29 May 2026 08:58:23 +0000</pubDate> <source url="https://pkhamdee.blog/feed_rss_updated.xml">Pongsak Khamdee</source><guid isPermaLink="true">https://pkhamdee.blog/2026/05/18/principles-of-software-design-the-complete-guide/</guid> </item> </channel> </rss>