
Listen to this article
Taking jabs at Gemini has basically become a pastime of mine. On paper, it’s supposed to be one of the top three frontier models out there, backed by endless compute and DeepMind pedigree, theoretically capable of cracking deep, complex problems. And yet, every time I try to treat it like one, I just can’t see it. Especially when it comes to software engineering. Compared to what Codex can pull off on a real repo, Gemini still feels like a far cry from the top tier. Every time I throw a complex task at it, whether it’s Flash or Pro, it just fails miserably. It’s definitely not the kind of model you can leave alone with your codebase, unless you enjoy coming back hours later only to find your instructions were ignored, butchered, or quietly abandoned.
Which is a genuine head-scratcher. If it’s supposed to be one of the best models available, why does it feel so bad at the actual work? Well, hold that thought for a second. Let me talk about my actual experience first.
I’d like to think my first run with Google Antigravity was pretty typical for anyone stepping in with fresh eyes. “Oh wow, that’s amazing!” I said after watching it breeze through a couple of isolated issues. It’s always an intoxicating feeling when an agent automates away tedious work with a single click, spinning up plans and executing tasks before your eyes. For a minute there, I genuinely thought Gemini was the unsung hero of coding models, unfairly maligned by tech-bro Twitter.
Then came the hard lesson of actually leaving it alone with a real codebase.
In a project with roughly 500 files, Gemini opened maybe one or two. It completely ignored the architectural instructions I gave it. If I handed it a step-by-step plan, it threw it out the window. And hilariously, it wouldn’t even follow its own generated plan (the very roadmap it proudly drafted after supposedly reading and analyzing the codebase).
It was unnerving. I ended up emailing Google support to ask for a refund. I just couldn’t justify paying money for an agentic tool that can’t follow basic directions. I found myself repeatedly arguing with the chat window: “Hey, the plan literally says right here that you need to finish the feature,” fully aware of how ridiculous I sounded yelling at a machine. Gemini has these brief flashes of absolute brilliance, but those moments feel like microseconds before it collapses back into amnesia.
And it isn’t just Gemini. If you’ve spent any time poking at Gemma, Google’s open-weights family, you see the exact same DNA, just dialed up to eleven. Gemma gives up at the speed of light. If a tool call fails two or three times, it throws its hands in the air, quits entirely, and tells you to do it yourself: “Just copy and replace this content into the file.” Honestly, you have to laugh.
Which brings me to my working hypothesis: I don’t think Google is competing in the same race everyone else is running.
Now, if you hear that, your first instinct is probably: “What are you talking about? They’re leaving billions on the table!” And yeah, on the surface, putting out a model that chokes on basic tasks looks completely backwards. But when you look at the chaos surrounding OpenAI, the insane burn rates, the compute panic, and the FTC launching antitrust probes into all the big cloud deals, I find myself reaching for the tin foil hat.
Why is Google seemingly dragging its feet instead of brute-forcing their way to the top of coding leaderboards? Look at how Google talks about Gemini under the hood. The recurring obsession in their technical papers is always about sparse architecture, power efficiency, and keeping inference costs down.
Gemini is built on a sparse Mixture of Experts (MoE) setup. Instead of firing up all hundreds of billions of parameters for every single token, it routes your prompt through smaller, specialized sub-networks. It’s fast and cheap to run. But it also means the model is constantly rationing its compute. When you ask it to deeply reason across 500 files and hold an entire project’s dependency tree in its head, a sparse model that’s tuned to pinch pennies is going to choke or cut corners.
And Google kind of has to care about that. Their own environmental reports are basically screaming about it. Their greenhouse gas emissions jumped almost 50% over the last few years, driven almost entirely by the sheer electricity demands of AI data centers. They’re literally signing deals to buy nuclear power from small modular reactors just to keep up with the electricity bill over the next decade.
The difference comes down to what these companies actually are. Pure-play AI labs live and die by winning benchmark crowns right now, whatever the compute costs. If Codex or an OpenAI reasoning model burns through a ton of server power refactoring your repo, users love it and call it magic.
Google has zero reason to drive itself into the ground doing that. AI isn’t Google’s only product; it’s plumbing for a massive existing empire. They have Search, Gmail, Docs, Android, YouTube, and Google Ads. When Google rolls out an AI feature, they have to be able to serve it to billions of everyday users without melting local power grids or torching their own margins. A crazy expensive, power-hungry model that excels at obscure coding benchmarks doesn’t do much for Google’s bottom line if they can’t scale it across their actual core products.
So while other labs are racing to build the biggest, heaviest engine possible, Google is obsessing over miles-per-gallon. OpenAI has to keep chasing frontier hype to justify massive valuations. Google already has the users, the ecosystem, and the revenue. They just need models cheap enough to run everywhere.
It’s still maddening as a user today. Believe me, my Antigravity refund request is living proof of that. But in the long run, if the AI boom hits an energy wall and everyone is suddenly forced to figure out how to make frugal models work, Google might end up in a much better spot than people think.
Then again, maybe I’m giving them way too much credit. Maybe there is no 4D-chess energy strategy, and their agent tooling is just genuinely clumsy right now. It certainly feels that way whenever I watch it panic after opening two files. But until Google decides to give Gemini enough compute to actually finish what it starts, I’m keeping my expectations low. Codex is still my go-to whenever I actually need to get real work done.