7/30/2026 at 5:19:15 AM
I think it's a false dichotomy. A good craftsman cares deeply about their tools. But the tools are a means to an end, not a toy.I have a bunch of small productivity tools I made to match my workflows: tiny shell scripts and functions, custom Emacs functions and settings, small tools to control windows placement, etc. Cumulatively I spent many days building and adjusting it.
But when I need to jump into a task, things just work. Syntax highlighting is there, code navigation is there, code analysis is there, I can rearrange things in my area of attention the way I want with a couple of keystrokes, I can drive git the way I want with a couple of letters. I don't have to tweak anything. Nothing bothers me, nothing distracts me, nothing wastes my time and breaks my concentration by requiring legwork.
(Same applies to my mechanical and electrical tools. Mostly.)
Invest in your work environment. Adjust your chair. Adjust your shell prompt. Adjust your editor settings. Comfortable? Good. Now you can forget about them all, they are just there working for you. Concentrate on the real problem you have. Godspeed!
The skill of concentrating on a problem is much harder though. Endless tweaking of your tools that eats all your time can be a sign that you are just trying to avoid that daunting and uninspiring task. But this is not the tools' problem, not that simple.
by nine_k
7/30/2026 at 5:42:20 AM
Exactly. It matters that you enjoy working with your tools. Even if they don't make you 10x more productive, focusing on what you're working on and enjoying the process is the most important part.Especially in the age of LLMs I think a lot of us hate the current tools that force you to context switch between N agents and terminals. Constant context switching takes the joy out of work and prevents you from getting into a flow state. I hope someone figures out the solution.
by loveparade
7/30/2026 at 7:05:07 AM
I don't think they force you to do that. Not trying to be pedantic, but you can also just wait for a single agent to finish its work.Nowadays I often feel that that is a better spend of my time. Especially because it allows my mind to wonder about the next thing and what I could have missed. Before I was doing the context switching dance I felt I was going at 10x, but realized I was only perhaps going at 2x. Now I have severely reduced the number of threads, mostly to a single thread, and ask smaller questions. My sense is that I am probably now going at 2.5x but with my sanity restored and with a much firmer grasp of what is going on.
I also find myself coding more skeletons and letting an agent finish it, because I am again taking the time to think of the shape of the solution. The end result is better then when I allow the LLM to flail about in the codebase.
by lobofta
7/30/2026 at 8:38:22 AM
> Constant context switching takes the joy out of work and prevents you from getting into a flow state. I hope someone figures out the solution.Don't do that if it bothers you? My best experience for "agent produces good code following good design" essentially been to always work with one agent, at most two, but in the same project. And while the agent works, I continue taking my notes of what I'm doing, what's next, what the design/architecture needs to evolve to do and so on.
Of course if you switch between five projects, you'll suffer the context switching cost. The best to avoid that? Don't context switch, find other related things to do close to the task you're "outsourcing", or start planning how to validate, or...
by embedding-shape
7/30/2026 at 9:52:36 AM
> And while the agent works, I continue taking my notes of what I'm doing, what's next, what the design/architecture needs to evolve to do and so on.That is still context switching for me. I do the same. While the agent works, which may be 10 minutes, I start planning follow up tasks, etc. But then eventually I still need to come back to the original task to review the agents work.
I don't switch across projects usually. But I can never get into a flow state like that. But I also don't want to sit there for 10 minutes doing nothing
by loveparade
7/30/2026 at 12:17:00 PM
> Endless tweaking of your tools that eats all your time can be a sign that you are just trying to avoid that daunting and uninspiring taskI think a lot of this comes from beginners skipping some steps because they want to be accepted and taken seriously.
To be, rather than to seem, takes time, and you gotta earn your meals in the interim.
by randusername
7/30/2026 at 3:48:20 PM
And when you get that new job with that new stack? Switching back to the windows laptop? I learned early on in my career how to live off the land and use the tools I have given to be efficient because it is rare that I get to decide the tooling. Cross platform tools? Usually can get away with them, but beside Jetbrains stuff its all over the place.by hilariously
7/30/2026 at 3:47:35 PM
Seems like the difference b/w samurai and ninja. The samurai saw his sword as an extension of his soul - a disrespect to the sword was a disrespect to the man. The ninja used the sword like any other tool - and if it was helpful to use it to pry something open, there you go.the samurai mentality doesn't make sense in today's economy.
by aerodexis
7/30/2026 at 10:21:37 AM
I agree. after a certain point, let's say, post-mastery of a craft, nice tools can be a great joy to work with. But, same for less ideal stuff, some days. working with unfit toolsay even yield surprisingly desirable results for the post-master craftsman.by earnest_baanter
7/30/2026 at 10:36:56 AM
at one time I wrote Huffman compression in LambdaMOO, just because I could. This is a line editor akin to 'ed' accessed over telnet.by inigyou
7/30/2026 at 12:46:38 PM
This!Live to work? No!
Work to live? No!
Live and work to Emacs!
by alfiedotwtf
7/30/2026 at 6:18:52 AM
I truly believe a lot of people don’t really realize how good it is when you have a good environment for development work. It’s straight thinking to doing. And it’s not even about vim/tmux or emacs. You can do so with sublime or IDEA. In the pragmatic programmer book, it’s called editor fluency.by skydhash
7/30/2026 at 9:57:38 AM
It’s a balance. It’s easy to spend more time dickering with tools than you save by having those tools. I used to have this amazing neovim setup that worked exactly like I wanted it to. Unfortunately, it was fragile, and while it was theoretically infinitely flexible, practically, it was too big of a PITA to change to be flexible on the run. Then a couple of unrelated plugin changes caused some big problems with my setup at the end of a big project and I pivoted to jetbrains stuff— specifically Rider, PyCharm, and WebStorm. There was a bit of a learning curve, but the discoverability of functionality was waaaaay better, and with a few single-click-install plugins for languages or environmental integrations, it did everything I needed it to do within 5 minutes on any machine I sat down at. I’ve moved on to other IDEs except for Rider, but I discovered that _for me_, learning how to do what I wanted to do in a well-designed batteries-included environment had a much bigger payoff than trying to manage a mini infrastructure project on my machine in parallel with whatever else I was working on.by DrewADesign
7/30/2026 at 12:26:15 PM
I did that same circuit (except it was emacs to VS Code) for me - same experiences and reasons. I also used CLion for a couple of years for C++ - but in that case I never even bothered trying to use anything else. I could not get the bindings quite how I wanted in either VS Code or CLion, but I made it tolerable eventually.I'm on neovim now, and the reason is coding agents. It ported my Spacemacs bindings to Astrovim in a few minutes.
Any feature I need to add, I just tell it and its done in a couple of minutes. Anytime I run into something that doesn't work quite how I want, I just tell the agent and boom, done.
I manage all my dotfiles this way now I think it totally changes the calculus. I'm even considering giving Nix another go.
by jeremyjh
7/30/2026 at 10:49:53 AM
This is why I tend to gravitate towards either fully bespoke tools (made by me, for me, nobody else) or tools with sane defaults.Emacs -> (n)vim -> hx for CLI editor. Helix just works out of the box pretty much, no need for a Doom Helix or Oh-my-Helix to get it comfortable to use.
In terminals I finally ended up on Ghostty, I think the only significant configuration I have is setting `macos-option-as-alt`.
As for shell, fish + starship prompt has been my choice for years now. Very little customisation needed for either.
And for all software I pick the one that stores its configuration in a sane format in a XDG compatible location so I can shove it into chezmoi easily (looking at you iTerm2).
by theshrike79
7/30/2026 at 11:30:07 AM
> Unfortunately, it was fragile, and while it was theoretically infinitely flexible, practically, it was too big of a PITA to change to be flexible on the run.I don’t know. I switch back from neovim to vim for some reason, but that vim setup has followed me for years even when I switched to emacs. And while I changed my emacs settings every once in a while, it has always been stable to me.
I’m not questioning your choice, and I do use IDE when the needs arise. But my emacs setup is mostly about dealing with every language and most tech interactions that I need. Not to be a full featured IDE for a language or a project.
by skydhash
7/30/2026 at 8:55:00 AM
I think you forgot to explain the false dichotomy part.by Yokohiii
7/30/2026 at 9:49:19 AM
3rd paragraphby e40
7/30/2026 at 5:35:38 AM
[dead]by nullsanity