Category: AI

  • Installing n8n on Raspberry Pi 3B

    Installing n8n on Raspberry Pi 3B

    I recently decided to set up n8n on my Raspberry Pi 3B to automate my social media workflow, thanks to n8n’s availability for self hosted setups.

    The Pi was already running Pi-hole 24/7 as my network’s DNS server, so I wanted a solution that wouldn’t interfere with it. Here’s what I learned after trying the standard approach and eventually succeeding with Docker.

    The Failed Attempt: Direct Install

    I started with a guide designed for newer Raspberry Pis (Pi 4/5), following instructions from various tutorials that suggested a direct npm installation. The process seemed straightforward:

    bash

    # The approach that DIDN'T work on Pi 3B
    npm install n8n -g
    n8n start
    

    What went wrong: The installation would start, but then freeze the entire Pi. The limited 1GB RAM on the Pi 3B couldn’t handle the build process. I had to force restart the Pi multiple times. Even the uninstall and update commands wouldn’t work properly, leaving me to manually remove the n8n folder.

    The Solution: Docker Installation

    After the npm failures, I switched to Docker following instructions provided by Claude. This approach uses pre-built images, completely bypassing the resource-intensive build process. Here’s the complete setup that worked perfectly.

    Step 1: Install Docker

    bash

    # Install Docker
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh
    
    # Add your user to docker group (avoids needing sudo)
    sudo usermod -aG docker $USER
    
    # Log out and back in for group changes to take effect
    

    Verify Docker is installed:

    bash

    docker --version
    

    Step 2: Install Docker Compose

    bash

    sudo apt-get update
    sudo apt-get install -y docker-compose
    

    Step 3: Create n8n Directory and Configuration

    bash

    # Create directory for n8n
    mkdir -p ~/n8n
    cd ~/n8n
    
    # Create docker-compose.yml
    cat > docker-compose.yml << 'EOF'
    version: '3.3'
    
    services:
      n8n:
        image: n8nio/n8n:latest
        container_name: n8n
        restart: unless-stopped
        ports:
          - "5678:5678"
        environment:
          - N8N_SECURE_COOKIE=false
        volumes:
          - ./data:/home/node/.n8n
    EOF
    

    Note on version: I initially used version: '3.8' but got an error about unsupported version. The older docker-compose on Pi 3B required version: '3.3'.

    Step 4: Fix Permissions (Critical!)

    bash

    # Create data directory and set proper permissions
    mkdir -p ~/n8n/data
    sudo chown -R 1000:1000 ./data
    

    This step is crucial. n8n runs as user ID 1000 inside the container and needs write access to save workflows, credentials, and configuration files.

    Step 5: Start n8n

    bash

    docker-compose up -d
    

    Check if it’s running:

    bash

    docker-compose ps
    docker-compose logs -f n8n
    

    The startup takes 30-60 seconds on a Pi 3B. Once you see logs indicating n8n is running, you can access it at http://[your-pi-ip]:5678 from any device on your network.

    Press Ctrl+C to exit the logs view (this doesn’t stop n8n, just stops viewing the logs).

    Key Configuration Choices

    Why N8N_SECURE_COOKIE=false?

    By default, n8n requires HTTPS for secure cookies. Since we’re running locally without SSL, this setting allows access from other devices on your network. This is perfectly safe for a home network setup.

    Why restart: unless-stopped?

    This ensures n8n automatically starts when your Pi reboots. Docker is configured to start on boot by default, and it will automatically restart any containers marked with this policy.

    Coexisting with Pi-hole

    The beauty of this setup is that n8n and Pi-hole run completely independently:

    • Pi-hole typically runs on port 53 (DNS) and 80/443 (web interface)
    • n8n runs on port 5678
    • Both use Docker’s default network, with no conflicts
    • Combined RAM usage is manageable on the Pi 3B

    Managing n8n

    Here are the essential commands (run from ~/n8n directory):

    bash

    # Stop n8n
    docker-compose stop
    
    # Start n8n
    docker-compose start
    
    # Restart n8n (useful after config changes)
    docker-compose restart
    
    # View logs
    docker-compose logs -f n8n
    
    # Update n8n to latest version
    docker-compose pull
    docker-compose up -d
    
    # Complete removal
    docker-compose down
    rm -rf ~/n8n
    

    Handling OAuth Credentials

    One challenge I encountered was setting up OAuth credentials (Google, LinkedIn, etc.) when accessing the local n8n from my MacBook. Many OAuth providers require the redirect URL to be either HTTPS or localhost.

    Solution: SSH Tunnel

    bash

    # On your Mac/laptop, create an SSH tunnel
    ssh -L 5678:localhost:5678 pi@[your-pi-ip]
    
    # Then access n8n at http://localhost:5678 in your browser
    

    This makes your browser think n8n is running locally, which satisfies OAuth requirements. Once credentials are saved, you can close the tunnel and access n8n normally via the Pi’s IP address. You only need the tunnel when initially setting up OAuth credentials.

    Performance Notes

    The Pi 3B handles n8n surprisingly well for automation workflows:

    • Startup time: 30-60 seconds after reboot
    • Workflow execution: Perfectly adequate for scheduled tasks
    • Web interface: Responsive enough for editing workflows
    • RAM usage: n8n + Pi-hole combined use ~45%, leaving headroom

    For workflows that need AI processing (like my LinkedIn post generator), I’m calling LM Studio running on my MacBook over the network. The Pi handles the orchestration, while the heavy AI work happens on more powerful hardware.

    Troubleshooting Tips

    If the container keeps restarting: Check permissions on the data folder. The error logs will show “EACCES: permission denied” if this is the issue.

    If you can’t access from other devices: Make sure you’ve set N8N_SECURE_COOKIE=false in the environment variables and restarted the container.

    If Docker isn’t starting on boot: Enable it with sudo systemctl enable docker

    Final Thoughts

    The Docker approach transformed what seemed like an impossible task into a straightforward 10-minute setup. While the Pi 3B isn’t powerful enough to compile n8n from source, it’s more than capable of running the pre-built Docker image alongside Pi-hole.

    If you’re running a Pi 3B and want to add n8n to your home automation stack, skip the npm route entirely and go straight to Docker. Your Pi (and your sanity) will thank you.

    Complete Setup Script

    For reference, here’s the entire setup in one script:

    bash

    #!/bin/bash
    
    # Install Docker
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh
    sudo usermod -aG docker $USER
    
    # Install Docker Compose
    sudo apt-get update
    sudo apt-get install -y docker-compose
    
    # Create n8n directory
    mkdir -p ~/n8n
    cd ~/n8n
    
    # Create docker-compose.yml
    cat > docker-compose.yml << 'EOF'
    version: '3.3'
    
    services:
      n8n:
        image: n8nio/n8n:latest
        container_name: n8n
        restart: unless-stopped
        ports:
          - "5678:5678"
        environment:
          - N8N_SECURE_COOKIE=false
        volumes:
          - ./data:/home/node/.n8n
    EOF
    
    # Create and set permissions on data directory
    mkdir -p data
    sudo chown -R 1000:1000 ./data
    
    # Start n8n
    docker-compose up -d
    
    echo "n8n is starting up. Access it at http://$(hostname -I | awk '{print $1}'):5678 in about 60 seconds."
    echo "View logs with: docker-compose logs -f n8n"
    

    Save this as install-n8n.sh, make it executable with chmod +x install-n8n.sh, and run it with ./install-n8n.sh. Note that you’ll need to log out and back in after the script runs for Docker group permissions to take effect, then run docker-compose up -d from the ~/n8n directory.

  • From Clicks to Conversations: How AI Agents Are Revolutionizing Business

    From Clicks to Conversations: How AI Agents Are Revolutionizing Business

    For the last decade, businesses have invested heavily in “Digital Transformation,” building powerful digital tools and processes to modernize their operations. While this era brought significant progress, it also created a persistent challenge. The tools we built—from CRMs to ERPs—were largely dependent on structured data: the neat, organized numbers and categories found in a spreadsheet or database. Computers excel at processing this kind of information.

    The problem is that the most valuable business intelligence isn’t structured. The context behind a business plan locked in a 100-slide presentation, the nuance of a customer relationship captured in a rep’s notes, or the true objective of a strategy discussed in a meeting—this is all unstructured data. This divide has created a major hurdle for business efficiency, as great ideas often get lost when people try to translate them into the rigid, structured systems that computers understand.

    The Old Way: The Limits of Traditional Digital Tools

    The first wave of digital tools, from customer relationship management (CRM) software to accounting platforms, were designed for humans to operate. Their critical limitation was their reliance on structured data, which forced people to act as human translators. A brilliant, nuanced strategy conceived in conversations and documents had to be manually broken down and entered into rigid forms and fields.

    This created a significant “gap between business strategy and execution,” where high-level vision was lost during implementation. The result was heavy “change management overheads,” not just because teams needed training on new software, but because of the cognitive friction involved. People are used to working with the unstructured information in their heads; these tools forced them to constantly translate their natural way of thinking into structured processes the software could understand.

    Information TypeBusiness Example
    StructuredEntries in a CRM database, financial data in an accounting platform, inventory numbers in an ERP system.
    UnstructuredA 100-slide brand plan document, a sales rep’s recorded notes describing a doctor they just met, emails discussing a new brand strategy.

    This reliance on structured systems meant that the tools, while digital, couldn’t fully grasp the human context of the work they were supposed to support. A new approach was needed—one that could understand information more like a person does.

    A Smarter Way: Introducing AI Agents

    Welcome to the era of “AI Transformation.” At the heart of this new wave are AI Agents: specialized digital team members that can augment a human workforce. Think of them as a dedicated marketing agent, a sales agent, or a data analyst agent, each designed to perform specific business functions.

    The single most important capability of AI agents is their ability to work with both structured and unstructured information. You can communicate a plan to an agent by typing a message, speaking, or providing a document—just as you would with a human colleague. This fundamental shift from clicking buttons to holding conversations unlocks three profound benefits:

    • Bridging the Strategy-to-Execution Gap: AI agents can understand the nuance of an unstructured plan—the “why” behind the “what”—and help execute it without critical information getting lost in translation.
    • Handling All Information Seamlessly: They can process natural language from documents, presentations, or conversations and transform it into the actionable, structured data that existing digital tools need to function.
    • Reducing Change Management: Because agents understand human language, the need for extensive training on rigid software interfaces is significantly reduced. People can work more naturally, supervising the agents as they handle the tedious, structured tasks.

    To see how this works in practice, let’s walk through how a team of AI agents can help plan and execute a marketing campaign from start to finish.

    AI Agents in Action: Launching a Marketing Campaign

    This step-by-step walkthrough shows how AI agents can take a high-level marketing plan from a simple idea to a fully executed campaign, seamlessly connecting unstructured strategy with structured execution.

    1. The Starting Point: The Marketing Brief – The process begins when a brand manager provides a marketing brief. This brief is pure unstructured information—it could be a presentation, a document, or even the transcript of a planning conversation. It contains the high-level goals and vision for the campaign.
    2. Deconstructing the Brief: The Brand Manager Agent – A specialized “Brand Manager” agent analyzes the unstructured brief and extracts the core business context elements. It identifies key information such as:
      • Business objectives
      • Target audience definitions
      • Key messages
      • Brands in focus
      • Timelines and milestones
    3. The agent then organizes this information into structured, machine-readable “context blocks,” creating a clear, logical foundation that other systems and agents can use.
    4. Understanding the Customer: The Digital Sales Agent – Next, a “Digital Sales” agent contributes by performing customer profiling. It can take unstructured, natural language descriptions of customers (for instance, from a sales rep’s recorded notes) and map them to formal, structured customer segments and personas. This builds a richer, more accurate customer profile than a simple survey could provide.
    5. Creating the Content: The Content Writer Agent – Using the structured business context from the Brand Manager agent, a “Content Writer” agent assembles personalized content. It can reuse and repurpose existing content from a library of approved modules, accelerating content creation while ensuring brand compliance.
    6. Executing the Plan: The Next Best Action (NBA) Engine – Finally, the system brings everything together to recommend the “Next Best Action.” This engine synthesizes the campaign’s business context, the customer’s profile, the available content, and their recent engagement history to suggest the perfect next step for each customer. It recommends precisely what content to send and which channel to use, turning high-level strategy into a concrete, personalized action.

    This orchestrated workflow makes the entire process smoother, faster, and far more intelligent. It creates a virtuous cycle, where the system learns from every interaction to continuously improve the overall strategy and execution over time.

    The Future of Work is Collaborative

    The rise of AI agents marks a fundamental shift in how we work with technology. We are moving from a world where humans must adapt to operate digital tools to one where humans supervise intelligent AI agents that use those tools on our behalf.

    This new wave of AI transformation is not about replacing people, but about augmenting their human workforce without adding headcount. By handling the translation between unstructured human ideas and structured digital processes, AI agents help businesses reduce friction, cut down on turnaround times, and finally bridge the long-standing gap between their biggest strategies and their real-world execution.

  • GitHub’s SpecKit: The Structure Vibe Coding Was Missing

    GitHub’s SpecKit: The Structure Vibe Coding Was Missing

    When I first started experimenting with “vibe coding,” building apps with AI agents felt like a superpower. The ability to spin up prototypes in hours was exhilarating. But as I soon discovered, the initial thrill came with an illusion. It was like managing a team of developers with an attrition rate measured in minutes—every new prompt felt like onboarding a fresh hire with no idea what the last one had been working on.

    The productivity boost was real, but the progress was fragile. The core problem was context—a classic case of the law of leaky abstractions applied to AI. Models would forget why they made certain choices or break something they had just built. To cope, I invented makeshift practices: keeping detailed dev context files, enforcing strict version control with frequent commits, and even asking the model to generate “reset prompts” to re-establish continuity. Messy, ad hoc, but necessary.

    That’s why GitHub’s announcement of SpecKit immediately caught my attention. SpecKit is an open-source toolkit for what they call “spec-driven development.” Instead of treating prompts and chat logs as disposable artifacts, it elevates specifications to first-class citizens of the development lifecycle.

    In practice, this means:

    • Specs as Durable Artifacts: Specifications live in Git alongside your code—permanent, version-controlled, and not just throwaway notes.
    • Capturing Intent: They document the why—the constraints, purpose, and expected behavior—so both humans and AI stay aligned.
    • Ensuring Continuity: They serve as the source of truth, keeping projects coherent across sessions and contributors.

    For anyone who has tried scaling vibe coding beyond a demo, this feels like the missing bridge. It brings just enough structure to carry a proof-of-concept into maintainable software.

    And it fits into a larger story. Software engineering has always evolved in waves—structured programming, agile, test-driven development. Each wave added discipline to creativity, redefining roles to reflect new economic realities—a pattern we’re seeing again with agentic coding. Spec-driven development could be the next step:

    • Redefining the Developer’s Role: Less about writing boilerplate, more about designing robust specs that guide AI agents.
    • Harnessing Improvisation: Keeping the creative energy of vibe coding, but channeling it within a coherent framework.
    • Flexible Guardrails: Not rigid top-down rules, but guardrails that allow both creativity and scalability.

    Looking back, my dev context files and commit hygiene were crude precursors to this very idea. GitHub’s SpecKit makes clear that those instincts weren’t just survival hacks—they pointed to where the field is heading.

    The real question now isn’t whether AI can write code—we know it can. The question is: how do we design the frameworks that let humans and AI build together, reliably and at scale?

    Because as powerful as vibe coding feels, it’s only when we bring structure to the improvisation that the music really starts.


    👉 What do you think—will specs become the new lingua franca between humans and AI?

  • From Chess Master to Self-Driving Car: Understanding AI’s Big Picture

    From Chess Master to Self-Driving Car: Understanding AI’s Big Picture

    This is a crosspost of my article for The Print

    AI is replacing jobs—but which ones, and why? That question keeps resurfacing as headlines ping between panic and hype. The real answer, though, lies not in broad generalizations but in a deeper understanding of how different types of AI actually work—and more importantly, where they thrive and where they struggle.

    To unpack this, let’s start with a tale of two AIs. One plays chess. The other drives a car.

    The Game That Changed Everything

    Chess was once the gold standard of human intelligence. It required memory, strategy, foresight—surely, we thought, only the brightest minds could master it. Then came Deep Blue, then AlphaZero, and today, chess engines far outstrip the world’s best grandmasters.

    Why? Because chess is a closed world. The board is an eight-by-eight grid. The rules are fixed. Every piece behaves predictably. A knight never surprises you by moving like a queen. And the worst that can happen if the AI makes a mistake? It loses the game. No one gets hurt.

    That’s what makes chess such a perfect domain for AI. It’s highly predictable, and the consequences of error are minimal.

    The Road That Refuses to Be Tamed

    Now think of a self-driving car. Its environment is the polar opposite of a chessboard. The road is full of unpredictable drivers, jaywalking pedestrians, blown-out tires, random construction, rain-slicked asphalt, and sudden GPS glitches. There’s no guaranteed script.

    Worse, a single error can have catastrophic results. A misjudged turn or a missed stop sign doesn’t just mean “game over”—it could mean injury or even death. In this world, low predictability collides with high consequences, demanding an entirely different kind of intelligence—one that machines still struggle to master.

    The Two-Axis Map of AI’s Real Power

    What separates chess-playing AIs from self-driving ones isn’t just technical complexity. It’s the nature of the task itself. And that brings us to the core idea: a two-axis map that helps us understand where AI excels, where it falters, and what it means for the future of work.

    Imagine a graph:

    • On the horizontal axis, you have Predictability. To the right: structured, rule-based tasks like bookkeeping or board games. To the left: chaotic, real-world tasks like emergency response or childcare.
    • On the vertical axis, you have Consequence of Error. At the bottom: low-stakes domains where mistakes are annoying but harmless, like a bad movie recommendation. At the top: high-stakes arenas where a single misstep can cause financial ruin or loss of life.

    Jobs that sit in the bottom-right corner—predictable and low-consequence—are prime targets for full automation. Think data entry, inventory tracking, or sorting packages in a warehouse. Machines handle these with ease.

    But jobs in the top-left corner—unpredictable and high-consequence—remain stubbornly human. Think surgeons, firefighters, diplomats, or yes, even taxi drivers. These roles demand judgment, adaptability, empathy, and accountability. They are much harder, if not impossible, for AI to fully replace.

    Enter the Centaur

    This is where one of the most powerful ideas in AI comes into play: human-AI collaboration. Borrowed from the world of chess, it’s called “Centaur Chess.”

    In Centaur Chess, human players team up with AI engines. The machine crunches millions of possibilities per second. The human brings strategy, creativity, and long-term thinking. Together, they often outperform both lone humans and pure AI systems.

    This hybrid model is the future of many professions. In medicine, AI can scan thousands of X-rays in seconds, flagging anomalies. But a doctor makes the final call, understanding the patient’s story, context, and risks. In creative fields, AI can generate endless design variations, but an artist selects, curates, and gives meaning.

    The centaur doesn’t fear the machine. It rides it.

    Rethinking the Future of Work

    So, when people ask, “Will AI take my job?” the better question is: What kind of task is it? Is it rule-based or fuzzy? Are the stakes low or life-changing?

    AI is incredibly powerful at doing narrow, well-defined things faster than any human. But it is brittle in the face of chaos, ambiguity, and moral weight. And in those very places—where the world is messy and the stakes are high—humans are not just relevant; they are indispensable.

    The future of work won’t be a clean divide between jobs AI can do and jobs it can’t. It will be a layered world, where the most effective roles are those that blend human judgment with machine intelligence. So yes, some jobs will disappear. But others will evolve. And the real winners will be the centaurs.

  • India’s Race Between Demography and AI

    India’s Race Between Demography and AI

    Artificial Intelligence is often framed as a threat to jobs—a disruptive force poised to replace human labour at an unprecedented scale. From call centres to accounting firms, from routine coding to legal research, Generative AI and automation tools are already demonstrating capabilities that once seemed untouchable. The fear of widespread job loss is not unfounded. McKinsey, among others, estimates that nearly a quarter of global work activities could be automated by the early 2030s.

    Yet, there is another equally significant demographic trend reshaping the labour market—the aging of populations. In countries such as Japan, South Korea, Germany, and even China, the working-age population is shrinking. This is not because jobs are disappearing, but because people are. Fertility rates have fallen below replacement levels, and the proportion of elderly citizens is rising sharply. These nations face a paradox: they need more workers but have fewer people available to fill roles.

    AI and Aging: Complementary Forces in Developed Countries

    This is where AI and aging unexpectedly complement each other. In economies that are already greying, AI is less a destroyer of jobs and more a replacement for the labour that no longer exists. Japan, for example, has pioneered the use of robotics and AI-driven systems not to replace young workers, but to stand in for absent ones—care robots for the elderly, AI-assisted diagnostics for hospitals short on doctors, and factory automation for industries facing chronic staff shortages.

    In such societies, the fear of AI taking away jobs is muted by the demographic reality that many jobs would otherwise remain unfilled. AI is effectively stepping into the gap created by demographic decline. For them, the challenge is not managing unemployment but managing the technological transition in a way that sustains productivity and care standards as their populations age.

    India’s Young Advantage—and the Ticking Clock

    India, however, tells a different story. The country’s demographic structure is still overwhelmingly young. Nearly two-thirds of Indians are in the working-age bracket, and the median age is around 28—more than a decade younger than China or the U.S. This “demographic dividend” has been hailed as India’s biggest economic advantage for the next 10–15 years. But this window is finite.

    Demographers estimate that by the mid-2030s, India’s working-age population will peak. After that, the proportion of elderly citizens will start rising sharply. By 2046, the elderly are projected to outnumber children under 14. In other words, India’s advantage will begin to fade just as many advanced economies have already entered the post-dividend phase. If India cannot create enough productive jobs during this critical decade, its youth bulge may turn into a liability.

    AI’s Adoption Curve

    The question is: will AI go mainstream while India’s workforce is still young? Current projections suggest that large-scale AI adoption is still 5–15 years away. Today’s Generative AI tools, while impressive, remain in an experimental phase. They lack reliability, governance frameworks, and cost efficiency at scale. Gartner’s hype cycle places most AI technologies in the “Trough of Disillusionment,” meaning that widespread productivity gains will take years to materialize.

    If this trajectory holds, AI’s mainstream integration across sectors like healthcare, education, law, and public administration may not happen until the 2030s—roughly the same time that India’s demographic dividend starts to decline. This sets up an intriguing scenario where India’s labour market transition and AI’s maturity could synchronize.

    Possible Scenarios for India

    1. The Collision Scenario:

    If AI adoption accelerates too quickly, India’s youthful workforce may find itself competing against machines for jobs before the country has built a strong industrial and service base. Sectors such as BPO, customer service, and low-skill IT roles—once the backbone of India’s outsourcing economy—could see rapid automation. Without massive reskilling efforts, unemployment among young Indians could spike even as the global economy demands fewer entry-level jobs.

    2. The Missed Opportunity Scenario:

    Alternatively, if AI adoption lags too far behind—say, beyond 2040—India could enter its aging phase without having reaped the productivity gains AI promises. By then, the country would face the dual pressures of a shrinking workforce and a delayed technological transition. This would mirror some of the struggles seen in late-industrializing economies that missed the manufacturing wave.

    3. The Synchronization Scenario:

    The most optimistic possibility is that AI and India’s demographic transition align productively. Over the next decade, India could use its young workforce to build, train, and scale AI systems, preparing the ground for when labour shortages begin. By the time the aging curve hits in the 2035–2040 period, AI could step in not as a threat, but as a productivity amplifier—automating routine tasks while humans focus on complex, creative, or empathetic roles.

    This requires a proactive strategy: early investment in AI literacy, creation of AI-enabled jobs (rather than job replacement), and building a global service economy where Indians are not just users of AI, but architects of AI solutions.

    The Decisive Decade

    India’s story in the 2030s will be defined by the intersection of two megatrends: a maturing workforce and a maturing technology. Whether this convergence leads to disruption or opportunity depends on choices made now—in education, infrastructure, governance, and industry adoption. The challenge is to ensure that when AI becomes mainstream, India’s workforce is not left behind but is ready to ride the wave. The 2020s are not just a decade of demographic advantage—they are the runway for an AI-driven, post-dividend future.

  • The Economic Reality and the Optimistic Future of Agentic Coding

    The Economic Reality and the Optimistic Future of Agentic Coding

    After a couple of months deep in the trenches of vibe coding with AI agents, I’ve learned this much: scaling from a fun, magical PoC to an enterprise-grade MVP is a completely different game.

    Why Scaling Remains Hard—And Costly

    Getting a prototype out the door? No problem.

    But taking it to something robust, secure, and maintainable? Here’s where today’s AI tools reveal their limits:

    • Maintenance becomes a slog. Once you start patching AI-generated code, hidden dependencies and context loss pile up. Keeping everything working as requirements change feels like chasing gremlins through a maze.
    • Context loss multiplies with scale. As your codebase grows, so do the risks of agents forgetting crucial design choices or breaking things when asked to “improve” features.

    And then there’s the other elephant in the room: costs.

    • The cost scaling isn’t marginal—not like the old days of cloud or Web 2.0. Powerful models chew through tokens and API credits at a rate that surprises even seasoned devs.
    • That $20/month Cursor plan with unlimited auto mode? For hobby projects, it’s a steal. For real business needs, I can see why some queries rack up millions of tokens and would quickly outgrow even the $200 ultra plan.
    • This is why we’re seeing big tech layoffs and restructuring: AI-driven productivity gains aren’t evenly distributed, and the cost curve for the biggest players keeps climbing.

    What the Data Tells Us

    That research paper—Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity—had a surprising conclusion:

    Not only did experienced developers see no time savings on real-world coding tasks with AI, but costs increased as they spent more time reviewing, correcting, and adapting agent output.

    The lesson:

    AI shifts where the work happens—it doesn’t always reduce it. For now, scaling with agents is only as good as your processes for context, review, and cost control.

    Why I Remain Optimistic

    Despite the challenges, I’m genuinely excited for what’s coming next.

    • The platforms and models are evolving at warp speed. Many of the headaches I face today—context loss, doc gaps, cost blind spots—will get solved just as software engineering best practices eventually became codified in our tools and frameworks.
    • Agentic coding will find its place. It might not fully automate developer roles, but it will reshape teams: more focus on high-leverage decisions, design, and creative problem-solving, less on boilerplate and “busy work.”

    And if you care about the craft, the opportunity is real:

    • Devs who learn to manage, review, and direct agents will be in demand.
    • Organizations that figure out how to blend agentic workflows with human expertise and robust process will win big.

    Open Questions for the Future

    • Will AI agentic coding mean smaller, nimbler teams—or simply more ambitious projects for the same headcount?
    • How will the developer role evolve when so much code is “synthesized,” not hand-crafted?
    • What new best practices, cost controls, and team rituals will we invent as agentic coding matures?

    Final thought:

    The future won’t be a return to “pure code” or a total AI handoff. It’ll be a blend—one that rewards curiosity, resilience, and the willingness to keep learning.

    Where do you see your work—and your team—in this new landscape?

  • The Law of Leaky Abstractions & the Unexpected Slowdown

    The Law of Leaky Abstractions & the Unexpected Slowdown

    If the first rush of agentic/vibe coding feels like having a team of superhuman developers, the second phase is a reality check—one that every software builder and AI enthusiast needs to understand.

    Why “Vibe Coding” Alone Can’t Scale

    The further I got into building real-world prototypes with AI agents, the clearer it became: Joel Spolsky’s law of leaky abstractions is alive and well.

    You can’t just vibe code your way to a robust app—because underneath the magic, the cracks start to show fast. AI-generated coding is an abstraction, and like all abstractions, it leaks. When it leaks, you need to know what’s really happening underneath.

    My Experience: Hallucinations, Context Loss, and Broken Promises

    I lost count of the times an agent “forgot” what I was trying to do, changed underlying logic mid-stream, or hallucinated code that simply didn’t run. Sometimes it wrote beautiful test suites and then… broke the underlying logic with a “fix” I never asked for. It was like having a junior developer who could code at blazing speed—but with almost no institutional memory or sense for what mattered.

    The “context elephant” is real. As sessions get longer, agents lose track of goals and start generating output that’s more confusing than helpful. That’s why my own best practices quickly became non-negotiable:

    • Frequent commits and clear commit messages
    • Dev context files to anchor each session
    • Separate dev/QA/prod environments to avoid catastrophic rollbacks (especially with database changes)

    What the Research Shows: AI Can Actually Slow Down Experienced Devs

    Here’s the kicker—my frustration isn’t unique.

    A recent research paper, Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity, found that experienced developers actually worked slower with AI on real-world tasks. That’s right—AI tools didn’t just fail to deliver the expected productivity boost, they created friction.

    Why?

    • Only about 44% of AI-generated code was accepted
    • Developers lost time reviewing, debugging, and correcting “bad” generations
    • Context loss and reliability issues forced more manual intervention, not less

    This matches my experience exactly. For all the hype, these tools introduce new bottlenecks—especially if you’re expecting them to “just work” out of the box.

    Lessons from the Frontlines (and from Agent Week)

    I’m not alone. In the article What I Learned Trying Seven Coding Agents, Timothy B. Lee finds similar headaches:

    • Agents get stuck
    • Complex tasks routinely stump even the best models
    • Human-in-the-loop review isn’t going anywhere

    But the tools are still useful—they’re not a dead end. You just need to treat them like a constantly rotating team of interns, not fully autonomous engineers.

    Best Practices: How to Keep AI Agents Under Control

    So how do you avoid the worst pitfalls?

    The answer is surprisingly old-school:

    • Human supervision for every critical change
    • Sandboxing and least privilege for agent actions
    • Version control and regular context refreshers

    Again, Lee’s article Keeping AI agents under control doesn’t seem very hard nails it:

    Classic engineering controls—proven in decades of team-based software—work just as well for AI. “Doomer” fears are overblown, but so is the hype about autonomy.

    Conclusion: The Hidden Cost of Abstraction

    Vibe coding with agents is like riding a rocket with no seatbelt—exhilarating, but you’ll need to learn to steer, brake, and fix things mid-flight.

    If you ignore the leaky abstractions, you’ll pay the price in lost time, broken prototypes, and hidden tech debt.

    But with the right mix of skepticism and software discipline, you can harness the magic and avoid the mess.

    In my next post, I’ll zoom out to the economics—where cost, scaling, and the future of developer work come into play.

    To be continued…

  • The Thrill and the Illusion of AI Agentic Coding

    The Thrill and the Illusion of AI Agentic Coding

    A few months ago, I stumbled into what felt like a superpower: building fully functional enterprise prototypes using nothing but vibe coding and AI agent tools like Cursor and Claude. The pace was intoxicating—I could spin up a PoC in days instead of weeks, crank out documentation and test suites, and automate all the boring stuff I used to dread.

    But here’s the secret I discovered: working with these AI agents isn’t like managing a team of brilliant, reliable developers. It’s more like leading a software team with a sky-high attrition rate and non-existent knowledge transfer practices. Imagine onboarding a fresh dev every couple of hours, only to have them forget what happened yesterday and misinterpret your requirements—over and over again. That’s vibe coding with agents.

    The Early Magic

    When it works, it really works. I’ve built multiple PoCs this way—each one a small experiment, delivered at a speed I never thought possible. The agents are fantastic for “greenfield” tasks: setting up skeleton apps, generating sample datasets, and creating exhaustive test suites with a few prompts. They can even whip up pages of API docs and help document internal workflows with impressive speed.

    It’s not just me. Thomas Ptacek’s piece “My AI Skeptic Friends Are All Nuts” hits the nail on the head: AI is raising the floor for software development. The boring, repetitive coding work—the scaffolding, the CRUD operations, the endless boilerplate—gets handled in minutes, letting me focus on the interesting edge cases or higher-level product thinking. As they put it, “AI is a game-changer for the drudge work,” and I’ve found this to be 100% true.

    The Fragility Behind the Hype

    But here’s where the illusion comes in. Even with this boost, the experience is a long way from plug-and-play engineering. These AI coding agents don’t retain context well; they can hallucinate requirements, generate code that fails silently, or simply ignore crucial business logic because the conversation moved too fast. The “high-attrition, low-knowledge-transfer team” analogy isn’t just a joke—it’s my daily reality. I’m often forced to stop and rebuild context from scratch, re-explain core concepts, and review every change with a skeptical eye.

    Version control quickly became my lifeline. Frequent commits, detailed commit messages, and an obsessive approach to saving state are my insurance policy against the chaos that sometimes erupts. The magic is real, but it’s brittle: a PoC can go from “looks good” to “completely broken” in a couple of prompts if you’re not careful.

    Superpowers—With Limits

    If you’re a founder, product manager, or even an experienced developer, these tools can absolutely supercharge your output. But don’t believe the hype about “no-code” or “auto-code” replacing foundational knowledge. If you don’t understand software basics—version control, debugging, the structure of a modern web app—you’ll quickly hit walls that feel like magic turning to madness.

    Still, I’m optimistic. The productivity gains are real, and the thrill of seeing a new prototype come to life in a weekend is hard to beat. But the more I use these tools, the more I appreciate the fundamentals that have always mattered in software—and why, in the next post, I’ll talk about the unavoidable reality check that comes when abstractions leak and AI doesn’t quite deliver on its promise.

    To be continued…

  • A Brief History of Artificial Intelligence: From Turing to Transformers

    A Brief History of Artificial Intelligence: From Turing to Transformers

    This is a crosspost of my article for The Print

    Artificial Intelligence did not begin with code—it began with a question. Could machines think? And if so, how would we even know?

    In 1950, Alan Turing proposed that if a machine could carry on a conversation indistinguishable from a human, it could be called intelligent. This became the Turing Test, and it marked the philosophical beginning of AI.

    The technical beginning followed six years later, at the Dartmouth Workshop of 1956. Organized by John McCarthy, Marvin Minsky, Claude Shannon and others, it launched AI as a formal discipline. The claim was breathtaking: “Every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it.” For a while, that dream held.

    The 1960s and 70s saw AI become a fixture of science fiction. Stanley Kubrick’s 2001: A Space Odyssey imagined HAL 9000, a machine that could speak, reason, and feel—until conflicting objectives caused it to turn rogue. HAL’s breakdown wasn’t madness—it was logic stretched to a breaking point. And that remains one of AI’s deepest warnings: machines may fail not because they malfunction, but because their goals are misaligned with ours.

    From the 1960s to the 1980s, Symbolic AI dominated the field. Intelligence was programmed through logic and rules, not learned from data. Expert systems like MYCIN and DENDRAL mimicked human specialists and briefly dazzled funders, but they were brittle—struggling with ambiguity and real-world complexity. Each new scenario demanded new rules, revealing the limits of hand-coded intelligence.

    The initial optimism faded. Early successes didn’t scale, and by the 1970s and again in the late 1980s, AI faced its winters—eras of disillusionment and vanishing support. The technology wasn’t ready. AI, once hailed as revolutionary, became a cautionary tale.

    Meanwhile, the world of chess provided a battleground for AI’s ambitions. In 1968, computer scientist John McCarthy bet that no machine could beat chess master David Levy in a match within ten years. He was right—but only just. By 1997, IBM’s Deep Blue defeated Garry Kasparov, the reigning world champion. This wasn’t intelligence in the human sense. Deep Blue didn’t think; it calculated—200 million positions per second, guided by rules and brute force.

    If Deep Blue marked a brute-force triumph, the next revolution came from inspiration closer to biology. Our brains are made of neurons and synapses, constantly rewiring based on experience. In 1943, McCulloch and Pitts proposed the first mathematical model of a neural network, mimicking how neurons fire and connect. Decades later, with more data and computational power, this idea would explode into what we now call deep learning.

    A key moment came in 2012. Researchers at Google Brain fed a deep neural network 10 million YouTube thumbnails—without labels. Astonishingly, one neuron began to specialize in detecting cat faces. The machine wasn’t told what a cat was. It discovered “cat-ness” on its own. This was the cat moment—the first clear sign that neural networks could extract meaning from raw data. From then on, deep learning would take off.

    That same year, another milestone arrived. AlexNet, a deep convolutional neural network, entered the ImageNet Challenge, a global competition for visual object recognition. It halved the previous error rate, using an 8-layer network trained on GPUs. This marked the beginning of AI’s rise in vision—powering facial recognition, self-driving cars, and medical diagnostics.

    In board games too, AI moved from mimicry to mastery. AlphaGo’s match against world Go champion Lee Sedol in 2016 stunned experts. Game 2, Move 37—an unconventional, creative move—changed the game’s theory forever. AlphaGo didn’t just compute; it improvised. In 2017, AlphaZero went further, mastering chess, Go, and shogi without human examples—just the rules and millions of self-play games. Grandmasters called its style “alien” and “beautiful.”

    In 2017, the landmark paper “Attention Is All You Need” introduced the Transformer architecture, a breakthrough that changed the course of AI. Unlike earlier models, Transformers could handle vast contexts and relationships between words, enabling a deeper understanding of language patterns. This paved the way for large language models (LLMs) like GPT and ChatGPT, trained on billions of words from books, websites, and online conversations. These models don’t know facts as humans do—they predict the next word based on learned patterns. Yet their output is often strikingly fluent and, at times, indistinguishable from human writing.

    These models don’t understand language the way we do. They predict the next word based on probabilities. And yet, their output often sounds thoughtful, even profound. In 2025, one such model helped save a pregnant woman’s life by identifying a symptom of preeclampsia from a casual health question. This was no longer science fiction. AI was here helping, guiding, even warning.

    This is where the story darkens. Neural networks have millions—even billions—of internal parameters. We know how they are trained, but not always why they produce a particular result. This is the black box problem: powerful models we can’t fully interpret.

    Worse, these models inherit biases from the data they are trained on. If trained on internet text that contains racial, gender, or cultural prejudices, the model may echo them—sometimes subtly, sometimes dangerously. And because their reasoning is opaque, these biases can be hard to detect and even harder to fix.

    AI systems are also confident liars. They “hallucinate” facts, produce fake citations, or reinforce misinformation—often with grammatical precision and emotional persuasion. They are trained to be convincing, not correct.

    As we hand over more decisions to machines—medical diagnoses, hiring recommendations, bail assessments, autonomous driving—we face hard questions: Who is responsible when an AI system fails? Should a machine ever make a life-or-death decision? How do we align machine goals with human values?

    The fictional HAL 9000 chose its mission over its crew, not out of malice, but from a conflict of objectives. Today’s systems don’t “choose” at all, but they still act, and their actions have consequences. Ironically, the most hopeful vision may lie in chess again. In freestyle tournaments, the best performers weren’t machines or grandmasters—but human-AI teams. Garry Kasparov put it best: “A weak human + machine + good process beats a strong human or strong machine alone.” AI doesn’t need to replace us. It can enhance us—if we build it thoughtfully, interpret it critically, and embed it in processes we trust.

  • What the 2025 Mary Meeker AI Report Means for Work, Strategy, and GTM

    What the 2025 Mary Meeker AI Report Means for Work, Strategy, and GTM

    It’s been a while since Mary Meeker’s Internet Trends report provided a pulse check on where technology is headed. The first such report in a while, now focused on AI, does more than describe trends — it lays out a new operating reality.

    This post distills 8 critical insights from the report — and what they mean for enterprise leaders, GTM strategists, product owners, and those shaping the future of work.

    📄 Full Report →


    1. This Time, the Machines Move Faster Than We Do

    The report opens with a bold observation:

    “AI usage is ramping faster than any prior computing platform — even faster than the internet.”

    This isn’t just fast. It’s compounding.

    For teams and organizations, that means:

    • Planning cycles must adapt to faster execution rhythms
    • Feedback loops need compression and real-time recalibration
    • Legacy workflows aren’t built for this pace

    If your GTM or delivery cadence still runs on quarterly inertia, it’s time to rethink.


    2. Time-to-Value Just Got Compressed. Again.

    The biggest unlock from GenAI? Time compression.

    From prompt → prototype

    From draft → delivery

    From insight → action

    This collapse in cycle time transforms:

    • Productivity metrics
    • Product development lifecycles
    • Org-wide alignment rhythms

    🚀 Output velocity is the new KPI.


    3. Your Next Teammate Might Not Be Human

    We’re entering the era of embedded AI agents — not just assistants.

    AI is no longer a tool on the side. It’s part of the team:

    • Summarizing meetings
    • Writing first drafts
    • Managing workflows

    That means:

    • Rethinking team design
    • Clarifying AI vs human task ownership
    • Measuring contribution beyond headcount

    AI is a teammate now. Time to onboard accordingly.


    4. It’s Not Risk Slowing AI — It’s Friction

    One of the most important insights in the report:

    Employees aren’t blocked by fear — they’re blocked by poor UX.

    Adoption stalls when AI:

    • Doesn’t fit into existing workflows
    • Requires tool-switching
    • Has unclear value props

    🛠️ The fix? Product thinking:

    • Reduce toggle tax
    • Integrate into natural habits
    • Onboard like a consumer-grade app

    5. AI Fluency Is the New Excel

    The most valuable skill in 2025 isn’t coding — it’s prompt fluency.

    AI Fluency = knowing how to ask, guide, and evaluate AI output:

    • What to prompt
    • What to ignore
    • How to refine

    Every function — from marketing to HR — needs this literacy.

    We’re in the age of human-in-the-loop as a capability, not a compliance checkbox.


    6. Follow the Money. It’s Flowing to AI

    The report outlines the capital story behind the hype:

    • Enterprise GenAI spend is ramping fast
    • Compute infrastructure is scaling explosively
    • VC and corporate funding is prioritizing AI-native bets

    For leaders, this isn’t a trend — it’s a reallocation cycle.

    Infra budgets, product bets, and partnerships must now align with where the ecosystem is heading — not where it’s been.


    7. Go Deep, Not Just Wide

    Horizontal AI gets you buzz.

    Vertical AI gets you impact.

    The report shows real traction in:

    • Healthcare
    • Legal
    • Education
    • Financial services

    Where AI is tuned to real-world roles and workflows, it sticks.

    If you’re shipping AI without domain context, you’re leaving retention on the table.


    8. Infrastructure Is Strategy. Again.

    The biggest shift in the back half of the report?

    AI is putting infrastructure back in the spotlight.

    From model training to agent orchestration to secure runtimes:

    • The AI stack is now a competitive moat
    • Data pipelines and prompt layers are shaping outcomes
    • Infra is no longer invisible — it’s strategic

    What cloud was to the last decade, AI-native infra may be to the next.


    Final Thoughts

    The Mary Meeker 2025 AI Trends report isn’t just a forecast — it’s a framing device. One that challenges every enterprise leader to rethink:

    • How fast we move
    • What value looks like
    • Who (or what) we collaborate with
    • Where advantage is shifting

    It’s not enough to adopt AI.

    We have to redesign around it.

    📄 You can access the full report here