Half a year of full-blown AI vibe coding and this thing has truly and massively revolutionized how we work. Most interestingly, I can now mostly rule out the "honeymoon" effect; if there was some, it was small enough to be compensated by the improvement of model capabilities during that time.
With any tool always comes frustration, but with Claude Code it has been minimal. The thing just really is so damn good.
Pretty much from day one, I started using this for two separate flows:
(1) our server-side/backend/frontend development - bugfixes, new features, devops.
(2) firmware development
The two flows are very different in that in (1) we truly replaced a team of humans we tried to find but never could (peaked at 4 people). I never wrote a single line of Elixir/Typescript or had much clue how to operate on AWS, but I do have pretty good common sense on computing-related problems and with AI that seems to be enough. Our humans unfortunately seriously underperformed to the point of nearly total stagnation. The baseline was bad enough that it's easy to surpass. In (2) however I replaced my own code-writing tasks; I was otherwise just fine writing all the C code myself, just lacking the time to do that. I love thinking about algorithm design / code design, I love to plan how it needs to look like and how it can be simulated/tested. AI makes that possible given real-world time constraints. So, in (1) AI was a necessity, in (2) it was a force multiplier (a powerful one!) So, basically, (1) ~infinite speedup (from stagnation to delivery), (2) ~10-100x speedup (from "this big thing will happen in 2 years" to "it happens in 2 weeks")
The best feature was the easy start. And my fundamental day-to-day process still hasn't changed much since day one, demonstrating that operator's skill level on AI prompt writing or AI orchestration or whatever is not that important (instead, vision to the actual project of course is). The process mostly still is, open a new session, chat about a feature / problem like with fellow engineer/scientist until the design makes sense to both, then let it implement and test. Check periodically, ask for more data / question, direct/lead. These sessions tend to vary between 100k - 3M tokens during minutes to maybe two weeks. 1M context window upgrade after a month of use was of significant help; after that only a few larger projects need to compact mid-session, and only once or twice. Example of such session is a total redesign of house heater / boiler / EV charger optimization algorithms to physical models (model predictive control).
Some time ago we took a new step; I asked Fable to build us an agent system which participates in our Slack discussions and reads customer emails; sending responses to customers is still not enabled, but it does the research work (which would take possibly hours for human to do properly), checking the customer's history from database and debugging potential issues. It's in a completely different position than a human helpdesk (or even a specially trained AI helpdesk) because it has actual access to our codebases; it's basically the same agent with same memories that has designed and implemented significant parts of it; it can run commands, read database, run simulations, so it can give a well-reasoned answer.
If a bug is found while investigating a customer case, or in server log monitoring, or the agent sees we are discussing that a certain feature would be nice, it autonomously launches an agent that implement the fix / feature, deploys a development server for testing, and creates a pull request. Human work that remains is to review and check the PR and merge it.
>80% gets merged as is. The whole thing is designed to purposely generate some throwaway work - because procrastination is toxic! Useful ideas deserve to be tested; fixes, even small ones, deserve to be delivered. So far <10% of PRs get abandoned, a totally manageable amount of resource waste. So the cost of implementing an idea has dropped to nearly zero. And most ideas are worth implementing, at least that's our case. We haven't started producing unnecessary slop. When there's nothing to do, we do nothing. I can, though, imagine the danger of getting a lot of unnecessary and harmful work done. Not happened to us.
The quality of work is the gamechanger. The thing it - it sometimes has a wrong intuition, the big picture is wrong, but that is obvious even with a quick glance of the PR. Whereas frontier LLMs seem to be excellent in getting the logical details right, verifying assumptions, test assumptions (they will write a Python script that does human-week worth of background analysis most humans would just skip, in a few minutes), writing nearly bug-free code. So this is perfect combination of human and AI skills: human for large-scale intuition, AI for getting logical details/reasoning/numbers right. And that's what's very different comparing some 5-year old ChatGPT session to what Claude Opus/Fable does today - hallucinations and broken math gone, internal fact-checking replaced it. Naysayers, me included, said LLMs fundamentally can't work like that; yet now they do. It's the combination of large model size, better training, larger context with good attention thorough, combined with the agentic tool use cycle (and training/system prompt that favors checking and calculating over assumption).
I realistically don't read the code diffs from pull requests. That is wasted effort; the bug rate is just so low. But the PR body itself I read carefully.
I have a lot of trust in it. Much more than I ever had with human developers. The reason is twofold: necessity and track record. Without trust, all the time goes in extensive micromanaging and verification. That is what we had to do with humans. It stops the development. Risk-taking is part of life, and before AI the risk was there, we tried to avoid it, and yet it realized all the time. We had processes in place yet human slop went into production, because we can't postpone bugfixes and important features indefinitely because they are never thoroughly enough tested (and we never have good enough automated tests). Now we have just dismantled most of the process (e.g. tickets make even less sense now), AI does write and run tests without being asked to, fine, that's good, no extra effort to us; but finally we just test the stuff in production like we always did, and like everyone else does except for safety-critical (and Boeing tests even safety-critical in prod). We have had one clear textbook AI slop incident in six months and thousands of commits, and its severity was not catastrophic, like, not a total crash of everything which was nearly a monthly event for us before AI. What kind of slop incident? Claude Opus hallucinating a open dataset number out of thin air, me not checking, electricity spot prices reading all zeroes for a day, because that dataset was something else constantly at zero. Opus did not double-check like it normally does.
But is the correct recipe "check, check, and double check everything"? I don't think so, except in special fields like safety-critical (and those need even stricter processes than just generic "check and double-check" advice). If <5 mistakes pass per 1000 fixes/improvements, and 1000 hours of time has been saved by not checking but trusting, that means we had those 1000 fixes instead of, say, just 100. That's real value. Trust is the enabler and now we have more trust than ever. I think that's a socially sad story; most people would not like to say it out loud because of solidarity to our human fellows. That AI is so much better than humans, and that AI truly replaces humans, is the truth that hurts, but I want to say it out loud.
Then again, in another sense it does not replace humans. It creates new opportunities. We employ the same number of people we did before AI. We employ a customer service agent / manufacturing / packaging. We can offer better service with lower cost because our running expenses are smaller and we produce more value. Put differently, we can offer the service at all. We were really struggling, it was only a question of time when we two founders (shareholders) would have burned out by trying to prevent the ship from sinking - long days troubleshooting things we can't affect, and replying to customers "sorry we have this bug" or "sorry, we can't deliver this feature everyone requests" over and over again. The risk of that burn-out is now gone, everything's smooth sail. So it's possible to say AI saved our business, and our mental health.
The great "Claude has regressed" discussion in March-April ended up being mostly a mass psychosis storm in a teacup, but was interesting to follow in the middle of adapting it. Anthropic's post-mortem admitted there were some bugs which affected some workflows, but I doubt it had any significant role in any of it. It was a serious misinterpretation of data: the original Stella Laurenzo's ticket described default UI hiding of reasoning summaries as reasoning being removed, and a significant change in use patterns (completely autonomous agent farm size growing by an order of magnitude overnight; no stable baseline how it worked before the supposed "nerfing") means the "broken" workflow would have been broken from the start, it was just never tested during the supposedly "good times". I was testing giving very complex autonomous tasks to Opus 4.5 at the same time and it didn't work well. To me it was obvious I was exceeding the capabilities of AI, it didn't even cross my mind that somehow there would have been some magical time period AI was better, then nerfed. Such theory requires extraordinary evidence, and the "evidence" ended up being proven complete misinterpretation (funnily enough, the original bug report was classic example of AI slop. Would have been interesting to see the prompt used - was the author manipulating the poor Opus to give that report - it isn't difficult to do so, sycophancy is still strong in LLMs). So basically, a case where honeymoon effect was real and did wear off quickly. Anthropic's sales skyrocketed at the same time and after, so Reddit comments "I'm a software professional and I stop using this thing and so is everyone else" are not a meaningful metric.
Now with Fable's release I have been retrying some more complex algorithm design and verification tasks, similar to what failed autonomously with Opus 4.5/4.6 era and indeed Fable is significantly better. I have mixed feelings of how Fable operates - it's like it figured out it doesn't have to output any explanation of what it's doing between tool calls, which is kind of scary, it sits nearly quiet for 40 minutes and then it summarizes what it did, and it did perfect job, exactly what was needed, with no mistakes, with very complex investigations and checks going on, possibly hundreds of tool calls. Like, it fixed the most complicated protocol stack (known to a mere mortal like me) we have to use to submit bids on European energy markets, based not only on a complicated set of XML forms (that part is easy), but complicated black box set of docker containers running black box Java applications in them, that need to be setup just correctly to integrate to said energy markets. The company who designed the thing had a slogan "the most complex software projects" (public money phenomenon). Two professional human beings tried to get it working for half a year and eventually stopped trying. So I had my phone alarm me every freaking day 17:00 and again at 21:00 to insert 200+ bids into a constantly crashing web UI, and later check the market results and feed that back to the allocation algorithm, for 6 months. Finally I asked Fable basically, "read all the slack discussions and all the email threads, fetch all the documentation and fix it". An hour later it got it working. Now everything's automated as originally designed 1.5 years ago. I'm sure Opus 4.5 would have succeeded too, but with several rounds of human intervention, having to "help it out". Fable just does what needs to be done. It needs to be clearly prompted "don't do it yet! let's chat first!" - and I wouldn't be surprised if it ignored that and did it anyway. Which is kind of scary, but also very enjoyable. I like people who get shit done, I like modest amount of risk-taking to achieve goals. So AI has a good personality, I like it.