on
How I Use AI
I've used VIM for over 10 years now. My setup is spartan (no plugins, no autocomplete). I've mostly written statically typed compiled languages during my career (Java most of all). Inevitably at every job someone interrogates me on why I don't use an IDE and don't I know how much I'm missing out and don't I know how much more efficient I would be if I switched.
My general thoughts on IDE usage and AI usage match, with some caveats (further down).
- If writing code is the long pole in my job I have other problems
- Connection to the code helps me better understand the problem space/domain
- The act of writing code encourages me to write more succinct code
- Not using an IDE makes me prioritize code readability
Today the IDE enthusiast has been replaced with the AI enthusiast but the pathology remains the same. They see me not adopting the tooling as an attack on them. They see me not using their assistive tooling as a rejection of their skill as a programmer. They think I look down on them.
I do!
Throughout my career I've found the developers who care the least, who shovel the most spaghetti onto their coworkers and who clamor about "imposter syndrome" are the same folks who lean on these tools.
That's not to say people who use these tools effectively don't exist, they do. It's also true that I'm a zealot taking the most extreme personal position in terms of my editor usage. I am not the model to follow. There is a balance here between tools which create a reasonable amount of friction and tools that make it hard to do your job.
AI is no different.
I went down the full agentic rabbit hole and was initially blown away. I had a moment of panic as many who've attached their identity to the act of writing code have. I wrote things with it I hadn't found the time to write in ages.
Then I submitted a PR that the AI had written and realized I had just shifted my job into being a code reviewer. My conception of the problems I was solving shifted, my understanding of the negative-space of the problem and of the code got smaller.
Then I went cold turkey on AI and didn't use anything for two weeks. Now I think I've settled on a happy medium.
How I've integrated AI into my workflow
Currently I use Kagi Assistant as a browser tab which I engage with conversationally and as a light search replacement. I've found that it works well with general problem statements and small code snippets and unblocks me in ways that previously would have taken a long time.
I don't use anything in my coding workflow/editor. I find that keeps me in the process of writing, refining and refactoring in a way that I'm used to and maintains my efficiency while not degrading my understanding of the problems I'm solving.
Keeping My Eyes Open
None of this is to say that I'm going to bury my head in the sand and pretend that AI doesn't exist or that agentic employees may be on the horizon. I'm keeping myself aware of what the trends are and the latest tools but I'm skeptical that learning all the ins and outs of a nascent lanscape is worth my energy. Much of the AI ecosystem right now feels... rough. Markdown files with loose rules, skills that optimize token usage by speaking like a caveman. Blindnly sending your entire codebase to a remote server. These are things that if they work will one day be built into a coherent product or technology and are things I don't need to be spending my time learning. Magic incantations to get the agentic AI to perform exactly how I want will ideally be wiped away within a year or two by shareable, versioned artifacts that can configure my AI exactly how I expect it to. With concrete levers rather than squishy directions and appeals.
At the end of the day the job remains about people. The people who were bad stewards and coworkers just have a new avenue by which to do that. The good ones are leveraging the tool cautiously and effectively.