Mastering Development Workflows with Nix: Part 1 - An Introduction
Introduction
Greetings, developers! In the realm of software development, sharing code seamlessly and maintaining consistent environments can often be a challenging endeavor. Dependencies and version management can introduce complexities that require adept solutions.
In this blog series, we explore the capabilities of Nix, a versatile tool poised to redefine your development practices. Join us as we unveil how Nix transforms project setups, providing a streamlined and reliable workflow. So, equip yourself with your preferred coding sustenance, and let’s embark on an exploration into the world of Nix and its sophisticated solutions.
I use VSCode daily. In my experience, 1) nearly every day VSCode wants me to update some extension, which I find annoying, 2) there is a teeny typing lag in VSCode when compared to my terminal. It is nothing you would typically notice and doesn't bother me, but typing in my terminal feels instantaneous, which makes it very pleasant.
VSCode isn’t much different from vim or emacs in terms of functionality: basic text editor that is configured for various tasks by plugins. Especially with the rise of LSP, the difference between VSCode and vim/emacs is basically preference.
> VSCode isn’t much different from vim or emacs in terms of functionality: basic text editor that is configured for various tasks by plugins.
Ease of extensibility is a big deal and vscode is much less easy to configure.
VSCode doesn't work uniformly throughout the application. In emacs, you'll quickly start to depend on all the places you can use M-r, M-n, and M-p to reverse search history for instance. This is one of many many examples where it's keyboard driven UX is superior.
Another big thing is that you can get help for every keybinding, click a link to it's function, and start modifying the implementation.
There was a recent podcast I can't recall that gave a good example of this... I'll look for it and post back if I find it.
My argument was the opposite, I use emacs for everything because its extensions are more composable and it’s a lot easier for me to write my own as I need them.
My point is just that the “why would anyone use a ‘text editor’ instead of an IDE” argument makes a little bit of sense when you’re comparing vim/emacs to IntelliJ, but VSCode is just as much a text editor out of the box as vim/emacs. And, despite being newer, it’s relatively uninspired compare to emacs.