ChatGPT4 and Codeium are still my favorite dev assistant stack

As of October 10th, 2023, ChatGPT4 and Codeium are all I need to make excellent progress and have fun doing it
As of October 10th, 2023, ChatGPT4 and Codeium are all I need to make excellent progress and have fun doing it.

As of October 10th, 2023, the Generative AI hype cycle is still in full-swing and there are more startups with their own developer-focused AI-assisted coding tools than ever before. Here's why I'm still perfectly content with ChatGPT4 (with a Plus subscription for $20 per month) and Codeium, which I've reviewed here for code completion.

They are available everywhere

ChatGPT4 can be opened from a browser anywhere, even on internet-connected machines I don't own: is part of my muscle memory now, and I once I log in, my entire conversational history is available to me. Now that ChatGPT4 is available on Android, it's truly with me wherever I go.

They are low-friction

Using ChatGPT4 is extremely convenient

Now that ChatGPT4 is on my phone, I can start up a new conversation when I'm walking and away from my desk. Some days, after working all day and winding down for sleep, I'll still have a couple of exciting creative threads I don't want to miss out on, so I'll quickly jot or speak a paragraph of context into a new new GPT4 chat thread to get it whirring away on the idea. I can either tune it by giving it more feedback or just pass out and pick up the conversation the next day.

ChatGPT4 and Codeium are both easy to work with

I don't always stick to stock ChatGPT4 form-factors, however. Charmbracelet's mods wrapper is the highest quality and most delightful tool I've found for working with GPT4 in your unix pipes or just asking quick questions in your terminal such as, "Remind me of the psql command to connect to my Postgres host".

Being able to pipe your entire Python file to mods and ask it to help you find the bug is truly accelerating.

Codium works like a dream once you get it installed. I tend to use Neovim by preference but also work with VSCode - once you're over the initial installation and auth hurdles, it "just works".

Hacker for hire

I help investors, founders, CEOs, CTOs and other developers navigate the latest AI developments and the rapidly evolving landscape of tooling and capabilities.

Most everything else I've tried doesn't work

The reality is that today, most developer-focused AI tools don't work

No disrespect to these tools or the teams behind them. I do believe the potential is there and that many of them will become very successful in due time once the initial kinks are worked out.

But I've spent a great deal of time experimenting with these across various form factors: an Ubuntu desktop, my daily driver Linux laptop, a standard MacBook pro, and the reality is that the code or tests or suggestions they output are often off the mark.

ChatGPT4 extends my capabilities with minimal fuss

Since ChatGPT4 is available in the browser, I can access it from any machine with an internet connection, even if I'm traveling. Since it's now also available as an Android app, I can also reference past conversations and start new ones on my phone.

The Android app has a long way to go until it's perfect, yet it does already support speech to text, making for the lowest possible friction entrypoint to a new app idea, architectural discussion or line of inquiry to help cement my understanding of a topic I'm learning more about.

They are complimentary

ChatGPT4 and Codeium are complimentary

ChatGPT4 excels at having long-winded discussions with me about the many ways I might implement desired functionality in one of my applications or side projects. It often suggests things that I would have missed on my first pass, such as the fact that Vercel has deployment hooks I can take advantage of, and it's especially useful once the project is underway.

I can say things like:

I'm changing the data model yet again now that I understand how I want this UX to work - drop these fields from the posts table, add these to the images table and re-generate the base SQL migrations I run to scaffold the app.

I think of and treat ChatGPT4 as a senior level technical peer.

I do sometimes ask it to generate code for me as a starting point for a new component, or to explain a TypeScript error that is baking my noodle, but it's main value is in being that intelligent always-available coding partner I can talk through issues with.

Meanwhile, Codium runs in my actual IDE and is one of the best tools I've found at code-completion - it does a better job of just about anything I've evaluated at grokking the importance of surrounding code and comments and its suggestions are often scarily spot-on, which means that it saves me a couple seconds here and there, closing HTML tags for me, finishing up that convenience JavaScript function I'm writing, even completing my thought as I'm filling in a README.

That's the other key feature of Codium that makes it such a winner for me - it's with me everywhere and it can suggest completions in any context ranging from prose, to TOML, to Python, to TypeScript, to Go, to Dockerfiles, to YAML, and on and on.

With GPT4 as my coding buddy who has the memory of an elephant and who can deconstruct even the nastiest stack-traces or log dumps on command, and Codium helping me to save little bits of time here and there but constantly, I have settled on a workflow that accelerates me and, perhaps more importantly, increases my enjoyment of development, which I spent the vast majority of my time doing.

Looking forward and what I'm still missing

I dream of the day I can just speak to my favorite AI tool wherever I am

I have no doubt that the current generation of developer-focused AI tools are going to continue improving at a rapid pace. ChatGPT itself has seen nothing but enhancement at breakneck speed since I started using it and I haven't even gotten my hands on its multi-modal (vision, hearing, etc) capabilities yet.

However, even with excellent wrappers such as mods, which I've mentioned above, what I find myself missing is the ability for ChatGPT4 to read and see my entire codebase when I'm working on a given project.

The quality of its answers are occasionally hobbled by its inability to load my entire codebase into its context, which leads to it generating more generic sample code than it really needs to.

I'm confident with additional work and a litle time, it won't be long until ChatGPT4 or one of its competitors is able to say: "The reason your current Jest test is choking on that import statement is because you're missing this specific setting and value in your .tsconfig file".

I want AI assistance directly where I'm working

I'm able to get that information out of it now, but it just takes a good bit of careful prompting and more copy/paste than I would ideally like. What I really want is the helpful daemon looking over my shoulder, who is smart enough to know when to raise its hand to point out something that's going to cause the build to fail, and when to keep quiet because even if it knows better that's just my personal coding style preference so better to leave it alone.

Hacker for hire

I help investors, founders, CEOs, CTOs and other developers navigate the latest AI developments and the rapidly evolving landscape of tooling and capabilities.

We're not quite there yet, but all of the base ingredients to create this experience are.

Indeed, many different companies both large and small are sprinting full-tilt toward this experience, as I've written about recently, but there's still quite a way to go until these tools present uniformly smooth experiences to their end users: