<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Hooman</title>
    <description>The latest articles on Forem by Hooman (@hoomanaskari).</description>
    <link>https://forem.com/hoomanaskari</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3896292%2F9242379f-1389-4a16-8a70-dbf3c87bd6fd.jpeg</url>
      <title>Forem: Hooman</title>
      <link>https://forem.com/hoomanaskari</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/hoomanaskari"/>
    <language>en</language>
    <item>
      <title>🧠 Context Engineering: The Skill That Actually Makes AI Work</title>
      <dc:creator>Hooman</dc:creator>
      <pubDate>Fri, 24 Apr 2026 15:59:00 +0000</pubDate>
      <link>https://forem.com/hoomanaskari/context-engineering-the-skill-that-actually-makes-ai-work-1j66</link>
      <guid>https://forem.com/hoomanaskari/context-engineering-the-skill-that-actually-makes-ai-work-1j66</guid>
      <description>&lt;p&gt;Every time you send a message to ChatGPT, Claude, or any LLM, it forgets you exist. No memory of your last conversation. No context from before. Nothing. The only way it “knows” who you are is if you re-introduce yourself. Every. Single. Time. That is not a bug. That is the problem context engineering solves.&lt;/p&gt;

&lt;p&gt;Most people blame the model when AI gives garbage outputs. Wrong diagnosis. The model is not the problem. The context is. Everything an LLM needs to answer your question must be sent WITH your question. Understanding this one thing will change how you work with AI.&lt;/p&gt;

&lt;p&gt;Context has 4 building blocks. Think of each as a dial you can tune.&lt;/p&gt;

&lt;p&gt;1/ Memory&lt;/p&gt;

&lt;p&gt;Your conversation history and preferences. The catch? LLMs have limits. Long conversations get summarized, and that is when “drift” happens. You start repeating yourself. The AI forgets your rules. That is not the model getting dumber. That is imperfect memory management.&lt;/p&gt;

&lt;p&gt;2/ Files&lt;/p&gt;

&lt;p&gt;Documents, screenshots, PDFs fed directly into the context. Hot tip: drop a screenshot into ChatGPT and ask it to build a prompt from it. Works shockingly well.&lt;/p&gt;

&lt;p&gt;3/ RAG (Retrieval Augmented Generation)&lt;/p&gt;

&lt;p&gt;Before your question hits the LLM, smart systems quietly search a knowledge base and stuff relevant results into the context alongside it. That is why internal AI chatbots can answer questions about your specific products. Not magic. Retrieval.&lt;/p&gt;

&lt;p&gt;4/ Tools&lt;/p&gt;

&lt;p&gt;The LLM does not execute tools. It tells your system WHAT to run. Your system runs it, stuffs the result back into the context, and THEN the model answers. Tool calling is the AI directing traffic, not doing the work.&lt;/p&gt;

&lt;p&gt;Most people treat prompts like a black box. Throw stuff in, hope for the best.&lt;/p&gt;

&lt;p&gt;But when you see memory, files, tools, and prompt structure as separate levers, you stop guessing and start engineering.&lt;/p&gt;

&lt;p&gt;The 6 prompt components that actually matter:&lt;/p&gt;

&lt;p&gt;✓ Role: “You are an expert in...”&lt;/p&gt;

&lt;p&gt;✓ Personality: tone and style&lt;/p&gt;

&lt;p&gt;✓ Request: the actual task&lt;/p&gt;

&lt;p&gt;✓ Format: be explicit (bullets, JSON, table)&lt;/p&gt;

&lt;p&gt;✓ Examples: two good, two bad works wonders&lt;/p&gt;

&lt;p&gt;✓ Constraints: “never do X”&lt;/p&gt;

&lt;p&gt;Most people only use the Request and skip the other five.&lt;/p&gt;

&lt;p&gt;Here is the bigger picture.&lt;/p&gt;

