84 comments

[ 3.5 ms ] story [ 146 ms ] thread
I stopped reading at the second line: "As you may all know, developers are a social tribe that is well known for using MacBooks with stickers on them"

I don't know if this is an American thing or the industry I'm in, but I've never seen a single developer use a Macbook or have stickers on their laptops. Is this is a silicon valley, web developer kind of thing?

Edit: Just to clarify, I'm a low-level C developer in the UK. Most everyone I know uses Windows/Linux and laptops are mostly Dell/HP

Pretty much. I started my career in SV at a startup and have a Macbook with about a dozen stickers on it. At all the companies (all startups) I've worked for, they've given me a Macbook pro by default. You'd have to make a strong case to get a PC.
Very much a thing in the companies I worked for in the Netherlands as well. But it is often a balanced mix of pc/mac and linux/windows/macos instead of a mono culture. Though frontend seems to lean more towards mac.
Yeah you're basically right on the nose with that assessment.

The author attempted to use WSL like their mac and had a bad time with it, aside from the text rendering and high DPI stuff that isn't quite as polished on Windows.

actually its extremely prevalent amongst developers -- you will see it at conferences worldwide
downvoted? i mean, this is not controversial: go on youtube and type developer conference for whatever industry you're in and any money says the presenter in the top hit has stickers. its that prevalent. its not a judgement, its just very odd to see it denied.

edit: tried it myself. ACCU (C++ conf in bristol). a lot of stickers:

https://www.youtube.com/watch?v=FMYazsVW1KA

I'm in the midwest and pretty much every dev group that is cloud focused based is Mac based. The transitions from onsite to cloud and the switch to mac seem to go hand and hand.

Doing lots of web work with open source software is painful on a corporate (ie very locked down) Windows machine.

Once everybody has the same Macbook model you really need the stickers just so you know whose laptop is whose.

Or stickers so you don't mistake your personal MacBook for your work one (or worse - your spouse's).

Pair this with a long commute and stickers become a key identifying factor and stress reducer.

I'm in the Midwest and none of the groups I've worked with use Mac unless an individual requested it. This seems highly anecdotal. Actually, it seems the Mac users tend to form their own bubbles and shun anyone using PC
I am American, not anywhere near SV. I have never seen a Macbook at work either. There was one guy a few years ago who seemed a bit SV-influenced, and he had stickers, though it was a Windows laptop like everyone else.

But yes, oftentimes HN (or an article it links to) uses "developer" to mean "SV web developer".

I love stickers- I think they're cool. What can I say? I'm pretty old, though, so maybe it's brain damage or something.
I doubt I've been to a conference that's even vaguely oriented towards developers or even technical folks more broadly in the past 10 years where Macs with project stickers on them aren't the most common laptop, often by far. This is true even at conferences where one might expect Windows to be more common (don't know specifically about Microsoft events but VMWorld, say) or Linux (Open Source Summit and the like).

This is broadly tech industry I'm talking about but not some narrow Silicon Valley or web dev space. I'd never believe Macs were only about 10% market share based on pretty much any of my own anecdotal observations including walking into a random coffee shop.

There's a certain demographic who attends conferences. Yes, they mostly have Macs. No, they don't represent the developer community.
Definitely a US thing. In every french conf I go, PC are a majority. In the french PyCon where I regularly give talks, Linux PC always are.

The diversity is even a problem in workshops because everybody has a different config and you get weirds errors due to this or that combo.

But yeah, you will see stickers. Lots of them.

I can't say I've taken a survey but Macs certainly don't seem conspicuously absent at a venue like FOSDEM (Brussels). Of course, that's an international event even if it's disproportionately European. It's probably fair that the further you get from US tech companies in general and possibly Silicon Valley in particular and the closer you get to developers doing open source in their spare time in non-US countries, the fewer Macs you probably see. If only because of price.

ADDED: And, of course, if you look around inside a company that mostly runs their infrastructure on Windows, most of the developers will be running Windows on Dell/HP/Lenovo/etc. machines.

