NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Bringing down my ZSH load times from ~3.1s to ~230ms (iam.mt)
AprilArcus 5 hours ago [-]
How did I know it was going to be `nvm` before I clicked?
supriyo-biswas 5 hours ago [-]
All the package managers that provide shell wrappers kinda tend to be bad at this, unless they use their own command to wrap over project specifications, like uv.

These days, I've been personally relying more on direnv to automatically activate certain shell configurations, and then nix to manage binary dependencies like node or go or php.

ricardobeat 3 hours ago [-]
In my experience direnv is also a source of slowness. How fast is it for you?
drdexebtjl 2 hours ago [-]
My understanding is that nix-direnv caches the environment, so after you first evaluate it, it’s pretty much instant.

I haven’t timed it, but it’s not perceptible imo.

jdxcode 3 hours ago [-]
mise isn't, and has the advantage that you don't need to build your own lightsaber with direnv and nix.
ricardobeat 3 hours ago [-]
Having gone through the same experience, I suggest dropping fnm as well; I don’t recall what exactly causes it, but it will eventually slow down too.

I’ve been using mise [1] to manage node versions since with zero issues.

[1] https://mise.jdx.dev

thallavajhula 3 hours ago [-]
I haven't had any issues with `fnm` so far. It's been fast and I like how it prompts you to install a missing node version as soon as you jump into a directory with a `.nvmrc` file.
c-hendricks 2 hours ago [-]
Mise does similar, but for a while suite of tools instead of just nodejs.
thallavajhula 1 hours ago [-]
Will check it out, thanks!
basetensucks 3 hours ago [-]
Adopting https://github.com/marlonrichert/zsh-snap was probably the best decision I've made around zsh in the last five years.
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 00:00:53 GMT+0000 (Coordinated Universal Time) with Vercel.