&lt;p&gt;Context engineering is not just for developers building agentic systems. It is a thinking skill.&lt;/p&gt;

&lt;p&gt;When you learn to structure information so a machine can reason over it accurately, you get better at structuring information for humans too. Clearer writing. Clearer thinking. Clearer communication.&lt;/p&gt;

&lt;p&gt;Context is not a setting you configure once. Context is everything you send.&lt;/p&gt;

&lt;p&gt;Get that right and the model almost does not matter.&lt;/p&gt;

&lt;p&gt;Are you still treating AI like a magic black box, or are you already thinking about context?&lt;/p&gt;

&lt;p&gt;Drop a comment. I am curious where people are at with this.&lt;/p&gt;

&lt;p&gt;Originally posted on my &lt;a href="https://substack.com/home/post/p-194699076" rel="noopener noreferrer"&gt;Substack&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Google Just Upgraded Its AI Research Agent, and It's a Big Deal</title>
      <dc:creator>Hooman</dc:creator>
      <pubDate>Fri, 24 Apr 2026 15:42:17 +0000</pubDate>
      <link>https://forem.com/hoomanaskari/google-just-upgraded-its-ai-research-agent-and-its-a-big-deal-5e3l</link>
      <guid>https://forem.com/hoomanaskari/google-just-upgraded-its-ai-research-agent-and-its-a-big-deal-5e3l</guid>
      <description>&lt;p&gt;Google DeepMind announced two significant evolutions of its autonomous research agent: Deep Research and Deep Research Max. Both are built on Gemini 3.1 Pro, and together they represent a meaningful shift in what AI-assisted research can actually do at a professional level.&lt;/p&gt;

&lt;p&gt;If you’ve been following the AI space, you’ll know that “research agents” have been a hot topic. But most of them still feel like glorified summarizers. Google is making a credible case that it’s moving past that.&lt;/p&gt;

&lt;p&gt;From Summarizer to Research Engine&lt;/p&gt;

&lt;p&gt;When Google first released the Gemini Deep Research agent to developers back in December 2025 via the Interactions API, it was already impressive. But the team describes the new version as a transformation from “a sophisticated summarization engine into a foundation for enterprise workflows.” That’s not just marketing language. The new agents are designed to support real-world use cases in finance, life sciences, and market research, producing fully cited, professional-grade analyses from a single API call. The key upgrade? The ability to blend the open web with proprietary data streams, which changes the game significantly for enterprise users.&lt;/p&gt;

&lt;p&gt;Two Agents, Two Use Cases&lt;/p&gt;

&lt;p&gt;Google is now offering two distinct configurations. Deep Research is the speed-optimized option, built for interactive user surfaces where low latency matters. Think of it as the version you’d embed directly into a product that a user is actively engaging with. Deep Research Max is the heavy-duty option, using extended test-time compute to iteratively reason, search, and refine its output. Google specifically positions it for asynchronous, background workflows, like a nightly cron job that generates exhaustive due diligence reports for an analyst team by morning.&lt;/p&gt;

&lt;p&gt;MCP Support, Native Charts, and Multimodal Inputs&lt;/p&gt;

&lt;p&gt;Three new capabilities stand out. First, Model Context Protocol (MCP) support is arguably the most significant addition. Deep Research can now connect to custom data sources and specialized professional data providers (think financial data, market intelligence platforms) securely via MCP. This turns it from a web searcher into an autonomous agent capable of navigating any specialized data repository you point it at. Google is already collaborating with FactSet, S&amp;amp;P Global, and PitchBook on their MCP server designs.&lt;/p&gt;

&lt;p&gt;Second, native charts and infographics are new for the Gemini API. The agent now generates high-quality charts and infographics inline with HTML, dynamically visualizing complex data sets within the report itself. That’s a meaningful step toward presentation-ready outputs.&lt;/p&gt;