Depends on the events you visit, I'd say I saw a 40/40 split of ThinkPads and Macs with 20% "other" - but I know it's not really representative, as I've mostly visited smaller events focused on non-enterprise stuff, or DevOps confs, or close to the CCC. In my web dev days in small companies there were more macs though.
Not just Silicon Valley–it's a West Coast thing. Go into any hip coffee shop in CA, OR, or WA, and you'll find a sea of MacBooks covered in stickers running brightly colored IDE's (and at least a few running vim).

The stickers are usually souvenirs from tech conferences, employers, cool startups, and hackathons.

But hey, most developers don't sit in coffee shops :) they are sitting in offices, mostly working on proprietary software that is making hundreds of millions of dollars per year for the company.
re: stickers on Macbooks

In an office, or conference, where multiple people have the same work-issued laptop, the easiest way for folks to not mix up their laptops is to slap a sticker or two on it.

Yeah in the UK it's not particularly common for developers to use a mac from what I've seen.

That might be because generally C#/.Net is the main choice of enterprise which was traditionally all windows.

same here. I know a couple or few more that actually do the mac and sticker thing and even then it's on their personal devices, not work issued ones.

at best author is just another victim of selection bias, at worse he really believes everything he doesn't experiences doesn't exists.

>I don't know if this is an American thing or the industry I'm in, but I've never seen a single developer use a Macbook or have stickers on their laptops.

I work on the East coast and in one of my recent jobs, a couple of the younger (under-30) engineers had stickers on their laptops. This was definitely not Silicon Valley or any industry like that, and these were Dell Windows machines, not Macs.

Linux-loving developers can switch to MacOS and get productive with it instantly... American devs probably default to Macs instead of Linux because some of their non-tech friends also use Macs.

As a European dev I just use a Mac because I love the Linux-ecosystem but I also need/want to run preferred photo/video-editing software on same machine I code on.

Very few Linux-loving-devs have audio-visual-creative hobbies and a need to use "one device to rule them all", hence not that many devs with Macs in Europe, simple :P

That makes sense. For low-level C, you probably want to develop on whatever your target platform is. I'm sure most Linux kernel devs have a Linux laptop. In fact, Linus Torvalds made an argument along these lines in the context of ARM. (Basically, we need ARM laptops if you expect to get developers developing for ARM servers.)
Agree with all of these. But compared to Macs you get a couple of things:

* native and fully supported MS Office

* ecosystem of professional windows apps (atm. I need MS SQL Management Studio as an example)

* much much better connectivity on laptops. bye bye dongle land.

* a wide variety of hardware options to choose from, including ones with great keyboards. even the latest Thinkpads have vastly superior keyboards compared to 2016+ MBP.

* gaming

At the end for me personally, the tradeoff was worth it. I switched last summer and by now I'm not missing much. Same with iPhone - switched to an S10e last week and I'm already used to it. There's a couple of things still stuck in Apple land, such as our photo share - not yet sure what I'll do about that.

I was an Apple customer for 13 years before - at some point I had to cut it off, it made me too angry.

Outside of Excel and random macros that no one uses anymore, Office has effectively reached parity for most users.

Again many developers are on a non MS stack so access to MSSQL tools is for the edge case of web developers who need to develop for .NET / MSSQL backends

Have you seen recent Windows machines? Yes you can find a machine that meets your port needs but many like the Surface Pro are also in dongle hell.

Same idea, sure you have an entire universe of manufacturers to choose from, you have many more options and choices to run Windows on. Good luck to you when Windows / Android start to inevitably start to go buggy after a year or two and rebuilding OSes all the time.

Having worked for companies that used both, I actually vastly prefer G-suite to Office.

Office seems to have stagnated over the years in the corporate environment. The two main issues are 1) email search is slow and returns weird results and 2) shared document editing is non-existent so people email everything to each other, things go out of date, no version control, etc.

I’m much happier now using Linux with G-suite than I was using Windows and Office just because the rest of the developer experience in Linux is so smooth.

In finance, there’s also something to be said for the culture of a company where people know to use numerical software like R or Pandas instead of leaning on Excel. Like over the years I’ve noticed that the kind of person that insists on sending me Excel spreadsheets is markedly less conscientious.

Not to excuse outlook for its failures, but G-suite email searching also breaks once you hit a certain inbox size.

