<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Asta Life - Embracing Technology and the Developer Journey</title>
    <link>https://astalife.co</link>
    <description>Welcome to Asta Life, where I explore technology, share coding insights, and document my journey as a passionate developer.</description>
    <language>en-US</language>
    <managingEditor>asta-nqn@proton.me (Asta Nguyen)</managingEditor>
    <webMaster>asta-nqn@proton.me (Asta Nguyen)</webMaster>
    <lastBuildDate>Sat, 14 Nov 2026 23:52:41 GMT</lastBuildDate>
    <atom:link href="https://astalife.co/feed.xml" rel="self" type="application/rss+xml" />
    <image>
      <url>https://astalife.co/images/logo.jpeg</url>
      <title>Asta Life - Embracing Technology and the Developer Journey</title>
      <link>https://astalife.co</link>
    </image>
    <item>
      <title>I Built an Emergency Control Room to Test Jev</title>
      <link>https://astalife.co/blogs/jev-emergency-control-room-benchmark</link>
      <guid isPermaLink="true">https://astalife.co/blogs/jev-emergency-control-room-benchmark</guid>
      <description>What Jev is, how its typed-decision architecture differs from general LLMs, and what a 300-input emergency-dispatch benchmark revealed about speed, cost, and accuracy.</description>
      <pubDate>Sun, 20 Sep 2026 09:17:26 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://framerusercontent.com/images/z4Uu1YpJeEZPBSMTCMI0CN2PX0.png" type="image/jpeg" length="0" />
      <category>AI </category>
    </item>
<item>
      <title>SSH into Your Mac from an iPhone with Tailscale and tmux</title>
      <link>https://astalife.co/blogs/ssh-into-your-mac-from-iphone-tailscale-tmux</link>
      <guid isPermaLink="true">https://astalife.co/blogs/ssh-into-your-mac-from-iphone-tailscale-tmux</guid>
      <description>Turn a Mac at home into a private personal server you can access from an iPhone with Tailscale, SSH, and tmux—without router port forwarding.</description>
      <pubDate>Sun, 06 Sep 2026 03:40:01 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://images.unsplash.com/photo-1533906966484-a9c978a3f090?auto=format&fit=crop&w=1600&q=80" type="image/jpeg" length="0" />
      <category>AI </category><category>DevOps</category>
    </item>
<item>
      <title>OpenEZ: Local-First Code Intelligence for AI Coding Agents</title>
      <link>https://astalife.co/blogs/openez-local-first-code-intelligence-for-ai-coding-agents</link>
      <guid isPermaLink="true">https://astalife.co/blogs/openez-local-first-code-intelligence-for-ai-coding-agents</guid>
      <description>OpenEZ indexes code and documentation into local SQLite, builds a symbol graph, and exposes bounded retrieval, relationship traversal, and durable project memory through MCP for AI coding agents.</description>
      <pubDate>Tue, 18 Aug 2026 16:32:27 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      
      <category>MCP</category><category>AI </category>
    </item>
<item>
      <title>Agent DevKit: A Practical Workflow for AI Coding Agents</title>
      <link>https://astalife.co/blogs/agent-devkit-practical-workflow-for-ai-coding-agents</link>
      <guid isPermaLink="true">https://astalife.co/blogs/agent-devkit-practical-workflow-for-ai-coding-agents</guid>
      <description>Agent DevKit is a lightweight workflow for reliable AI-assisted development: focused skills, approval-gated planning, systematic debugging, an Obsidian-friendly source-grounded wiki, and optional OpenEZ code intelligence.</description>
      <pubDate>Tue, 18 Aug 2026 16:21:56 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      
      <category>AI </category>
    </item>
<item>
      <title>What Is MCP? How to Build an MCP Server, Define Tools, and Connect Apps or Agents</title>
      <link>https://astalife.co/blogs/what-is-mcp-how-to-build-an-mcp-server-and-connect-apps-agents</link>
      <guid isPermaLink="true">https://astalife.co/blogs/what-is-mcp-how-to-build-an-mcp-server-and-connect-apps-agents</guid>
      <description>A practical guide to MCP: what it is, how it differs from REST, how to design reliable tools, how to build a minimal MCP server, and how apps or AI agents connect to it in production.</description>
      <pubDate>Sun, 02 Aug 2026 07:57:14 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/mcp-server.png" type="image/jpeg" length="0" />
      <category>AI </category><category>MCP</category>
    </item>