&lt;p&gt;Third, multimodal research grounding means you can feed the agent a mix of PDFs, CSVs, images, audio, and video as input context. Combined with Google Search, URL context, code execution, and file search running simultaneously, the tool is starting to look like a genuine research analyst rather than a chatbot with a search button.&lt;/p&gt;

&lt;p&gt;Collaborative Planning and Real-Time Streaming&lt;/p&gt;

&lt;p&gt;Two other additions are worth noting for developers and product builders. Collaborative planning lets you review and refine the agent’s research plan before it begins execution, giving you granular control over scope. This is critical in regulated industries where you need to know exactly what the agent is and isn’t looking at. Real-time streaming, meanwhile, lets you track the agent’s intermediate reasoning steps live, with thought summaries and outputs arriving as they’re generated, which is a much better experience than waiting for a finished report to land.&lt;/p&gt;

&lt;p&gt;The Enterprise Bet&lt;/p&gt;

&lt;p&gt;What’s clear from this announcement is that Google is making a serious enterprise play. The focus on finance and life sciences, the partnerships with FactSet, S&amp;amp;P Global, and PitchBook, and the emphasis on factuality and source diversity all point to a product team working in regulated, high-stakes environments. Google also notes that Deep Research already powers research capabilities inside the Gemini App, NotebookLM, Google Search, and Google Finance, which is a meaningful signal about the maturity of the underlying infrastructure.&lt;/p&gt;

&lt;p&gt;Deep Research and Deep Research Max are available today in public preview via paid tiers in the Gemini API, with Google Cloud availability for startups and enterprises coming soon. If you’re building research-heavy products or workflows, this is worth a close look.&lt;/p&gt;

&lt;p&gt;Originally posted on my &lt;a href="https://substack.com/home/post/p-194971600" rel="noopener noreferrer"&gt;Substack&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>google</category>
      <category>gemini</category>
    </item>
    <item>
      <title>How I learn in the age of Ai coding</title>
      <dc:creator>Hooman</dc:creator>
      <pubDate>Fri, 24 Apr 2026 15:39:23 +0000</pubDate>
      <link>https://forem.com/hoomanaskari/how-i-learn-in-the-age-of-ai-coding-53p9</link>
      <guid>https://forem.com/hoomanaskari/how-i-learn-in-the-age-of-ai-coding-53p9</guid>
      <description>&lt;p&gt;There is a strange thing that happens when AI starts writing your code for you. You might assume learning slows down. That you become passive. That you are just a prompt monkey, copy-pasting outputs and shipping features without really understanding what is going on under the hood.&lt;/p&gt;

&lt;p&gt;That has not been my experience at all. At least not anymore.&lt;/p&gt;

&lt;p&gt;If anything, I am learning differently now, and in some ways more richly than before. The topics I am picking up are not always the ones I expected to care about. But they are sticking, and they are making me a better builder. Let me explain what I mean.&lt;/p&gt;

&lt;p&gt;The AI Codes, But I Still Have to Understand the Problem&lt;/p&gt;

&lt;p&gt;When I work with an AI coding assistant, the code gets written fast. But bugs still surface. Edge cases still bite. And when something breaks, I still have to diagnose it. That diagnosis process is where a lot of my learning now lives.&lt;/p&gt;

&lt;p&gt;A recent example: I was building a text-to-speech (TTS) feature. The AI scaffolded the whole thing quickly. But then things started going wrong in ways I did not immediately understand. Fixing those issues sent me down some genuinely interesting rabbit holes.&lt;/p&gt;

&lt;p&gt;Learning About TTS Input Length Limits and Chunking&lt;/p&gt;

&lt;p&gt;The first thing I ran into was that TTS APIs have input length limitations. Most of them cap how much text you can send in a single request. When I fed a long block of content into the API, it either failed silently or threw an error I did not immediately recognize.&lt;/p&gt;

&lt;p&gt;The AI could generate a chunking solution for me, and it did. But to actually steer it toward the right solution, I had to understand the problem first. What counts as a “chunk”? Do you split on character count, word count, or sentence boundaries? What happens if you split mid-sentence? Does the audio sound jarring at the seam?&lt;/p&gt;