As for shared document editing, most places develop intra-office file system-level habits that avoid the problem, or use specific hosting sites to co-ordinate multiple teams on a platform agnostic basis. On a per-document basis, Word's review, commenting and blacklining features are worlds better than the G-suite equivalents.

I'm not a huge fan and managing it is a bit of a pain but if you use Sharepoint you can configure it to allow simultaneous document editing. I believe this was introduced in Sharepoint 2010.
Office 365 with onedrive is much nicer than SharePoint IMO.
It exists, but it’s been a pretty terrible experience every time I’ve tried it (roughly once every 12-15 months since ~2011). GSuite has some occasional issues arising from connectivity issues, but these also happen to Office365, and are at least as bad (often worse) than in Google Docs and Sheets (I almost never use PowerPoint or Slides, so maybe things are different there.)
I hear you. Concurrent editing is not enabled where I work because the headaches aren’t worth it.

I honestly don’t have enough experience with GSuite to make a good comparison, just mentioned Sharepoint because we just recently reopened the conversation about concurrent editing. Once again we’re passing for now!

I think it helps that G-suite is mostly focused on a 90% set of features that most people need most of the time. As a result, you can't do absolutely everything in G-suite (and unimplemented features will be a showstopper for some types of users) but the result is a very streamlined and smooth experience for most of us. I still have to open up Office now and then but it's pretty rare these days--especially given that G-suite is now the standard where I work.
> Like over the years I’ve noticed that the kind of person that insists on sending me Excel spreadsheets is markedly less conscientious.

While your observation may be based on anecdotal evidence in this instance, just a reminder that not everybody's technology choices are defined by factors that are so black and white. For example, I'm well aware of several tools on Linux which can blow my Windows-based workflow out of the water. But my visual impairment means I can't use them, because accessibility on Linux is terrible. Take the time to consider the possibility that maybe somebody has been forced into the usage of a certain tool by circumstance, rather than by the fact that they're bad at their job. If I was to use the tools you love, I would probably deliver subpar results.

Shared editing works btw. but I've had cases where it acted up. Overall it's more a culture thing than lack of the feature.
>a wide variety of hardware options to choose from, including ones with great keyboards.

Yeah, keyboards on laptops these days are horrendously bad, especially on Macs. The latest Thinkpad ones aren't as great as the ones of yore, but they're among the best of new laptops. Personally, I have a Dell Latitude E6440, which I'm pretty sure is the last year of that line of laptops before they switched over to that awful island-style keyboard. I honestly don't know what to upgrade to after this because everything went to island keys after this point.

The question isn't "Is Windows ...", what he's actually addressing is the question "Is WSL actually ready for developers?"

Windows is. All of his issues either seem to be from WSL, complaints about keyboard shortcuts, or not setting up his monitors properly (his claim that Windows doesn't properly support 4k monitors is a strange one).

To be honest, I don't get why he's installing VS Code on top of WSL, when you have native windows VS Code. This seems completely unnecessary, but maybe I'm missing some benefit?

there is zero benefit. windows can now access wsl files. also, you can setup visual studio code to run bash in an integrated terminal and thus call command line application in the wsl. also, using "wsl.exe <name>", you can call a wsl application from cmd or powershell.
But you can't, for example, tell a Windows instance of VS Code to use the WSL Python binary for debugging Python applications. It will run the binary just fine, but it won't know to translate the Windows file paths into WSL ones. So you will just get a file not found error any time you try to use it.
that's not true. i use visual studio code and emacs, both on windows, to develop scheme that runs on wsl (since many schemes don't support windows). in visual studio, i use bash in the integrated terminal which takes care of running the binaries on wsl, and in emacs, i update my user init file to use "wsl.exe scheme" for the scheme application, where "scheme" is in my wsl path. launching a repl works just fine, and it's able to load files without issue.

what path translation are you talking about? if there's an actually a problem with something you've tried, then it is probably a problem with python and not the setup. as i said, i regularly do what i mentioned above with no issues. wsl can see both files local to it and on the windows system.