<item>
      <title>Kimi K3: The Hot AI Model to Watch Right Now</title>
      <link>https://astalife.co/blogs/kimi-k3-hot-ai-model-benchmarks-2026</link>
      <guid isPermaLink="true">https://astalife.co/blogs/kimi-k3-hot-ai-model-benchmarks-2026</guid>
      <description>A practical look at Moonshot AI&apos;s Kimi K3, why it is trending, how its benchmarks compare, and where it may or may not be useful today.</description>
      <pubDate>Tue, 21 Jul 2026 02:14:30 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      
      <category>AI </category>
    </item>
<item>
      <title>OpenSpec: A Lightweight Spec-Driven Development Framework for AI-Assisted Coding</title>
      <link>https://astalife.co/blogs/openspec-lightweight-spec-driven-development</link>
      <guid isPermaLink="true">https://astalife.co/blogs/openspec-lightweight-spec-driven-development</guid>
      <description>OpenSpec is an open-source, lightweight spec-driven development (SDD) framework that helps human developers and AI coding agents align on what to build before code is written. This article covers its philosophy, workflow, and how it fits into the modern AI-assisted development landscape.</description>
      <pubDate>Tue, 14 Jul 2026 16:27:38 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/spec-driven-blog.png" type="image/jpeg" length="0" />
      <category>AI </category><category>AI Spec Driven</category>
    </item>
<item>
      <title>JavaScript Microtasks and Macrotasks: A Practical Guide to the Event Loop</title>
      <link>https://astalife.co/blogs/javascript-microtasks-and-macrotasks</link>
      <guid isPermaLink="true">https://astalife.co/blogs/javascript-microtasks-and-macrotasks</guid>
      <description>This article explains JavaScript microtasks and macrotasks in practical terms, showing why `Promise.then()` usually runs before `setTimeout(..., 0)` and how the event loop prioritizes different kinds of asynchronous work.</description>
      <pubDate>Mon, 29 Jun 2026 09:10:17 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/micro-banner.png" type="image/jpeg" length="0" />
      <category>Backend</category><category>Language</category><category>Frontend</category>
    </item>
<item>
      <title>Animation Keywords</title>
      <link>https://astalife.co/blogs/animation-keywords</link>
      <guid isPermaLink="true">https://astalife.co/blogs/animation-keywords</guid>
      <description>Animation Keys is a collection of essential UI animation terms that explain how motion can guide attention, provide feedback, show relationships between states, and improve the overall user experience in digital products.
</description>
      <pubDate>Thu, 11 Jun 2026 20:28:33 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/generated-image.png" type="image/jpeg" length="0" />
      <category>Frontend</category>
    </item>
<item>
      <title>Why PostgreSQL Remains the Best Database Choice 2025 and 2026</title>
      <link>https://astalife.co/blogs/why-postgresql-remains-the-best-database-choice</link>
      <guid isPermaLink="true">https://astalife.co/blogs/why-postgresql-remains-the-best-database-choice</guid>
      <description>Discover why PostgreSQL continues to dominate as the preferred database solution in 2025. Learn about its advanced features, cost-effectiveness, scalability, and see practical examples that demonstrate why developers and enterprises choose PostgreSQL for modern applications.</description>
      <pubDate>Tue, 04 Nov 2025 21:24:22 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/postgreSQL-2025.png" type="image/jpeg" length="0" />
      <category>Database</category><category>Backend</category>
    </item>
<item>
      <title>Mastering Database Indexes: A Complete Guide to SQL Indexes in PostgreSQL, MySQL, and MariaDB</title>
      <link>https://astalife.co/blogs/sql-database-indexes</link>
      <guid isPermaLink="true">https://astalife.co/blogs/sql-database-indexes</guid>
      <description>Deep dive into database indexes with practical examples and performance insights. Learn how to create, optimize, and manage indexes across PostgreSQL, MySQL, and MariaDB. Includes detailed code examples, best practices, and real-world scenarios to boost query performance by up to 100x.</description>
      <pubDate>Tue, 14 Oct 2025 21:05:55 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/sql-index.png" type="image/jpeg" length="0" />
      <category>Database</category>
    </item>