&lt;p&gt;I learned that splitting on sentence boundaries produces much cleaner audio output. I learned about the tradeoffs between chunk size and API latency. I learned how to think about reassembling audio segments in the right order. None of this was in the original feature spec. All of it came from debugging a problem the AI helped create and then helped solve.&lt;/p&gt;

&lt;p&gt;Learning About Markdown and Special Characters in TTS&lt;/p&gt;

&lt;p&gt;The second rabbit hole was even more interesting. When you pipe markdown content directly into a TTS engine, it reads everything. And I mean everything. The asterisks. The pound signs. The underscores. The hyphens used as bullet points.&lt;/p&gt;

&lt;p&gt;Suddenly your clean article gets narrated as “asterisk asterisk important asterisk asterisk” and the whole thing sounds broken. This is not a bug exactly. It is just a mismatch between how markdown is structured for visual rendering versus how raw text is processed by a speech engine.&lt;/p&gt;

&lt;p&gt;To fix it, I had to learn about stripping markdown before passing text to TTS. There are libraries that help with this, and the AI pointed me toward them. But understanding why the problem existed, and what categories of characters cause issues, meant I could write better prompts the next time. I could tell the model exactly what I needed: strip headers, remove emphasis markers, preserve sentence structure, handle code blocks gracefully.&lt;/p&gt;

&lt;p&gt;That kind of specific instruction only comes from having gone through the problem once.&lt;/p&gt;

&lt;p&gt;Learning About Porosity&lt;/p&gt;

&lt;p&gt;This one came from a completely different project but the same pattern. I was working on something that involved understanding how materials or data structures “breathe,” for lack of a better word. How things pass through layers. The concept of porosity came up, and because the AI was doing the implementation, I had the mental space to actually sit with the concept rather than rushing to write code.&lt;/p&gt;

&lt;p&gt;I looked it up. I read about it. I let myself get curious about it in a way that I might not have if I had been heads-down in syntax.&lt;/p&gt;

&lt;p&gt;That is a real benefit of AI-assisted development that does not get talked about enough. When the mechanical parts of coding are handled, you get cognitive headroom to actually learn the domain you are building in.&lt;/p&gt;

&lt;p&gt;How This Changes the Way I Work Next Time&lt;/p&gt;

&lt;p&gt;Here is the part that matters most to me. Every one of these learning moments, TTS chunking, markdown stripping, porosity, they do not just inform the current project. They change how I approach the next project.&lt;/p&gt;

&lt;p&gt;When I hit a TTS feature again, I will prompt the AI differently from the start. I will say: handle input length limits with sentence-aware chunking, strip markdown before synthesis, and return audio segments in order. That is a much better starting prompt than “build me a TTS feature.” The AI can only be as precise as the person steering it.&lt;/p&gt;

&lt;p&gt;This is the core of how I think about learning in this era. The AI handles execution. My job is to build a richer and richer mental model of the problem space so that I can direct the execution better each time. The learning loop is still very much alive. It just runs through different channels now.&lt;/p&gt;

&lt;p&gt;The Takeaway&lt;/p&gt;

&lt;p&gt;AI coding has not made learning irrelevant. It has shifted what you need to learn and when. You spend less time memorizing syntax and more time understanding systems, constraints, and domain concepts. You learn through debugging, through curiosity, and through the iterative process of steering a model toward better outputs.&lt;/p&gt;

&lt;p&gt;Every weird edge case is a lesson. Every broken feature is a map of something you did not know yet. And the next time you sit down to build something similar, you bring all of that with you.&lt;/p&gt;

&lt;p&gt;That feels like learning to me.&lt;/p&gt;

&lt;p&gt;Originally posted on my &lt;a href="https://substack.com/home/post/p-194240680" rel="noopener noreferrer"&gt;Substack&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