I didn't say you can't run a REPL in the terminal. Actually I said you can do that. What you can't do is use the VS Code debugger. You also can't: get code autocompletion, linting, automatic refactoring like renaming variables, you can't run files by right clicking and clicking "run", etc.
ahh, sorry. that wasn't clear because i haven't used the python debugger in visual studio code and don't use python in general.

i would guess my hunch that this is a python problem is correct.

i use ionide for f#. i am wondering if i point ionide (if it's possible) to use f# running on ubuntu through wsl, will its type inference, linting, autocompletion, etc. still work?

It's not a python problem. Like I said, when you initiate a debug session, VS code will launch the python binary just fine, but it passes it the Windows path of the file you're debugging which obviously the WSL python binary can not understand. I assume F# on WSL would have the same issue, although I haven't tried personally.

Here you can see a bug report for the issue: https://github.com/Microsoft/vscode-python/issues/67

And the same issue for other languages: https://github.com/Microsoft/vscode/issues/22663 https://github.com/Microsoft/vscode-go/issues/926

Looks like they've implemented fixes for C++ and nodejs though: https://github.com/Microsoft/vscode-cpptools/issues/85#issue... https://github.com/Microsoft/vscode/issues/39144#issuecommen...

> In a way, managing WSL feels a bit like managing a VM and it is not completely integrated with Windows.

I think the author missed the point of WSL, I can't see any benefit from that

> To be honest, I don't get why he's installing VS Code on top of WSL, when you have native windows VS Code. This seems completely unnecessary, but maybe I'm missing some benefit?

When I develop Python with Visual Studio Code, I run it from a virtual environment. I have auto-formatting enabled, so whenever I save a file, it will automatically be formatted with the formatter which is installed in my virtual environment.

I don't know if the same is possible if your virtual environment is in WSL and your VS Code is in Windows.

There are some integration issues between VS Code on Windows and WSL. (there are currently 29 open issues on Github for this.)
Windows does properly support 4k monitors, I have two connected to my new desktop at home and it's fine.

As is cinnamon, 4K is not exotic technology in 2019 mine where not even that expensive tbh.

If you’ve got flawless eyes, then obviously native 4K is fine.

If you want larger and blur-free text, get a Mac or stick to lower-res screens...

Windows has dpi scaling...

Turn ClearType off

Or do what I did on Linux and set font scaling to 1.5 and not worry about it one moment after.

Eyes aren't perfect either fwiw.

1.5 fonts scaling worked decently on ubuntu 16.04, but needs magic on 18.04 .

And there's no standard hidpi way for applications to work, so ymmv. Some apps won't understand your settings. So you'll tweak some env for them. Then some apps will double recognize your settings.

Well, it Just Works™ on my out-of-box Plasma. The only things I needed to tune manually were git-gui and choosing a hidpi theme in GIMP.
> The only things I needed to tune manually were git-gui and choosing a hidpi theme in GIMP.

So it doesn't just work. It works only for a subset of the applications, those that fall within a certain DE/GUI toolkit.

Yes, it does. This is an equivalent of selecting "compatibility mode" for that one old Windows app you still use.

Also, this is on X11. On Wayland you don't even have to do that, as non-hidpi aware apps get automatically scaled up.

(and amusingly, just yesterday I had an occasion to test it truly out-of-the-box and turns out that things improved over past few years and now both GIMP and git-gui work just fine - and both are rendered in full resolution)

DPI scaling doesn't blur the text unless the app is not compatible with it.
Ok, since that's a heading from the article itself, we'll use it for the title above.
I develop on windows using wsl and jet brains suite, and I've never been more productive. In general I find windows to have much better keyboard shortcuts than mac, because of universal alt key menu navigation. I've also learned over time that the more you can script away your cli workflows, the less RSI you'll develop. Plus the hardware is much cheaper.
It has always bothered me that developers insist on using Macs for development. Sure, it’s Unix, but how many servers are running macOS? Zero.

You need to develop on a platform that matches what’s running in production. Production almost always uses some form of Linux, so you at least need a local VM running Linux. Then it doesn’t matter if you have Windows or Mac as your main OS, and you can use the tools you need in those platforms, but otherwise actual builds and testing should be happening on the VM.