<item>
      <title>Next.js Link vs Anchor Tag: The Ultimate Guide to Fast Navigation</title>
      <link>https://astalife.co/blogs/nextjs-link-vs-anchor-tag-the-ultimate-guide-to-fast-navigation</link>
      <guid isPermaLink="true">https://astalife.co/blogs/nextjs-link-vs-anchor-tag-the-ultimate-guide-to-fast-navigation</guid>
      <description>Discover why the Next.js Link component outperforms traditional anchor tags for internal navigation. Learn the key differences, performance benefits, and practical implementation with real-world code examples to optimize your Next.js application.</description>
      <pubDate>Tue, 07 Oct 2025 03:02:24 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/link-a-tag-nextjs.png" type="image/jpeg" length="0" />
      <category>Frontend</category>
    </item>
<item>
      <title>When to Use useCallback in React: A Complete Guide with Real Examples</title>
      <link>https://astalife.co/blogs/usecallback-in-react-a-complete-guide</link>
      <guid isPermaLink="true">https://astalife.co/blogs/usecallback-in-react-a-complete-guide</guid>
      <description>Learn when and why to use React&apos;s useCallback hook to optimize your application&apos;s performance. This comprehensive guide covers practical use cases, real-world examples, common pitfalls, and best practices to help you make informed decisions about memoizing functions in your React components.</description>
      <pubDate>Thu, 02 Oct 2025 23:30:14 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/react-usecallback-hook.png" type="image/jpeg" length="0" />
      <category>Frontend</category>
    </item>
<item>
      <title>Seft host docker registry on VPS - Part 1</title>
      <link>https://astalife.co/blogs/seft-host-docker-registry-on-vps</link>
      <guid isPermaLink="true">https://astalife.co/blogs/seft-host-docker-registry-on-vps</guid>
      <description>While you&apos;re working with registries, you might hear the terms registry and repository as if they&apos;re interchangeable. Even though they&apos;re related, they&apos;re not quite the same thing.

A registry is a centralized location that stores and manages container images, whereas a repository is a collection of related container images within a registry. Think of it as a folder where you organize your images based on projects. Each repository contains one or more container images.</description>
      <pubDate>Tue, 27 May 2025 09:59:25 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/docker-registry-post/Docker-hub-registry.png" type="image/jpeg" length="0" />
      <category>DevOps</category><category>Docker</category><category>Backend</category>
    </item>
<item>
      <title>API Endpoint Naming Best Practices: A Developer&apos;s Guide 👨🏻‍💻</title>
      <link>https://astalife.co/blogs/best-practices-for-naming-api-endpoints</link>
      <guid isPermaLink="true">https://astalife.co/blogs/best-practices-for-naming-api-endpoints</guid>
      <description>Choosing the right names for your API endpoints is crucial for building an intuitive, consistent, and easy-to-use API.</description>
      <pubDate>Fri, 16 May 2025 21:00:31 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/api-endpoint.jpg" type="image/jpeg" length="0" />
      <category>Backend</category>
    </item>
<item>
      <title>Type or Interface For Typescript Projects ?</title>
      <link>https://astalife.co/blogs/type-or-interface</link>
      <guid isPermaLink="true">https://astalife.co/blogs/type-or-interface</guid>
      <description>Discover why I prefer type over interface in TypeScript! This post dives into its flexibility and practical advantages, helping you write cleaner, more efficient code. 🚀</description>
      <pubDate>Sun, 04 May 2025 11:06:48 GMT</pubDate>
      <author>asta-nqn@proton.me (Asta Nguyen)</author>
      <enclosure url="https://astalife.s3.ap-southeast-2.amazonaws.com/type-or-interface.jpg" type="image/jpeg" length="0" />
      <category>Language</category>
    </item>
  </channel>
</rss>