5 ms·
Microsoft really needs to solve or at least mitigate these issues. I've been using Windows as my main development environment for mainly JavaScript and Python
by Klathmon 8y ago
Microsoft really needs to solve or at least mitigate these issues.
I've been using Windows as my main development environment for mainly JavaScript and Python for like 5 years now, and I've felt every single one of these pain points (if you haven't, go read parts 0 and 1 of the same series! They are great!).
Some of them I've tried to mitigate (I'll be looking over my suite of tools to see if any "file watchers" are causing issues now, as well as using the fantastic looking tool from the article to dive into this slowness I feel), but for the most part it's just a cost of working on Windows for me, and it's pushing me away.
With a fraction of the power, I can get magnitudes more "perceived performance" out of Linux or MacOS, and I'm now starting to use linux VMs more to get that performance back (which is such a weird sentence!)
There are things about Linux that I hate as a desktop OS (for me they always seem to "deteriorate" over like 6 months and need a reinstall to stay stable, and I've on more than 5 occasions installed something and restarted only to find the machine unbootable...), and there's things I hate about MacOS (the keyboards, the hardware requirements, being linux-ey enough that it feels familiar, but not enough that stuff just works for me), but I can't deny that when I work in those OSs, I'm more productive and spend less time waiting for my machine to do little tasks, and therefore have much less aversion to them (at this point I've almost developed a phobia of having to move, copy, or rename large numbers of files on Windows, and it shows as a lack of organization in projects because of how flakey and time consuming it can be).
I know it won't be easy, but MS is going to start losing devs and eventually users if this keeps up and the other OSs keep pulling ahead in percevied performance.
(As an aside, and just to jump the gun a bit with the expected replies, I'm fairly certain my Linux-as-a-desktop-os issues are self inflicted or come from a lack of understanding of something on my part, but I haven't had the time to dive into what they are, and a slow OS is better than a non-functional one. Hopefully my increased usage of VMs now will iron out those issues without as much risk)
- aaaaaaaaaab 8y ago>being linux-ey enough that it feels familiar, but not enough that stuff just works for me Maybe because it’s not Linux but a BSD-based Unix?
- Klathmon 8y agoIt's less that it's BSD based, and more that they are on super old versions of all the GNU tools due to license issues. Needing to update bash and coreutils on MacOS sucks, and even then I can't rely on all other developers I work with having those same tools installed and up to date and installed the same way. So I deal with the provided versions and their differences and quirks.
- aaaaaaaaaab 8y agoSame with Python, same with Ruby, same with Node, etc. Shipping up-to-date coreutils wouldn’t save you from any of these.
- pjmlp 8y agoHave you ever used a commercial UNIX, e.g. Aix, HP-UX,...? Even OS X would feel like state of the art.
- toyg 8y agoThat’s a bit like saying you shouldn’t ask for a pay rise because there are starving kids in Africa. Commercial unixes are basically dead, and for very good reasons. Good riddance.
- pjmlp 8y agoMany Fortune 500 have a different point of view.
- deleted 8y ago[deleted]
- Klathmon 8y agoI made the distinction of "desktop os" on purpose. I don't know of any Fortune 500 companies that are using UNIX systems as their desktop OS for workstations...
- api 8y agoDisk "thrashiness" been a problem with Windows for a long time. Back in the 90s and early 2000s when slower mechanical hard drives with access lights made HDD seeking and thrashing very noticeable, I always noticed that Windows boxes just thrashed the disk far more for trivial operations than Linux or even early MacOSX. (Never used Mac classic.) Windows has always been really clunky in terms of disk I/O. I've never been sure if the problem is in the kernel, filesystem, or higher up the stack. Linux on the other hand is spectacular here. In my experience it's marginally better than Mac on the same hardware (and way better than Windows!). I threw Linux on a spinning disk Mac Mini a while back with a really slow disk and found that it didn't matter much. Macs with SSDs are so much faster in part because MacOS seems less efficient on the disk front and SSDs make that less of a bottleneck. Linux is open source. Why hasn't everyone copied what Linux is doing? What is Linux doing?
- zeusk 8y agoI'm not sure what Linux does, but I'm glad Windows does not do that. Building a kernel on Linux would bring down my machine's interactivity to zero, even the mouse pointer would stop responding and this isn't even like two/three decades ago - this was in 2014 and I've never since touched the pile of crap that Ubuntu is.
- api 8y agoNot sure what was wrong, but that doesn't happen on any Linux system I have ever used. Then again I've never been an Ubuntu fan. Maybe they had some incredibly bizarre settings. Also seems like it could have been a driver problem.
- AlotOfReading 8y agoI've had similar issues on multiple distros and boards over the years, easily replicable with any sort of intensive disk load. It's not one specific issue (as the underlying bugs get fixed and change over time), but simply that there are lots of little deadlocks in the IO subsystems. There are workarounds and kernel flags to help mitigate things, but no one should have to do that for a daily driver.
- thrower123 8y agoTo be fair, the way that JavaScript development works these days, particularly anything involving npm, is batshit insane. I should not have 400 MB of hundreds of thousands of tiny files sucked down into my node_modules folder for a simple web front-end, with 17 different version of lodash required by different packages, and dependencies nested so deeply that I can't even delete the directory without resorting to specialized tools. It's a complete disaster as far as being able to verify your dependencies, and we're sort of just blanket operating on the assumption that everything is always licensed with an MIT-alike license.
- farnsworth 8y ago> and dependencies nested so deeply that I can't even delete the directory without resorting to specialized tools I think this hasn't been an issue on windows for a while
- Klathmon 8y agoIt is still an issue, but it's not nearly as common any more with javascript development. npm a while back moved to a "smarter" way of deduping and laying out files in a more "flat" way to avoid the massive bloating and tons of copies of the same libraries. And other tools (like yarn) do the same (or better!). And the long paths issue is solvable, but you need to use the funky `\\?\` path prefix, or the tool you are using needs to support long paths on windows (which annoyingly explorer.exe doesn't, so you are stuck using hacky workarounds or other tools to delete or modify those files.