Even in my company, we have a mix of Macs and Linux machines with our infra running on dev machines via docker-compose. While this ought to make machine specific tinkering unnecessary, it's never the case.
If it doesn't matter whether developers are running MacOS or Windows, why does it bother you that some developers prefer Macs?

Isn't completely fine?

You are mischaracterizing the discussion. The builds and testing should be done in an environment that matches production, and macOS does not match any production server environment available today. Developing on Macs is frequently done on the MacOS itself because it’s Unix so people think it’s close enough. Once you use a VM for the builds and testing, then it doesn’t matter.
It's close enough to linux for most use cases. I can count on my hands the number of times I've needed to spin up a linux machine to debug an issue in the last four years. In the meantime I have an OS that I don't have to constantly maintain while also having access to up-to-date packages via homebrew.
I agree completely. I run FreeBSD on servers, and macOS userland was ported from FreeBSD (once, in 200x and rarely touched again), so there's more parity than Linux, but there's still plenty of things that are different, so once I buckled down and started using a VM to run my code, Dev and prod were a lot better matched, other than perf.

Also, it's not very many of our users are running macOS on their desktops, so any desktop testing had to happen in a VM or another computer too.

> You need to develop on a platform that matches what’s running in production.

I disagree. As long as you can test on a platform that matches production, then you should be using whatever development platform makes you most productive. All major OS's are a means to the same end, each with their own unique strengths and weaknesses, but all perfectly capable.

> You need to develop on a platform that matches what’s running in production

Docker is well supported in MacOS. Much less issues than on Windows. If you want "one device to rule them all" you'd pick a Mac, if you can have multiple devices you can have your main one be Linux, sure.

yes, we're in a more cross-platform world now than ever before!! you have WSL and git bash, intellij tools are class-leading, etc. that said, if you're not a gamer, why not linux?

EDIT: oops, thought this was an ask-hn.

I do not think Windows ever stopped being an option for developers. Perhaps web developers prefer to use a Unix-like OS since a lot of the work they do is running on Unix, but not all developers are web developers and not all web developers are using a Unix-like OS (FWIW none of the web developers i personally know are using Linux or macOS).

I think this sort of perspective is a bit of a bubble, considering that Windows has something around 85-90% desktop/laptop market share and developers aren't really any sort of special snowflakes to expect anything different (even if Unix-like OSes are more likely among developers, it will only be a bias towards them, not something that inverts a 9 out of 10 statistic).

The article refers specifically to Web development.

I manage & develop a Win32 desktop app (because that's what my customers use). I am converting to Qt so I can also run on macOS.

I cannot imagine why I would ever consider an option that does not run on the Mac, such as WPF or WinRT.

(My customers hate Parallels, VMWare Fusion and Wine).

> I cannot imagine why I would ever consider an option that does not run on the Mac, such as WPF or WinRT.

For some applications cross-platform frameworks are good enough, Electron has become quite popular.

For others, native frameworks just work better. Works both ways, same for Cocoa. For example, it’s hard to integrate Direct3D or Metal into QT.

IMO there is a slight history of people wanting to "look the part" by having a Mac. This seems to be changing though, my company has shifted to XPS-15s running Ubuntu and people seem to be loving it.

If your company relies on MS Office (we use G-Suite and Confluence) you might not have such an enjoyable time.

I've got a pc and mac and I web develop on both -- Normalized hotkeys in vscode and I use git bash. Have to hop in to cmd for some very specific things but I could really care less which machine i'm on if i'm just developing
I typically write Node apps. My build step, test cycles, and application commands all execute identically on Windows and OSX.
As someone who develops primarily on Windows and occasionally uses a Mac Mini to build iOS binaries, I feel vastly less productive when I'm using macOS. I've also come to realize I use my Home/End keys a lot since my Magic Keyboard doesn't have them.

It's not that macOS isn't "developer ready", it's that I'm used to the Windows way of doing things and have those keyboard shortcuts in muscle memory.

The main reason I like Windows as a development environment is Visual Studio. I wouldn't trade my data breakpoints, variable watch list, memory views, and Intellisense for anything. Then again I'm working on games, i.e. multi-million line C++ projects that run on 4+ platforms. Most of that stuff is unnecessary in other situations.

Also good luck getting any of the console devkits/SDKs to run on anything but Windows.

I don't think I could be nearly as productive without my home and end keys. I even use insert quite often, because Ctrl+V doesn't paste in a Linux console. Shift+Insert works pretty much everywhere though.
> Home/End keys

On MacOS it's good to get used with unixy/emacsy shortcuts like Ctr-a/e for Home/End. Fn+Left/Right works too (and Fn+Left has a slightly different behaviour). Basically if you love Linux and unixy tools you can get productive on a Mac in no time...

The developers who love Macs are the ones who love the "unix spirit" but for whatever particular reasons can't do all their work on a Linux desktop, if you're not into that then stick to Windows :P

I don't understand the Mac dominance. The last few updates on MacOS have bricked so many coworkers machines. Unbelievable.

Font rendering, yeah ok, still seems to be nicer, literally that's the only advantage I see.

As someone who kept switching Window -> Linux -> Windows -> Linux -> finally Mac, I can say that a MacBook is a breath of fresh productive air for anyone developing software intended to run on a Linux server somewhere but still wishing to have photo/video-editing and ms office software at hand:

- all Linux stuff you'd want is available and "just works"

- default Terminal is amazing and enough for me and most (iTerm 2 is there for whoever wants more) you'll get a sane Linux-like experience where copy paste just works in the terminal etc. (not the hellish terminal experiences you'd have on Windows even with smth like WSL) - also, even things like the touchbar play well with Terminal, you can open a man page from touchbar, change terminal bg color shade from TB to mark a production server ssh terminal tab as "dangerous" with a shade of red etc. ...lots of "small touches" that matter a lot

