<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Senthil Nayagan</title>
    <link>https://senthilnayagan.com</link>
    <atom:link href="https://senthilnayagan.com/feed.xml" rel="self" type="application/rss+xml"/>
    <description>Senthil Nayagan writes about software engineering, web development, and technology.</description>
    <language>en-US</language>
    <lastBuildDate>Thu, 10 Sep 2026 00:00:00 +0000</lastBuildDate><item>
      <title>AWS IAM Roles Demystified: The Trust Policy Everyone Ignores Until Nothing Works</title>
      <link>https://senthilnayagan.com/blog/aws-iam-role-trust-policy/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/aws-iam-role-trust-policy/</guid>
      <pubDate>Thu, 10 Sep 2026 00:00:00 +0000</pubDate><description>You attached the policy. You clicked Save. You were so proud. And yet AWS still said no. Turns out there are two halves to an IAM Role — and most of us only read one of them. Meet the trust policy: the bouncer at the door that nobody notices until it starts turning everyone away.</description><category>aws</category><category>iam</category><category>iam-roles</category><category>trust-policy</category><category>aws-security</category><category>cloud</category></item><item>
      <title>LLM Harness: The Invisible Machinery Behind Our AI Agents</title>
      <link>https://senthilnayagan.com/blog/llm-harness/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/llm-harness/</guid>
      <pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate><description>We love saying "our AI fixed the bug" or "our AI searched Gmail." But let's be honest—our LLM just talked about it. The real work happened in a layer we barely notice: the harness. It's the unsung infrastructure that gives our model a workplace, tools, memory, and guardrails (so it doesn't accidentally delete production). In this post, we pull back the curtain on the invisible machinery that turns a glorified text predictor into an agent that can actually act—and why the harness matters every bit as much as the model.</description><category>llm-harness</category><category>ai-agents</category><category>agentic-systems</category><category>llm-orchestration</category><category>react</category><category>ai-infrastructure</category><category>claude</category><category>ccar-f</category><category>claude-certified-architect</category></item><item>
      <title>LLM Fundamentals</title>
      <link>https://senthilnayagan.com/blog/llm-fundamentals/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/llm-fundamentals/</guid>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate><description>A practical introduction to the LLM concepts I need to understand as part of my Claude Certified Architect – Foundations (CCAR-F) preparation. We'll build the mental models behind tokens, context, context windows, model input and output, and the capabilities and limitations of large language models, using simple explanations, examples, and hands-on exploration.</description><category>llm-fundamentals</category><category>llms</category><category>claude</category><category>context</category><category>context-window</category><category>ccar-f</category><category>claude-certified-architect</category></item><item>
      <title>CCAR-F Learning Path: From LLM Fundamentals to Architecture</title>
      <link>https://senthilnayagan.com/blog/ccar-f-learning-path/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/ccar-f-learning-path/</guid>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate><description>A dependency-based learning path for preparing for the Claude Certified Architect – Foundations (CCAR-F) exam. I'll work through the concepts step by step, starting with LLM fundamentals and Claude API basics, then moving through prompting, tool use, structured output, MCP, agentic systems, task decomposition, multi-agent architecture, Claude Agent SDK, Claude Code, context management, reliability, and architecture. Each topic will have its own focused article, with examples, hands-on experiments, and links to the relevant CCAR-F domains and scenarios.</description><category>claude-certified-architect</category><category>ccar-f</category><category>ccar-f-learning-path</category><category>llm-fundamentals</category><category>agentic-architecture</category><category>claude-api</category><category>tool-use</category><category>mcp</category><category>claude-code</category><category>agent-sdk</category></item><item>
      <title>One Namespace, One Workgroup: Datashare Is Redshift Serverless's Back Door</title>
      <link>https://senthilnayagan.com/blog/one-namespace-one-workgroup-datashare-is-your-back-door/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/one-namespace-one-workgroup-datashare-is-your-back-door/</guid>
      <pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><description>Want a second Redshift Serverless workgroup for isolated compute? We can't attach it to the same namespace—the relationship is 1:1. But there's a back door: create a new namespace/workgroup and use Datashare to access the data from the original namespace. Our new workgroup gets its own compute capacity while still being able to query and JOIN the shared tables.</description><category>redshift</category><category>aws</category><category>data-engineering</category><category>datashare</category><category>redshift-serverless</category></item><item>
      <title>Essential Math for AI and ML: A Beginner's Introduction to Linear Algebra</title>
      <link>https://senthilnayagan.com/blog/essential-math-introduction-to-linear-algebra/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/essential-math-introduction-to-linear-algebra/</guid>
      <pubDate>Fri, 21 Aug 2026 00:00:00 +0000</pubDate><description>Linear algebra is the language machine learning models actually think in — vectors, matrices, and the operations between them are how data, weights, and embeddings get represented and transformed. This is where our AI math journey starts, working through the concepts that show up everywhere from a simple neural network layer to the attention mechanism inside an LLM.</description><category>linear-algebra</category><category>math-for-ai-ml</category><category>essential-math-for-ai-ml</category></item><item>
      <title>CCAR-F Foundations: The Basics We Need to Know Before We Dive In</title>
      <link>https://senthilnayagan.com/blog/ccar-f-foundations/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/ccar-f-foundations/</guid>
      <pubDate>Mon, 17 Aug 2026 00:00:00 +0000</pubDate><description>New to Claude, LLMs, agents, MCP, or the concepts behind CCAR-F? This foundations path covers the essential building blocks we need before diving into the five CCAR-F exam domains. Simple explanations, practical examples, illustrations, and hopefully without turning a few basic questions into another 27 browser tabs.</description><category>claude-certified-architect</category><category>ccar-f</category><category>claude-foundations</category><category>claude-101</category><category>ai-agents</category><category>mcp</category></item><item>
      <title>CCAR-F Domain 1: Agentic Architecture & Orchestration</title>
      <link>https://senthilnayagan.com/blog/ccar-f-domain-1-agentic-architecture-orchestration/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/ccar-f-domain-1-agentic-architecture-orchestration/</guid>
      <pubDate>Mon, 17 Aug 2026 00:00:00 +0000</pubDate><description>I'm preparing for CCAR-F Domain 1: Agentic Architecture & Orchestration, the largest domain at 27% of the exam. We'll break down what Anthropic expects us to understand about agentic loops, multi-agent orchestration, subagents, task decomposition, workflows, Agent SDK hooks, and session management — in plain English, with examples, illustrations, hands-on experiments, and the architectural trade-offs that actually matter.</description><category>claude-certified-architect</category><category>ccar-f</category><category>agentic-architecture</category><category>agentic-ai</category><category>ai-agents</category><category>agent-sdk</category><category>claude-api</category></item><item>
      <title>How I'm Preparing for the Claude Certified Architect – Foundations Exam (CCAR-F)</title>
      <link>https://senthilnayagan.com/blog/preparing-for-claude-certified-architect-foundations-exam/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/preparing-for-claude-certified-architect-foundations-exam/</guid>
      <pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate><description>I'm preparing for the Claude Certified Architect – Foundations (CCAR-F) exam and documenting the journey along the way. I'll break down the 5 exam domains (what we actually need to know), the 6 scenarios (where we'll need to apply it), the exam format and weighting, the free resources I'm using, and my week-by-week preparation plan. All in plain English, with examples, illustrations, and hopefully without making us open 27 browser tabs just to answer one simple question.</description><category>claude-certified-architect</category><category>ccar-f</category><category>claude-code</category><category>agent-sdk</category></item><item>
      <title>Essential Math for AI and ML: Introduction to Estimation Theory</title>
      <link>https://senthilnayagan.com/blog/essential-math-introduction-to-estimation-theory/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/essential-math-introduction-to-estimation-theory/</guid>
      <pubDate>Sun, 14 Jul 2024 00:00:00 +0000</pubDate><description>Estimation theory is like the detective work of data science. It equips us with methods to infer unknown parameters from observed data. Imagine estimating the average height in a city or the likelihood of a coin flip. Key techniques like Maximum Likelihood and Bayesian Estimation ensure our guesses are accurate and reliable. Used in fields from economics to engineering, estimation theory transforms raw data into meaningful insights. It’s the art and science of turning observations into actionable knowledge, guiding decisions in everyday life and complex industries alike. Dive into this fascinating world and become a data detective!</description><category>estimation-theory</category><category>math-for-ai-ml</category><category>essential-math-for-ai-ml</category></item><item>
      <title>Math Matters: Essential Math for Aspiring AI Experts</title>
      <link>https://senthilnayagan.com/blog/math-matters-essential-math-for-aspiring-ai-experts/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/math-matters-essential-math-for-aspiring-ai-experts/</guid>
      <pubDate>Wed, 10 Jul 2024 00:00:00 +0000</pubDate><description>The journey starts with mastering some essential mathematical concepts! Linear algebra is our toolkit for handling and manipulating data in multiple dimensions. Calculus becomes our guide to understanding how models learn and optimize performance. Probability and statistics are our crystal balls, helping us predict outcomes and discover patterns in the data. Finally, discrete mathematics shapes our ability to design and analyze algorithms. These mathematical foundations enable us to construct, comprehend, and improve advanced AI and ML models.</description><category>math-for-ai-ml</category><category>essential-math-for-ai-ml</category></item><item>
      <title>The Evolution of AI: How Large Language Models are Changing the Game</title>
      <link>https://senthilnayagan.com/blog/llms-changing-the-game/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/llms-changing-the-game/</guid>
      <pubDate>Sat, 06 Jul 2024 00:00:00 +0000</pubDate><description>Large Language Models (LLMs) are designed to understand and generate human-like text based on vast amounts of data. LLMs are revolutionizing fields like natural language processing, customer service, and content creation, making interactions with technology more intuitive and human-like.</description><category>large-language-models</category><category>llm</category><category>ai</category></item><item>
      <title>Async Awesomeness: A Deep Dive into Rust’s Asynchronous Capabilities</title>
      <link>https://senthilnayagan.com/blog/async-awesomeness-a-deep-dive-into-rusts-asynchronous-capabilities/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/async-awesomeness-a-deep-dive-into-rusts-asynchronous-capabilities/</guid>
      <pubDate>Tue, 02 Jul 2024 00:00:00 +0000</pubDate><description>With async capabilities, developers can write non-blocking code that handles multiple operations simultaneously without the complexity of traditional multithreading. Async programming is ideal for I/O-bound tasks, offering a more responsive and scalable solution for modern applications. Let's dive into the world of Rust’s asynchronous capabilities and discover how to build high-performance, efficient software.</description><category>asynchronous</category><category>asynchronous-programming</category></item><item>
      <title>Code Without Chaos: Adopting Referential Transparency in Programming</title>
      <link>https://senthilnayagan.com/blog/referential-transparency/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/referential-transparency/</guid>
      <pubDate>Mon, 01 Jul 2024 00:00:00 +0000</pubDate><description>Referential transparency is a key concept in functional programming, which allows expressions in a program to be replaced with their values without changing the program’s behavior or result. The post highlights the numerous benefits of adopting referential transparency, including enhanced predictability, simplified debugging, thread-safety in concurrent and parallel executions, and greater confidence in refactoring code. By understanding and applying the principles of referential transparency, programmers can create more reliable, maintainable, and efficient software, ultimately leading to cleaner and more elegant codebases.</description><category>referential-transparency</category><category>pure-functions</category><category>immutability</category></item><item>
      <title>Starting with AI: A Beginner’s Journey into Artificial Intelligence (Part 1)</title>
      <link>https://senthilnayagan.com/blog/starting-with-ai-a-beginners-journey-into-ai-part-1/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/starting-with-ai-a-beginners-journey-into-ai-part-1/</guid>
      <pubDate>Mon, 24 Jun 2024 00:00:00 +0000</pubDate><description>Begin an exciting journey into the world of artificial intelligence. This beginner-friendly guide covers fundamental concepts, demystifies AI, and provides practical steps to get started.</description><category>ai</category><category>artificial-intelligence</category></item><item>
      <title>Primitive Obsession: The Hidden Enemy of Clean Code</title>
      <link>https://senthilnayagan.com/blog/primitive-obsession/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/primitive-obsession/</guid>
      <pubDate>Tue, 18 Jun 2024 00:00:00 +0000</pubDate><description>Primitive obsession is a code smell where primitives are overused for domain concepts, leading to poor encapsulation and maintainability issues.</description><category>primitive-obsession</category><category>code-smell</category><category>code-quality</category><category>clean-code</category></item><item>
      <title>Unlocking the Magic of Closures in Rust</title>
      <link>https://senthilnayagan.com/blog/introduction-to-rust-closure/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/introduction-to-rust-closure/</guid>
      <pubDate>Sun, 16 Jun 2024 00:00:00 +0000</pubDate><description>A closure is a programming construct that allows a function to capture and reference variables and parameters from its surrounding lexical scope. Closures offer many benefits and are a key part of the language's expressive and flexible features.</description><category>closure</category><category>rust</category></item><item>
      <title>Algorithms and Data Structures Simplified for Beginners</title>
      <link>https://senthilnayagan.com/blog/algorithms-and-data-structures-simplified-for-beginners/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/algorithms-and-data-structures-simplified-for-beginners/</guid>
      <pubDate>Sat, 15 Jun 2024 00:00:00 +0000</pubDate><description>Data structures and algorithms are fundamental concepts in computer science that involve organizing and manipulating data efficiently. Data structures such as arrays, linked lists, stacks, queues, trees, graphs, and hash tables provide various ways to store and access data. Algorithms, including sorting, searching, dynamic programming, graph algorithms, and divide and conquer techniques, are step-by-step procedures for solving problems and manipulating these data structures. Proficiency in data structures and algorithms is essential for developing software that performs well and uses resources effectively, enabling efficient data management and problem-solving.</description><category>algorithms-and-data-structures</category><category>algorithms</category><category>data-structures</category></item><item>
      <title>The Secret to Unbreakable Memory Safety: Rust's Ownership and Borrowing</title>
      <link>https://senthilnayagan.com/blog/rust-ownership-and-borrowing/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/rust-ownership-and-borrowing/</guid>
      <pubDate>Wed, 12 Jun 2024 00:00:00 +0000</pubDate><description>Rust's ownership and borrowing features prevent us from experiencing memory-related problems. Rust is a great choice when performance matters and it solves pain points that bother many other languages.</description><category>ownership</category><category>borrowing</category><category>memory-management</category></item><item>
      <title>What does yanked release mean?</title>
      <link>https://senthilnayagan.com/blog/yanked-release/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/yanked-release/</guid>
      <pubDate>Thu, 07 Mar 2024 00:00:00 +0000</pubDate><description>Released and yanked are terms used in software development to indicate the state of a software package or library. These terms specify whether a given package version is suitable for usage or need to be avoided.</description><category>yanked-release</category><category>version-control</category><category>release-management</category></item><item>
      <title>Unlocking the Power of Windowing in Kafka Streams</title>
      <link>https://senthilnayagan.com/blog/windowing-in-kafka-streams/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/windowing-in-kafka-streams/</guid>
      <pubDate>Sun, 25 Feb 2024 00:00:00 +0000</pubDate><description>Windowing refers to the process of dividing a continuous stream of data into discrete segments, or windows, based on time. These windows then serve as the basis for applying computational operations, such as aggregations or transformations, to the data contained within them.</description><category>kafka-streams</category><category>kafka</category><category>windowing</category></item><item>
      <title>Singleton Pattern</title>
      <link>https://senthilnayagan.com/blog/singleton-pattern-or-object/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/singleton-pattern-or-object/</guid>
      <pubDate>Tue, 16 Jan 2024 00:00:00 +0000</pubDate><description>The singleton pattern ensures controlled access to a single instance of a class. While it offers significant benefits in terms of resource management and access control, developers must be mindful of its downsides, such as potential scalability issues and the introduction of global states. When used carefully, it can be an invaluable design choice for managing resources and coordinating actions across complex systems.</description><category>design-patterns</category><category>singleton-pattern</category><category>coding-principles</category></item><item>
      <title>Anti-Pattern</title>
      <link>https://senthilnayagan.com/blog/anti-pattern/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/anti-pattern/</guid>
      <pubDate>Tue, 16 Jan 2024 00:00:00 +0000</pubDate><description>Anti-patterns at first seem to be quick and reasonable, they typically have adverse effects in the future. They are design and code smells. It affects our software badly and adds technical debt. We should avoid them at all costs.</description><category>anti-pattern</category><category>design-patterns</category></item><item>
      <title>Getting Started with Terraform: Understanding the Basics</title>
      <link>https://senthilnayagan.com/blog/terraform-basics/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/terraform-basics/</guid>
      <pubDate>Tue, 16 Jan 2024 00:00:00 +0000</pubDate><description>Terraform is an open source infrastructure-as-code tool that allows us to programmatically provision the physical resources required for an application to run.</description><category>terraform</category><category>infrastructure-as-code</category><category>iac</category></item><item>
      <title>Envelope Encryption - Putting Your Encryption Key in an Envelope Is the Safer Option</title>
      <link>https://senthilnayagan.com/blog/envelope-encryption/</link>
      <guid isPermaLink="true">https://senthilnayagan.com/blog/envelope-encryption/</guid>
      <pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><description>Envelope encryption is a way of encrypting plaintext data using a key and then encrypting that key using an another key. This strategy is intended not just to make things more secure but also to enhance performance.</description><category>envelope-encryption</category><category>data-protection</category></item></channel>
</rss>
