3 ms·
Windows is not great for NodeJs based dev stacks, which are very common for web development these days. Because JavaScript developers tend to write their develo
by speedgoose 5y ago
Windows is not great for NodeJs based dev stacks, which are very common for web development these days. Because JavaScript developers tend to write their development tools in JavaScript.
NodeJs is not great on windows because the packages/modules model uses many tiny files and the Windows filesystem, NTFS, is extremely slow for this kind of load. Another problem is compiling C/C++ NodeJS dependencies on windows. It’s possible but few people cares about it and it’s often a source of issues. And the last issue are the windows specific bugs in various packages.
The community that write the nodejs packages kinda doesn’t care about windows, and has no reasons to since WSL.
- qsort 5y agoPart of it is Windows being Windows, but part of it is languages/runtimes treating Windows as a second-class platform, which is understandable but a predictable source of problems. See e.g. Python, which runs just fine everywhere.
- jack_pp 5y agopython doesn't have the same packaging shitshow as JS does though
- speedgoose 5y agoPython is slow everywhere.
- DangitBobby 5y agoThe situation has probably improved (WSL of course is an option now), but when I first got started, I found developing in Python on Windows to be a nightmare of compatibility problems that I simply wasn't experienced enough to figure out. Lots of things I needed just wouldn't install and I'd see inscrutable C compilation errors or log messages about eggs and wheels. I actually ended up switching to Linux for work and personal use because of it.
- davidvarela_us 5y agoNo kidding. When I was heavily contributing to Julia's Pkg (which uses roughly the same model for modules as NPM, at least in terms of the file system), our test suite would run roughly an order of magnitude slower on Windows. This was very annoying on days where a lot of PRs where in the pipeline. I poked around the problem about for a while, and eventually came to the same conclusion (but I'm no Windows expert). Eventually, I worked around the problem by using a caching system to avoid blowing up the filesystem. It was necessary at the time, but it never felt like a satisfying solution. I wonder if anyone has the knowledge to make native Windows go fast on e.g. a large number of sequential git clone operations.
- adgjlsfhk1 5y agofun fact: the solution the Julia package manager currently uses is to just read from a compressed tar file because ntfs is so shit that decompressing on the fly is faster.
- toastercat 5y agoI write Node natively on Windows all the time. You just have to pick your dependencies wisely, and things are usually safe.