- mac keyboard is amazing for developers (you'd get the wrong impression that it's bad for developers from people complaining about the touchbar upgrade, but disregard that):

-- having Cmd and Ctrl keys be different means that you can have all you unixy/emacsy ctrl-p/n/b/f/a/e just work in all your desktop GUI apps too (the feel of having ctrl-a/e work in Chrome, VSCode, and other "regular apps" is amazing!), and the same time you can Cmd+C/V copy/paste in the terminal same as in other app - it's hard to put in word the nice warm fuzzy feel this good mixing of unixy-world with GUI-world gives you! (it's the opposite of Windows where the "two paradigms" feel like locked in a cold war with each other and you always have to switch your brain when switching tools)

-- Fn key is in the right correct place you'd expect it, bottom left, just like on the Thinkpads you know and love!

-- OS settings allow easily remapping things like CapsLock -> Ctrl that lots of people will do (if you're more into Vim than Emacs you'll do CapsLock -> Esc, that's in standard settings too)

- multiple virtual desktops + external monitors etc. works productive and intuitively: if you love Gnome, you'll likely love MacOS too! (Also, tools like Divvy give you some features of tiling window managers if you're into this, and they also enable windows-like split-left/right shortcuts. Btw, there's an equivalent tool for Gnome/Gnome-based-Unity on Linux side too).

I'd urge all developers coding for Linux or Android to leave Windows for a while and try either (1) Linux on a Thinkpad (preferably a Gnome-based desktop if you're a developer new to Linux: Ubuntu, Pop!_OS, Fedora etc.) or (2) a MacBook: both experiences are slightly annoying to get used to at first, but dramatically increase your "feel good" factor and productivity! Windows may seem enticing hardware-wise (SurfaceBooks are amazing with their nvidia gpus etc.), but unless you write software targeting the Ms ecosystem, they are horrible machines for both developers and creative people imho... Window should be your last option in 2019 if you're a developer!

"Windows high DPI screens support sucks. I have a 4k screen and everything looks very small. There is an Accessibility option to increase the size of the windows. However, when you do that, most of the applications look very blurry and it is even more annoying."

In my opinion, Windows 10 has the best High-DPI support of all systems. It allows you to change scaling in fine increments on per-display basis. Moving windows from one display to another scales them pixel-perfect, if supported. Pretty much all applications I use regularly work fine.

On Linux, the only thing I found to work out reasonably well is 2x scaling. I can't speak for Mac OS, but in my recollection the non-2x scaling isn't pixel-perfect.

