I am not associated with Anthropic or Claude beyond being a very recent paying user. It might sound like I'm shilling, I'm really, really not. I'm just surprised to be this excited by an LLM.
Claude is the most capable coding LLM I've ever used. I paid for it after trialling it for just a couple of hours. I am an AI - and particularly LLM - sceptic. I had used ChatGPT and Copilot and dabbled very briefly with Gemini and thought they were fine as Google replacements/augments, but they suck at coding, especially from the ground up. They seem to expect you to get started and they'll just tag along.
Claude changed my mind about coding LLMs. In my opinion, Claude with Sonnet 4.5 is pretty exceptional. Certainly not perfect, it makes mistakes, sometimes gets trapped and needs you to dig it out, but its reasoning, capabilities and the sheer speed at which it seems to ingest information is mind boggling.
I tasked Claude with writing a BSP map viewer for Quake (yes, the 1996 FPS) that runs in a browser. I am an enthusiastic novice programmer at best, and I have zero experience writing 3D code. None. I have a basic familiarity with the Quake engine, I've made some maps for it, I know the basic file formats etc. but if I had to learn how to write a BSP parser, how to handle UV mapping, textures, lightmaps, (and, frankly, relearning high school maths that I haven't used in 25 years) etc. it would take me - I'm guessing - somewhere between 8 and 12 months.
I knew that Claude used the three.js library for 3D rendering and it's already very familiar with it. I gave Claude a very basic prompt outlining what I wanted; essentially just render whatever BSP you threw at it, no game logic or anything... and Claude just went off and did it. Seeing its first iteration was genuinely amazing - it wasn't at all feature-complete but it was functional; you could fly around the textured map with keyboard and mouse controls and it had thrown in a basic UI. My jaw kinda dropped a bit.
Obviously there's lots of technical information about Quake online, not to mention the entire source code of the original game on GitHub. Over the course of 5 days - without me writing a single line of code, just several hours of prompting - it has managed to make a very capable Quake map viewer with some very nice bells and whistles. I'm still working on it as it keeps hitting the token limits with my basic 18GBP/month subscription, but what it has already generated is extremely impressive.
Currently the project features full texturing with toggle between various texture filtering levels, lightmaps, entity visualisations and filtering with tagging and bounding boxes, image controls with gamma, brightness and contrast, quake-style sky and liquid rendering including mostly Quake-accurate underwater shaders, embedded texture browser, lines and arrows showing connected entities, wireframe mode and wire-overlay mode, rendering the quake character set from an embedded base64 gif, basic collision detection, alias models, animations, dynamic lighting and a lot more I don't recall right now. Again, I have not touched the code even once. I just give it prompts and if something doesn't work I describe how it doesn't work and expect it to figure it out. All of this in a (currently) ~240KB html file (and obviously it pulls in three.js from CDN).
I should note that someone has already ported Quake in its entirety to three.js using Claude, so I'm somewhat reinventing the wheel, but the only time I ever referenced that project was pointing Claude to one single source file that handled lightmaps, as Claude was having a hard time getting the implementation right from just random Internet-sourced documentation and "intuition". The only other thing it struggled with repeatedly was conversion of Quake angles to three.js angles. Even though the formula was extremely simple it took a long time to get Claude to implement it consistently, and it had to be prompted to standardize it in a utility function instead of having multiple near-identical formulas in several places. It did get there eventually, but required a lot of handholding. When I say a lot I mean multiple rounds of prompts. It's more about the tokens being wasted than the time, honestly.
Virtually every other feature I asked for it has managed to do completely by itself, coming up with fixes when I report issues, throwing in smart logging and diagnostics when it needs more information and generally just being surprisingly - even astonishingly - competent.
Maybe I need to give Gemini another shot, but frankly I'm blown away by what Claude has managed to do. It's already earned its £18 for this month, as just watching it work has been a fascinating journey, and I've learned a lot even if it is just for a niche and fairly useless hobby project.
Believe me, I think AI - and especially LLMs - are an extremely unbalanced double-edged sword. I worry for white-collar employment in the future. I hate the RAM and HDD shortages that the bubble has produced. I hate the environmental impact of datacentres and the massive energy costs. Despite all of this, I am coming around to the fact that LLMs really do have a place, and really do provide value in some scenarios.
I look forward to trying Sonnet 4.6 and seeing how it compares to what I've already experienced.