"The text is rendered very poorly in Windows, creating a kind of chromatic aberration around it."

This is ClearType sub-pixel rendering and again in my opinion it's the best font rendering of all platforms, though FreeType on Linux works about as well. Font Rendering on Mac OS is just blurry by comparison. With Retina displays it doesn't matter so much anymore, but it was really annoying on the lower res displays.

Perhaps the author has it misconfigured for his displays and needs to run the builtin "ClearType Text Tuner" tool.

"Microsoft has made great efforts to support the needs of developers and creators, but as of 2019, I think OSX is still a stronger option for developers."

If you implicitly rely on a lot of UNIX-specific stuff, Windows will suck. That probably won't ever change.

Just moved from Linux to Windows at work.

It's not WSL I find myself using to have a good shell experience. It's MinGW/mintty. I even got a plugin to wrap it around WSL, since the Windows console experience is pretty painful. I miss my middle-click pasting and nice color schemes.

I just wish I could setup the path translations in PyCharm to use the same mapping. Things work, (and not too bad) but I just hate having to rewrite all of the paths in my environmental variables.

My other gripe is with the Cisco VPN client running all internet traffic through it, rather than having OpenConnect sort it out ahead of time.... but that's not really a Windows issue.

I use WSL for NodeJS professionally, and I can't find any troubles. It was hard to get to the point were my terminal was easy to look at, but that's it.

There's also a great community of Windows employees bettering Windows Console, with honesty and humbly (they even created a themer that reads iTerm2 style files).

With a bit of patience, you can get it to the point where you never look back.

Also, very important: my employer disables real-time protection, which otherwise would make WSL unbearably slow. Make sure you test on an old PC before committing fully to it.

> The text is rendered very poorly in Windows, creating a kind of chromatic aberration around it. Coming from an Apple MacBook, this turned out to be quite annoying, because I didn’t know if my design looked bad or if it was just Windows messing up with it.

I think the OP is describing an intentional feature (subpixel antialiasing). Mac OS Mojave disabled this feature by default because you don't need antialiasing if your screen resolution is very high. The chromatic aberration is ugly, granted, but the technique allows you to get a higher effective horizontal resolution which ultimately improves readability on low-resolution displays. And if you don't need it, well, it can be disabled on Windows too: https://www.isunshare.com/windows-10/turn-off-or-on-clear-ty...

My company doesn't allow Linux machines, and I prefer a Unix-like environment for the work we do, so it's Mac for me. I could do most of what I need on Windows, but I feel like doing my work on Windows takes ten more steps than it does on the Mac.

I prefer using Windows at home, and I can write software on it just fine.

I find Windows to be more and more hostile towards development these days. Windows 10 may have a very impressive kernel but the UI (aka Explorer) is a nightmare of "simplified" screens. Something like UI spaghetti.

Windows search and windows defender constantly spin your laptop cpu fan to max speeds because, you know, nobody minds a noisy laptop that they are not actively using.

Windows updates are constant, slow, often fail altogether and completely out of your control. Your machine may reboot at any time so good luck with that long running task. It's like they shipped a swimming pool that was actually a sieve and they are madly patching it every day.

Windows doesn’t respect the users desire to put the laptop to "Sleep". It will wake up at any time and often just stay awake and drain the battery.

Windows has also become some sort of hybrid advertising and tracking device which you can, admittedly, disable although some things like the search listening service Cortana really does not like being disabled.

Not everything is doom and gloom however. The virtual machine engine HyperV is extremely fast and easy to manage making things like Android development is a pleasure. Visual studio keeps getting better too.

I used to use a mac, but moved to Windows when it became obvious that Apple isn't making top of the line laptops anymore. My old MBP was one of the best computers out and stayed at the top, spec wise, for a while. Eventually I needed more, but when I looked at what I could get for the money, Macbook Pros were ridiculous.

Moving to Windows had its hurdles, when an program doesn't support font scaling it's a pain in the ass, I bought a non-4k monitor just to make sure I would always have the ability to use apps that broke on my 4k.

WSL is amazing and easy to use. Mostly I found I missed the Windows ecosystem. OSX has a few nice programs, but does not compare to the options available for Windows.