205 comments

[ 4.5 ms ] story [ 309 ms ] thread
I need the state of the art hardware so I can .... open a terminal.
Run Slack.
Run Chrome.

(ignoring the extra battery back that I really should have attached to my MacBook Pro compared to just running Safari)

More like I need hardware that Just Works (a lot of Windows laptops that are of similar quality to MacBooks were nearly the same price, go figure) a native POSIX-like environment that works mostly with my Linux-centric tools and don’t like dealing with any more differences from my server than I have to but would rather not fight for hardware compatibility constantly.

But what definitely is bothersome with the MacBooks is that I can’t use CUDA worth a damn without an nVidia GPU so if I work with most machine learning toolkits I have to ship the code off to some expensive cloud just to see a quick run for prototyping or port all my code to support Apple APIs specifically instead of the open source ones primarily centered around nVidia tooling.

> a lot of Windows laptops that are of similar quality to MacBooks were nearly the same price, go figure

Those exist? I’m not being facetious. Are there really examples of non-Apple laptops that are as nice of hardware? (I primarily care about screen and trackpad.)

Trackpad no, but the IBM / Lenovo X1 Carbon series were pretty solid laptops for a while and also quite expensive for years. And more recently the Surface Book models have been really nice to work with if it weren’t for pesky power management issues. If the Surface Book 2 ran macOS and had the same suspend / resume experience as Macs all do I’d have been quite happy with Microsoft. Before the Surface line most OEMs have been primarily about driving costs down in the face of commoditization and races to the bottom rather than trying to compete head on with Apple from the hardware and consumer experience side and it appears that Microsoft is still going at the gargantuan task of making PC laptops sexy alone.
What does using a terminal as your UI have to do with the demands you are placing on your hardware?
(comment deleted)
> I'll be honest: it wasn't an easy switch at first, but as time went by it's become clear it was the right choice.

Let's stop pretending there's a correct OS. We all have different needs and it depends on what you're optimizing for.

I have a Macbook for work and run Windows 7 on my home desktop with Ubuntu on my home laptop. They all have their benefits and drawbacks.

And Windows 10 has been having plenty of problems of its own with recent vulnerabilities and a bug that could break VPN connections.

(comment deleted)
> The best OS is the one you enjoy and are most productive on.

What if like me you dislike them all? Actually I'm not kidding - I find the desktop OS in 2019 pretty miserable. I'm using Windows right now, but not because I like it. Current Apple hardware is of no interest to me, so macOS is ruled out. Linux and Windows are kind of neck and neck - I dislike each roughly equally, but find Windows wastes less of my time fiddling to get & keep things working.

I have a 95, two 98, and two windows xp machines at home. They are SO MUCH EASIER to use than modern linux, mac, or android. And my goodness are they fast. I've booted my p75 98 machine faster than web pages can load on my i7 mac. Really makes you wonder what kind of hell the ignorance of "right tool for the job" will lead us to in the next few years.

(no, they are not plugged into a network, I'm lazy, not stupid.)

> I've booted my p75 98 machine faster than web pages can load on my i7 mac.

I have an i7 windows desktop at home with an SSD, and if I turn on my monitor before I hit the power button on the desktop, the PC is logged in before my monitor powers on. Things can still be fast, if you're careful.

Just because your PC from the 90s is still fast, doesn't mean everyone elses were, this screenshot is famous for a reason [0]

[0] https://i.imgur.com/Ko5QcQl.jpg

I couldn't agree more. Personally, I've found dual booting is the best option, but since most hardware isn't optimized for this it does sometimes lead to driver problems. I really wish all computers we're optimized for multiple OS... I mean it's great on a desktop where you can have many drives, but that's not practical for laptops and partitioning really isn't the most stable option in my experience.
Loving WSL and the windows of today. Many years ago I switched to Mac (away from MSFT/Linux) to streamline my development of both client and server code. I continued to use MSFT at work (console and game development) while using Mac at home. About a year and a half ago, I switched to Linux and Windows fulltime both at work and at home after my second macbook keyboard failed and continued frustration with the state of graphics drivers on Mac and poorly documented APIs. Another huge issue was that both macbooks I tried (even with the latest updates) failed to support multi-monitors seamlessly (lots of glitching on plug-in and swapping). Needless to say, I feel "in control" of my workstation again and my productivity is up as a result.
Everything on the “free updates I’ve gotten” and nearly everything on the “updates coming soon” lists are on MacOS (also free), and most have been for a while.

Not bashing Windows, I’ve had a pleasant history with msft, but when almost everything “new and exciting” listed here is old news for MacOS, it kinda dulls the argument.

The first issue I found trying to switch from Apple/Mac to Linux is the lack of a laptop with good touchpad. Second was the battery, 3rd was the lack of a nice mail app. I'm still on MBA 2018 (and a mini)
I just switched from Mac to Windows and had to move back. I cannot believe how miserable the Windows experience is. I mistakenly thought that since so much is browser-based, it's not a big deal. But literally every single little thing is slightly-to-much worse on Windows. Even stupid things like changing scroll direction, saving the 5 second preference for notifications to disappear, finding a wifi password, arranging windows, remembering window positions after disconnects, saving screen shots, etc, etc, etc.

Not having a Unix shell is of course ludicrous.

Pretty fair article, though.

If you're changing the scroll direction, you're not moving, you're trying to recreate your MacOS experience on Windows, and it isn't surprising that didn't go well.
It's cheap to change a configuration setting. It's expensive to rewire habit.
I used to have a Surface Pro and it had the option for changing the scroll direction. From a quick google, Microsoft has supported this since at least 2013: https://tablets.gadgethacks.com/how-to/reverse-scrolling-dir...

But it was a feature limited to their own devices, and was set via a special Trackpad Settings app that you had to download from the Windows Store, not a standard part of the OS.

Which is a pretty good example of why I don't use Windows much anymore.

What does changing the scroll direction do? If you physically scroll on the trackpad horizontally, does it scroll vertically and visa versa? Not familiar with it, so curiously asking.
Think of it like a phone vs a scroll bar. Which option is "correct" is largely a result of personal preference.

On a phone, you drag the page so when your finger moves up, you are scrolling down. MacOS has had this be the standard for a long time.

Changing the direction makes touch scroll act like you're click-dragging on a scroll bar. when your finger moves down, you scroll down.

It inverts the direction (up swaps with down and left swaps with right) from the previous trackpad scrolling behavior.

Before 10.7, the scroll behavior acts like you've grabbed the scroll bar and your fingers drag it, so moving your fingers down makes the scroll grip move down and the page content move up. Moving your fingers left makes the scroll grip move left and the page content move right. The scrolling paradigm is that your fingers grab the viewport and move it with respect to the content.

In 10.7 and later, it instead acts as though your fingers are grabbing the content and moving it around within a stationary viewport. So moving your fingers up pushes the content upward. So the scroll interaction is like the direct interaction on a touchscreen, but via a trackpad instead.

I was scared to ask what this was even referring to
Apple calls this setting "Scroll direction: Natural" and describes it as "Content tracks finger movement."

That's been their default since back in 2011, and although a lot of people disabled it at the time I definitely prefer this mode of scroll interaction. It's more direct and is consistent across all the gadgets I use.

It acts like you're grabbing the content and moving it around, rather than grabbing a scroll indicator at the side of the page and pushing that up or down. Especially when you factor in other gestures like pinch to zoom with multitouch trackpads, it now very weird to turn this off. For zoom, it feels like you're grabbing the content, but then when you pan suddenly you're grabbing the viewport instead? Next time you're on a Mac, open up Maps and try it both ways.

The fact that grabbing content this way feels natural may have a bit to do with Apple having large, smooth, and very responsive trackpads. YMMV on other hardware.

I tried it both ways and switched to the traditional scrolling. Changing the default once is a small and one time price to pay vs changing the decades of ingrained habits.

I don’t ever touch laptop screen even if it is touch enabled. To me mouse is strictly superior to touchpad which is superior to touchscreen and keyboard - outside of operations that require precise positioning on the surface of the screen - is superior to pretty much everything.

I thought about why I prefer things this way and decided that it is about travel time. With a touch screen if you want to love from a to b your finger has to travel all the way, whereas mouse can be tuned for maximal sensitivity. And for operations where you can use a keyboard shortcut the interaction time is even more immediate.

I like both depending on context. CAD and gaming, definitely a mouse. But for general use I like the trackpad better. Scrolling is smoother and Apple's multitouch gestures for window/desktop management are really fast and natural.

Once upon a time I had an 8 button mouse with several of the buttons bound to Exposé functions, but I don't think I'd go back to that from Apple's trackpads.

> It's more direct and is consistent across all the gadgets I use.

The problem is that a touchpad is still fundamentally an indirect pointing device, rather than a direct pointing device like a touchscreen. The "consistency" argument relies on the same flawed reasoning that led Microsoft so astray with their Windows 8/Metro UI efforts to unify touchscreen and desktop interfaces.

And ergonomically, it's easier to perform a down scroll on a touchpad with the non-"natural" scroll direction, because your fingers have more room to curl further than to straighten out when they're resting normally on the trackpad.

> The problem is that a touchpad is still fundamentally an indirect pointing device, rather than a direct pointing device like a touchscreen.

Based on what? I don't think there's any logical advantage to each of these options although I prefer the Mac-way now. You just get used to it.

>The problem is that a touchpad is still fundamentally an indirect pointing device, rather than a direct pointing device like a touchscreen.

As a counterpoint, cursor movement with a trackpad is just as indirect, yet we make the cursor move around directly with your finger.

Why not make the cursor act like traditional scrolling? Treat the cursor like the contents of a scrollable view, and your finger motion acts like it's moving the viewport relative to the contents even though the cursor/page is actually moving while the screen/viewport is stationary?

That sounds super weird, yeah?

Having flipped my mental model to "one finger drags the cursor, two fingers drags the content", going back to "one finger drags the cursor, two fingers drags the viewport relative to the content" sounds similarly strange.

>And ergonomically, it's easier to perform a down scroll on a touchpad with the non-"natural" scroll direction, because your fingers have more room to curl further than to straighten out when they're resting normally on the trackpad.

Not really an issue; scrolling has momentum and requires very little movement. Give it a push and then put your fingers back down to stop it, it's not like a clicky mouse wheel where you have to scroll scroll scroll scroll scroll to go more than a few lines at a time.

How is scroll direction, in any way, restricted to a MacOS experience when Windows has had the option for years? I also have the scroll direction set that way because it makes more sense for me when I use the touch screen. It's one of many ways that the UI on Apple devices makes a lot of sense but I don't see why that's somehow a "MacOS experience". Nonsense.
There is a better terminal coming out, but I use Cmder in the meantime.

Taking screenshots has a shortcut key. Alt + Shift + S.

I use a screen manager called Aqua Snap. It's great.

I turned off notifications. They are awful.

I use Windows and OSX, but I understand how you feel. I still prefer OSX.

These are good tips, I'm not a windows user and would have never found that hotkey or aqua snap. Do you have any more tips?

It might be asking too much but perhaps you could write something up?

Ok. I don't have the mental capacity to write something up at the moment, but here's another one.

In Windows, you now have a Spaces alternative (It hasn't been called Spaces for a while). It's super cool. You hit WindowsKey + Tab and up top there are desktops. You can use the plus sign to create a new one and continue to use that expose like feature to drag apps between desktops. Next, you can either navigate via expose or you can Ctrl + Windows + [Left | Right] to change between them.

If you're doing any kind of javascript development, there is NVM, which will allow you to change node versions. That's a nice tool.

For installing software, some people use Chocolatey. There is some danger because there isn't any code signing as far as I know so I don't use it. But basically, that is a tool that allows you to install apps into windows with a config file.

For MITM proxy, Fiddler2 is pretty great.

For process management, there is a whole suite of tools called SysInternals. They allow you to see which processes are open and the files they are accessing. That can help tremendously in certain scenarios.

Rainmeter is a cool desktop customization tool that you don't have as good alternatives on OSX.

7zip is a must have for compression.

Deluge is a decent torrent client.

Some of the console commands you want to learn are ipconfig [/all] to check your IP address.

On Task Manager, you can set affinity to certain CPUs so that processes don't eat up all of your CPUs. That's a neat trick. I'd have to get a good night's sleep before I can think of anything else, but I hope it was helpful.

Edit: Oh and I almost forgot.. You do have a Unix shell on windows. You can google how to turn on "bash subsystem for windows". Then you can install Ubuntu. I don't think it's virtualized. But I still currently prefer Cmder since I can copy and paste on it. But yes it's linux and you can mount your C drive and just linux away at your windows. Pretty soon, their new terminal with better font rendering should be a show stopper. It's currently on some kind of preview that can only be run on pre release versions of Windows 10 so I wouldn't hold my breath waiting.

I haven't found it as bad as that, but agree it's a poorer desktop environment in lots of mostly small ways than macOS.

I don't know how you work out it doesn't have a unix shell though. It does, in the estimation of many a better one by default than on macs.

WSL is pretty great, and if you're targeting Linux for deployment, it's somewhat superior than OS X. For one, it repects the case sensitivity of the file system on Linux (by default) while OS X is (by default) case insensitive like Windows (you can make OS X's filesystem case sensitive, but I've read it can cause problems with the OS and some apps that assume the default behavior.

I've never really used a Mac much, but it did cause a problem at a previous employer where most devs on the team worked on Macs natively and then tests would pass locally and fail in CI, because the CI was running on the target Linux config. I'd usually notice them first as I'd run the tests on my Linux VM (pre WSL) and anything with a case mismatch in a config or module import would fail. Was a pain to fix the first time because of bad assumptions about the Mac env, but subsequent issues were quickly fixed.

One big issue I ran into with WSL (not sure it's been fixed, not an issue for me anymore) was building large C++ projects under WSL with MacAfee installed. Apparently a known issue, but it (MacAfee) would leak memory like a seive as it scanned the files in a way that wasnt recoverable. The only way to get the memory back was to reboot. Even after the processes in WSL ended, the memory was lost. You couldn't see what process was using the mem. But, it showed in the system utilization. It is possible to hard freeze Windows due to this bug. Solution? Uninstall MacAfee. Had to have an antivirus due to company rules and (I think) financial regs, but Defender didn't leak memory and was sufficient (albeit slow while building). Don't know if it's still an issue as I haven't used that configuration in close to a year and a half.

There have been issues with the Console Host (I noticed artifacts using Vim in bash under WSL under certain circumstances), good news is that the Console Host is getting much needed love and is probably getting the most attention it has in over a decade. Its already improved quite a bit, and some big changes are coming soon. Also, the team behind it is very engaged on Github issues (the source isn't available, but they use GH for issue tracking directly from the public without having to use the Feedback Hub or file an issue with MS support).

I never understand why people run a dev environment natively on macOS. Sure it may be what Google tells you and is easy with homebrew but small differences between production Linux certainly makes me uncomfortable to even think about doing that. I would either run a Linux VM locally or use "upload on save" feature on an editor and run it on a remote Linux machine.

These days you can prepare a completely isolated docker instance to each devs, so they don't even need to set anything up themselves and just let them upload on save and run whatever packages and daemons they want as root with the added benefit that anyone check their state as their code is always on a server.

Same thing here. Sold my 2013 MBP and bought a Thinkpad X1 carbon. After a year of frustration, bought a used 2013 MBP.

Windows is somehow worse than it used to be. There's two control centers for some reason. Much more notifications and intrusiveness. Taskbar auto-hide doesn't work consistently. Updates install without permission. The big thing is the apps. Apps are getting much less functional (just like how the Settings app does a fraction of what Control Center used to do.) OneNote is a great example: the UWP version lost so much functionality compared to ON 2016, but the latter has been abandoned.

Weirdly enough, I never found a good PDF viewer. Acrobat DC is a slow and a battery hog. Edge/Chrome are non-functional (don't handle search properly on many PDFs). Many alternatives are .NET based on battery hogs. Moreover, since Edge/Chrome won't let you use a PDF plugin anymore, the workflow is completely broken. (Download the PDF then open it in a separate app.) I never thought that Preview would be the "must have" Mac app.

Oh, and the trackpad! RDP from a Mac into a Windows terminal server is a better mousing/scrolling experience than native windows on the X1 (which has an MS Precision touchpad).

Oh, and power management was real hit-and-miss. Sometimes I'd get a full 10 hours, and sometimes, under the same workload, it'd be like 6. The synaptics touchpad comes with a driver (even though it's supposed to be an MS Precision touchpad) that had some helper utility that would randomly go crazy. (If you killed it, it would restart automatically. Deleting the binary fixed that, and had no discernable affect on mouse behavior.)

> Deleting the binary fixed that, and had no discernable affect on mouse behavior.

In my experience, deleting the Synaptics binaries does restore access to the operating system's built-in touchpad control panel, rather than forcing you to use the Synaptics utilities that appear to be barely modified from what I remember encountering on a Windows 95 machine. That makes it quite a bit easier to take advantage of the halfway-decent set of configuration options that Windows now offers.

You have to repeat the purging after upgrading to a new Windows build, or if Windows Update tries to reinstall the Synaptics drivers behind your back. (Updated userspace tools shipped as part of driver updates don't show in the list of installed Windows updates!)

> Windows is somehow worse than it used to be.

I have to agree. I use Windows probably 90% of the time, but I have to say it peaked with Windows 7 and started going downhill with 8. Now it's a game of "guess which config system has the option you need" + Microsoft forcing all kinds of things power users really should be able to disable.

I wonder if it’s because the older MS developers are retiring and the young blood don’t know how to keep the OS to the same quality.
I'm tempted to say this is true (most newer developers are unlikely to have a deep understanding of older, faster languages like C++, especially in the age of Javascript and glorified IRC clients that consume more resources than the OS does to run), but I think a more accurate description of the problem is that Windows became fragmented in 2012 for stupid reasons (when the decision was made to make desktop Windows an ad for its unfinished tablet version- Metro was an unmitigated usability disaster for everything not a tablet) and everyone getting hired on is just trying to put the pieces back together.

We don't know if Windows is in maintenance mode or not either, or what the next version would look like if one eventually comes out (maybe it'll all be in TypeScript?). After all, UWP was mostly retired and the visions of "your next desktop computer is a tablet" have significantly died down- the technology and the will of the market just weren't there.

However, Microsoft has failed once before to develop a proper, stable OS- though Vista did bring a great number of graphical and usability updates to XP, chief among them the "Show Desktop" button, the ability to snap windows onto sides of the screen, and putting a Firefox-style search bar in Explorer, it suffered from poor functional quality (file copy windows should never ever be broken, for instance), so I'm not convinced it's solely the fault of newer developers.

I wouldn't blame the new people. You can't possibly keep up with a huge code base as Windows when you can't implement anything smart as it can always break something somewhere. You need huge tests just to change a small thing.

It would give them a better return to just make a new OS from scratch while keep supporting Windows for the next 10 years (maybe 20 for extended support) and let it slowly fade.

Or better yet, take the Edge route and use Linux underneath and change the appearance to MS' taste, have binary compatibility layer and call it Windows.

I’m happy to see someone els lament a good alternative to Preview on windows.
I remember this being a pain when I switched off of windows 10 years ago, can’t believe they haven’t figured it out yet
I was using FoxIt PDF reader when I was using Windows mainly 15 years ago but does it not have enough compatibility?

Can't believe things haven't changed since then.

Sumatra - it's fast, super lightweight, and renders perfectly.
Well you made one huge mistake... you must run Linux on the x1 Carbon for it to be amazing.
Yeah, no: https://medium.com/@hkdb/ubuntu-18-04-on-lenovo-x1-carbon-6g.... I did my time already. Compiled my own kernel back in the 2.2 days. Futzed with X11 mode settings. I’m too old for that now. I’ve come to the conclusion that, especially for mobile devices, developing the OS separately from the hardware is a disastrous idea. It makes no sense. The people best suited to do things like tweak the throttling profile or USB power management settings are the folks who built the machine.
I haven't done anything like that and my experience has been great. I'm not even running Ubuntu or Fedora or anything like that, just vanilla arch linux.
>Much more notifications and intrusiveness.

I right clicked the rightmost icon in the task bar, then chose {Focus Assist > Alarms Only}. After I did that, the only times I have been notified on Windows is because I set a timer in the {Alarms & Clocks} app.

(I would probably have noticed any other notifications because I am sensitive enough to being notified that I completely disabled Notification Center on my Mac.)

PDF rendering is baked directly into Quartz which it's why it's so great on macOS and iOS.

IIRC the quartz team was involved with Adobe when they were developing the PDF format.

It is no longer great (it used to be so around Mavericks). Current pdfkit is broken, and renders PDFs blurry, with the effect enhanced on low PPI screens. This holds for iOS as well since the same pdfkit is used, but since the devices running those are extremely high PPI this bug goes unnoticed by all but those looking for it or those with sensitivity to such imperfections. I think the state of PDF rendering on macOS right now is unnacceptable.
Do you have screenshots that can demonstrate this? I'm surprised to hear it, I'm fairly picky about visual quality but I've never noticed an issue with PDFs on MacOS or iOS. Never used a low PPI screen with them though.
Many windows users consider macOS font rendering at low dpi blurry, and windows font rendering crispy.

It's just what they are used to.

This has nothing to do with that. In fact I am a "Mac user" driven to Windows solely because of this issue.

Aside from blurry PDFs, I also used to like font rendering in OS X and prefer it to Windows but unfortunately it also got screwed up with Mojave after they disabled subpixel rendering.

Some of the many reports:

https://apple.stackexchange.com/questions/295427/what-causes...

https://discussions.apple.com/thread/8531638

https://twitter.com/deivi_dragon/status/938663751158501376

https://www.reddit.com/r/apple/comments/72lxjx/macos_high_si...

It is less visible on a high PPI screen although still there and noticable if you know it exists. Unfortunately I know it exists, can see it and am bothered, so I stopped using my Macbook and left it to collect dust.

I've never seen this issue myself. I'm on High Sierra now.

In Yosemite PDF rendering performance was crap for me in some high resolution documents for print, but other than that it has been flawless for as long as I've been using macOS.

I've only seen the issue shown in the Reddit post (which looks like some rendering lag) in Android actually.

As I said it's difficult to see on a high PPI screen unless you're looking for it. High Sierra, I think, is the first version where this bug was introduced, so you most certainly have it but it just isn't drastic enough a change to bother most people on a Macbook's screen. The rendering lag is another problem that was introduced with the one I'm referring to, which is a separate issue but they are probably related.
I have to admit I haven't used a low DPI screen in macOS since Maverick times, so you might be right. PDFs in Preview look perfectly fine to me.

Maybe Apple actually optimized rendering for hiDPI displays since probably that's where the majority of users are these days.

Oh wow, that definitely looks terrible. I totally understand not liking MacOS due to that. Thankfully it's much less pronounced on high DPI screens? I've never owned a low DPI macbook so I've never really encountered it before.
Don't you ever present anything on a projector?

Many professors in our department have a MBP, and their LaTeX presentations look bad, just because macOS is bad. I notice it every single time, and sometimes (without me even saying, I just tolerate it, don't make a sound) they themselves do, too, asking themselves whether they've grown that so old or something.

I only have the leftovers of my girlfriend, 2015 MBA, as a macOS device. The PDFs look like crap on Preview and many other ".app"s I have tried. SumatraPDF running on Wine works properly though. Yeah, I'd say Preview simply does not work properly at this point. Shame, but also fun to watch from the Windows's side.

Are you serious about the PDF viewers? Windows has Sumatra, Xodo, Drawboard all of which are fine and the first two are free.

Mac OS on the other hand, has had a broken pdfkit implementation since around Sierra, and any PDF viewer that relies on it (Preview, Skim) has broken and blurry rendering of which there are several reports online. This makes any PDF reader other than Adobe's (which is an abomination) unusable. This has gone mostly unnoticed or ignored as the blur is reduced by the high PPI screens, although it is there and becomes much more apparent on a lower PPI external screen.

This single fact makes Mac OS unusable for me. Windows has its own faults, but at least I can read crisp PDFs on it.

Although it's a bit of a pig, Acrobat Reader DC is still the best thing out there. I bought and really love Drawboard, but since there's no reliable way to gracefully make it persist as the default PDF app for the OS (and consequently, the browsers), I just went back to DC. (This is a general problem with "modern" apps - they can't really be made to act as reasonable default apps for Win32 apps, AFAIK.)

That said, for all its warts, the Win10/WSL combo is light-years ahead of MacOS. (I had to use a Mac for a recent client engagement, and truly felt like I'd been cast back to the turn of the century. Seriously, MacOS is really primitive, especially for dev, compared to Win10/WSL.) But more than that, I'll just never go back to a computer without really awesome pen and touch support. The only problem I've had with several versions of Surface Pro hardware is Intel's execrable Skylake power management cluster-foxtrot.

Same - here's how my story went:

Upgraded from my 2009 MBP to a 2017 MBP a couple years ago. Immediately regretted the purchase after the keyboard screwed up multiple times so I returned within 14 days for a refund. Ended up buying a Surface Pro and hated it. Upon booting up my machine I was instantly met with severe backlight bleeding so I returned it. The store gave me another device - same issue. This time I decided to see if I can put up with it. I immediately regretted not having a proper shell for dev work. In addition to this, I couldn't believe how hard it was to remove certain applications/programs from the computer. Why is there a menu for Apps and also one for Programs and Features? These issues kept piling up until after a few days I returned it again. Decided to grab a 2015 MBP from the Apple refurb store and have used it since. No regrets.

not having a unix shell? you read the article right? the part about how you can run a unix shell with WSL? you don't have to bash on windows, but now you can bash on windows ;)
It's a different platform. If you want it to be a mac, use a mac.
(comment deleted)
Just to +1 the experiences here:

I have a surface pro 4. I enjoy the touchscreen for some things, but otherwise I roundly hate it, almost entirely due to Windows. Some things work in touchpad mode, some don't, sometimes a feature is crippled in one mode, the gestures are finicky and weird and the only reason I know how to use them is because I read a few blog posts, notifications that are undismissable for no reason, and sometimes the touchscreen keyboard doesn't come up for 30 seconds.

The very best thing I've done has been to mark every network as "metered" so it stops auto-installing (non-critical) updates and forcing lengthy shutdowns. The only downside (if you can call it that) is that now it seems update is half-broken most of the time, and it won't find updates for a month or two even if I say "check now". Sometimes it works for like a week or two and I can pull updates about every day like I'd expect, and on the day of their release, so it's pretty clear when it's broken. It's usually broken.

---

I have Elementary OS installed on it too. It's a much better experience, except for needing a custom kernel for touchscreen (a simple google + apt-get away, thankfully, which is about my limit to put up with), and I don't know how to get the on-screen keyboard to be available at login. There's just so much less nonsense though.

If you've marked every network as metered, then Windows is doing exactly what you told it and NOT upgrading over those networks. Even a manual update request should fail, because you've already told it not to upgrade over a metered network. It's not Microsoft's fault you're an idiot...
Manual requests intentionally bypass that, as their own documentation states when you enable that setting. Plus "check for updates when I press a button" is enormously different than "automatically download and install updates in the background". Wanting one without the other is entirely reasonable and technically simple.

Even if it wasn't, it's unreasonable to offer a "check for updates" button that just turns into an indefinite progress bar forever without mentioning "can't check on this network" or something.

Also, as I mentioned, it does work sometimes, which is why it's clear when it's breaking. Though I didn't mention it earlier, it remains broken even when I turn off the metered mode, so yea. I'm pretty sure the updater is just plain broken most of the time.

I feel sympathetic to Windows OS developers because the code must be a huge bloat to keep up with decades of backward compatibility and have to go through codes that many generations of people had written to even change a thing which made it pretty much stuck on its own weight.

But I can probably still be fine what OS I am on as long as it has quality third party apps but interestingly as a web dev, it's all on macOS and have no intention of moving away as it'll kill my smooth workflow.

Tried to check if I could use Windows for it a few years ago but figured it's a pain in a few hours. I can see MS is trying though, when they start including Linux in Windows. And I like their tooling very much, like VS Code and TypeScript but I don't see myself switching away at least for the next 5 years.

My biggest peeve about windows is how it sends my laptop to sleep when I close the lid. You're plugged into a docking station with a keyboard, monitor, and mouse connected. I have several windows open on the monitor. No windows open on the tiny crappy laptop screen. Why the fartnugget do you think closing the laptop means "go to sleep"?! I didn't buy a docking station, monitor, keyboard and mouse to augment the shitty laptop keyboard, shitty laptop trackpad, and shitty laptop screen, I bought those things to replace them (but still be able to function while traveling).

Also windows absolutely refuses to update. It didn't update to 1803 without downloading the install iso manually, it didn't update to 1806, and now it's refusing to update to 1903.

Windows (also visual studio, but that's another story) is incredibly just... Bad.

The reliance on the mouse and generally terrible keyboard shortcut story annoys me, but it can be fixed with third party software which is ok I guess.

Rant over. Sorry for wasting everyone's time.

> Also windows absolutely refuses to update. It didn't update to 1803 without downloading the install iso manually, it didn't update to 1806, and now it's refusing to update to 1903.

Microsoft has leaned very conservative in offering the feature updates after complaints from the earlier ones. Especially if your laptop has high usage patterns that likely suggest a work laptop it may not offer you the feature update until late in the cycle. Or in some cases specific hardware or software installed.

(A big block right now still for 1903 is it can be hesitant if you have a lot of unpatched games installed because several versions of highly deployed anti-cheat software cause BSODs if not up to date, affecting even major games like Fortnite.)

There is a good alternative to downloading the ISO, called the Update Assistant. It's an app that can tell you why you are currently blocked, if that is the case, and/or force install the update. It's at the top of this download page (the "Update Now" button in the gray region, not the Media Creation Tool below it):

https://www.microsoft.com/en-us/software-download/windows10

Keep in mind you might be heavily biased because you're used to macOS. When I had to switch from Windows 10 to macOS last year for work, I was flabbergasted at how the general UX sucked compared to what I expected:

- it's not possible to switch between multiple windows of the same application with Cmd+Tab

- it's not possible to display two windows side by side without switching to fullscreen mode

- it's hard to make some applications take the whole screen without using the weird fullscreen mode

- the apps don't close when you click the close button. I get that there used to be a reason for this, nowadays it's just bad design

- it's not possible at all to split the screen horizontally

- multi-monitor sucks hard

- there's no mini calendar on the clock

- the contextual top bar is awful

- the Finder is a monstrosity

- Cmd+shift+4 for a screen capture? come on...

- the difference between cmd, option and control is still not clear

There are a lot of good things on macOS but come on, a lot of things suck really bad

> finding a wifi password

what?

> arranging windows

No. Just no.

I agree with all of this and would like to add that Windows is much better than OS X if you have a keyboard-centric workflow. For example, if you want to navigate dialog windows with the keyboard, you can just press Alt + one of the underscored letters to directly press a button in Windows. In OS X, you have to press tab a million times until you have reached your desired button and then press space...

The window management via keyboard is also much better in Windows.

Also I hate that the Home/End keys are broken in OS X. I get that you can use command+right/left instead, but that doesn't work in the terminal for some reason :(

>> In OS X, you have to press tab a million times until you have reached your desired button and then press space...

What do you mean? If you have a dialog button you just need to click Cmd-"First letter of the command that you need". The system never teaches you, true, but it's there.

I just tried this in TextEdit by writing something and then quitting without saving first. It didn't work for the 'Delete' and 'Cancel' buttons. It did work for the 'Save' button, but that one is the default anyway, so I could've just pressed return instead.
Checked it, TextEdit has a slightly unusual modal window, generally it works throughout the system.
Which also applies in reverse (but I know you are aware of that)

- Key combo to switch between apps, another to switch between windows of the current app. Makes sense to me

- It is possible, although not easily as Windows 10

- Double-click on title bar and/or cmd-click on green traffic light

- You mean vertically? I'm pretty sure macOS only allows horizontal splitting, which feels limited I agree

- Agree to disagree. Windows losing their position when connecting/disconnecting displays on Win 10 infuriates me

- Agreed. Though there are a lot of apps that can replace the clock with a clock + calendar combo, some are free. On Win 10, I can't believe the calendar doesn't display week numbers, and I cannot replace that

- I love it. To each their own

- you mean UX or bugs? I much prefer the Finder to Explorer, which always looks so bloated to me

- the beauty is in having full screen / box capture as file / to clipboard in 4 easy shortcuts, system wide. Compare to Win 10 Snipping Tool, it's night & day

It's supposed to be something that comes with the OS, but I'm a satisfied user of Moom (https://manytricks.com/moom/) that alleviates most of the window positioning issues you touched upon.
> it's not possible to switch between multiple windows of the same application with Cmd+Tab

I think Cmd + backtick will do what you want.

Cmd-backtick technically works, but is its own mess. It doesn't have a preview mechanism like Cmd-tab/Alt-tab, so you bring a bunch of windows forward that _stay_ forward while you look for the one you want. Then you have to go back and bring forward the windows you just covered up so you can see what you wanted.

I wind up installing Contexts on my Macs, which changes Cmd-tab to behave just like Windows' Alt-tab.

It's also still impossible to switch between the windows of the same app located at different spaces.
If you save a wifi password, you can retrieve it in the Mac Keychain. If you've logged into the WiFi network on another iOS device, you can automatically share the password to your other devices.

I'm sure you can retrieve the wifi password on Windows, but there's probably a learning curve for someone unfamiliar with the ecosystem.

> I'm sure you can retrieve the wifi password on Windows, but there's probably a learning curve for someone unfamiliar with the ecosystem.

They've made it far worse in Windows 10 to find your wifi password. You have to click through a bunch of Metro windows before stumbling into the right dialog, which is a Win32 application. In Windows 7, it took a total of 2 clicks to reach it. Now? I feel like I have to guess every time how to get to the right dialog because it seems to change with every update. It used to be much quicker to reach on Win10 even, but they removed all the quick paths to reach it.

> the apps don't close when you click the close button. I get that there used to be a reason for this, nowadays it's just bad design

Are there any apps in particular for which you feel that this behavior is worse? It's supposed to be for document-centric applications or those that do something useful in the background (eg. iTunes). On Windows, the latter category tends to clutter up the system tray, while the former category just forces the user to wait for the whole application to re-launch if the last document was closed. Splash screens are mostly a thing of the past, but app launch times are still noticeable, and re-activating an application that was merely swapped out by the OS is faster than a cold start of the app.

I hate any application in Windows that doesn't close when I hit the close button. If you want your application to minimize to the taskbar, have that happen when I hit the minimize button.

The same goes for phones, too. The last time I used Discord on my phone I ended up restarting the whole phone because I couldn't figure out how to close it.

> I hate any application in Windows that doesn't close when I hit the close button. If you want your application to minimize to the taskbar, have that happen when I hit the minimize button.

That's reasonable, because on Windows there's no clear distinction between the process and the window. On MacOS, there's real functionality provided by the dock icon and menu even in the absence of any window.

>> arranging windows

>No. Just no.

The smartest thing that developers of window managers on Linux can do (as many have done) is straight-up copy Windows' winkey-arrow behaviour. It's one of those things that should be standard on every system with a keyboard and some sort of multiple-window multitasking. When I used OSX I really liked it for the under-the-hood stuff, but window management was a miserable experience.

"Saving screenshots"

Nice way to hint that you are definitely being sarcastic, because cmd+something+3 surely and clearly is no way intuitive, contrary to the use of dedicated Print Screen key on Windows.

Just to point for the unfamiliar, the "hotkey" defaults for screen shotting are user configurable on macOS, in System Preferences/Keyboard/Shortcuts. In fact, shortcuts can be changed not only for all actions, but also menu items in any/all programs can be remapped to desired key combos, or indeed added for menu items with default hotkeys. This is actually staggeringly powerful, and frequently overlooked.
The writer is a journalist. For techies using Mac, there's a bigger question of whether you want to just move from Mac to GNU/Linux.
Whenever I try to use Linux I find it's essentially impossible due to terrible power management support for any hardware I can find. I'm used to 10 hours on my MacBook - how do I get that on Linux?
4-5 hours on T480s, I have TLP installed and I tried tinkering with it, but that's the best I've managed. People claim more, but I think it's just wishful thinking.
I get at least 8 hours with Debian/Openbox on a Samsung Notebook 9 Pro 13.3" - NP940X3N
Their are a variety of ways to manage all of the power management settings on Linux.

https://wiki.archlinux.org/index.php/Power_management

It can be a pain; enabeling sleep for every USB devices will likely result in the keyboard or touchpad becoming broken, increase the latency it takes to respond, etc. But once it's configured it just works very well. I'm getting 10+ hours on a Dell XPS 13" under light web browsing + youtube.

Any Apple laptop will likely need some unique customizations for everything to work and for maximum battery life. It could be argued that instead its popularity drives up the number of discovered errata. Case in point, the Archlinux page contains not only an extensive "Mac" page but it also has dozens of pages for specific Apple computers documenting pretty much everything you would need to know to get every feature working and get comparable battery life (could be a little better or worse).

https://wiki.archlinux.org/index.php/MacBookPro#Power_manage...

In case anyone reading doesn't know, the Arch Linux distro's wiki is great, and you don't need to use Arch to benefit from the wiki.

(The Arch wiki might be my single most useful source of technical info when tweaking things on Debian lately. I haven't tweaked laptop power management lately, but I used to do it aggressively, including building my own kernel, making sure CPU power management was working, tracking down every process that used CPU cycles or spun up the disk for no reason, turning off devices I didn't need, dimming CCFL backlight, etc.)

As a counterpoint, my XP’s 13 gets fairly mediocre battery life (4-6 hours?) because I never figured out how to configure the power settings. It also doesn’t fully wake up sometimes, but that’s pretty rare now - Ubuntu 19 seems to have fixed that. It’s my desktop that fails to wake sometimes now, even with suspend turned off (also Ubuntu 19. The memory leaks/performance slowdowns are improved too, but not gone - is, the laptop slow down after being on for a couple of hours. I think it’s from failing to fully wake from suspend or hibernate?

That said, it’s a great OS. I just wish it was less buggy. Not planning to switch in the near future

I ran Fedora on my Dell XPS 15 f/t for about 6 months, and found battery life to be similar to that on Windows. I think I remember reading on Phoronix that Fedora's power management defaults are better for battery life than most distros.
The writer uses bash, so I wouldn't be that quick to label them.
I was waiting for a linux enthusiast to chime in with an option the article never even mentioned. It happens every single article, much like vegans on every mention of food.
I have a friend who moved from a 2016 MBP to a Dell XPS with Ubuntu and has liked it a lot. Personally that's the only jump I would make from my current MBP as a development computer because even though WSL2 has come a long way, I still like having a psuedo*nix system to program on.
I'm not being an advocate here (I don't like, but do use, Windows), but WSL2 is actual Linux running in a lightweight VM. It's not even a VM running on Windows, but sits alongside Windows on the hypervisor (as far as I understand).
Yep, my current combo Mac + Linux; i'm super happy with them:

- macbook air with OS X for holidays or house related

- macbook pro with OS X for work

- desktop with Ubuntu for long programming sessions

- home-office headless server with Ubuntu for NAS/webapp hosting/home-automation/backups

I have setup my systems to synchronise all my files through my NAS using unison. So all my project files are accessible locally on all my personal computers. I've been using this setup for at least 6 years now.

Unison is fantastic, it’s a shame it doesn’t appear to be actively developed anymore. Although in saying that... I don’t have any issues with it.
Personally I'd never move my primary workhorse from a Mac to GNU/Linux. I did the reverse switch years ago, and despite checking out all the weird and wonderful new releases and distros that have made it out the door, there's always some show-stopping time wasting quirk which reminds me why I switched in the first place.

Though I'm still a huge proponent for using GNU/Linux where it shines the best: i.e. server environments.

Probably far more likely in my case would be to follow the articles suggestion and just switch to windows... perhaps even using WSL.

> The list of major changes to Windows in just two years, for free, is impressive:

The idea that upgrades could even be qualified with "for free" is such a foreign idea that it gives me pause.

Microsoft and “for free”

With Microsoft, “for free” actually means that you’re the product. And since Windows isn’t free, you have to pay for the privilege too.

They were right to use the word "changes" vs "upgrades" which implies improvement. Microsoft seems intent on filling their OS with user-hostile features and turning the OS into an ad-delivery/data collection platform.
When people refer to the entire suite of Unix-like tools as “bash” I don’t quite know what to make of it. Interpreted uncharitably, it would seem to imply that they think all those nice tools like grep, awk, etc. are all shell builtins, which would be a huge red flag as it would mean they have very little idea of how a typical Unix-like OS works. Interpreted charitably, maybe they do know that those are all separate programs and know what a shell does, but they think the whole experience is called “bash” and not just the shell? Which I guess wouldn’t be as serious. Or maybe they know exactly what’s going on and are just using it as shorthand, sort of like how people use “the White House” to mean the entire US Federal Executive.

I honestly am not sure which it is.

I often say that I like using macOS, but what I really mean is that I like macOS itself along with its apps and ecosystem. Perhaps the same thing was meant here.
I see your point, but I think it’s a slightly inaccurate analogy. There is no “bash ecosystem”; if you switch your login shell to zsh or fish or tcsh, nearly everything works identically. I suspect if this guy were forced to use zsh, he’d be fine; he just doesn’t because it’s not the default.

Whereas when you say you “like using macOS” I assume you don’t just mean that you like using computers in general and you would have absolutely no preference for macOS over Linux or Windows.

Expect zsh to stop being niche in a few months when apparently the next version of MacOS will use it by default
> When people refer to the entire suite of Unix-like tools as “bash” I don’t quite know what to make of it.

Because nobody installs bash without coreutils and the 30 or so other common utility programs (grep, sed, awk, et al). Pointing out that bash doesn't include coreutils+standard is just being pedantic. Nobody runs a system without those utilities present. Everybody already knows what is meant. You're not adding to the meaning by requiring a comprehensive listing of core and standard utility programs.

You might as well be saying, "Actually, it's not Linux. It's GNU/Linux." Only Richard Stallman cares, but even Stallman recognizes that because "a long name such as GNU/X11/Apache/Linux/TeX/Perl/Python/FreeCiv becomes absurd, at some point you will have to set a threshold and omit the names of the many other secondary contributions." [0]

Nobody is going to say, "OMG, how can you say you have a proper environment if you don't mention that you have the very important yes utility." Nobody is really interested in a required-only install of Debian or a base-only install of Red Hat or whatever because the use case for that is so rare and narrow that it's not worth contextualizing. Anybody who is doing that knows that it's a weird setup.

[0]: https://www.gnu.org/gnu/gnu-linux-faq.html#many

You seem to be responding to points that I’m not making.

I’m aware that very few people install bash outside the context of a typical Unix OS. It would indeed be pedantic and useless to point out that that’s theoretically possible, and that’s not what I’m doing.

It’s also very rare to install, say, grep outside of a typical Unix OS. But you wouldn’t say “the grep workflow on WSL is great” to mean the entire WSL experience, unless you were specifically talking about actual grep. So why do people do it with bash?

Because bash is the name of the Unix shell, differentiated from the traditional Windows shell.
Would you say “I’m using Chrome and Visual Studio” or “I’m using a Windows workflow and tools” or “I’m using explorer.exe” ?

The first two make much more sense to me than the third.

(As an aside, it’s not true that Bash is “the Unix shell” and it is in fact not the default on several Unix-like systems. But in fairness to your point, it is the default on most GNU/Linux distros).

What should it be called? Basic Unix utilities? What is correct?
I’d say the Unix-like workflow or I’d mention the specific OS if appropriate (like Ubuntu or whatever).
What lots of people call "Bash on Windows" is technically the "Windows Subsystem for Linux", although that's a bit of a misnomer, since it's all the usual apps from a standard distro (several common distros can be downloaded directly from the Microsoft Store) but actually running directly on the Windows kernel, through an impressively fast adaptation layer that looks just like a real Linux kernel to the apps. (With the exception of a few bizarre corner cases like Dbus, but you can even make those work if you really need to.)

Similar (and similarly speedy) adaptation layers provide transparent access across Linux and Windows filesystems, too - the ability to safely work bidirectionally from a windows app to the Linux filesystem and vice-versa is new in the recently pushed 1903 release of Win10.

Not only does WSL work quite well, it's a bit of a righteous hack or technological marvel in its own right, especially since it makes Linux a fully equal partner in the the dev ecosystem, something the old Microsoft would never have allowed.

I know what he means. I’m asking why it’s popularly referred to as “bash”.
(comment deleted)
Just letting ya'll know the best version of Windows 10 by miles is called 'LTSB'. It doesnt come with any shit on it (windows store, xboxlive, cortana etc etc.) MS have also promised It will not receive any updates that change its functionality but will receive security updates, for 10 years. You can only get it if u buy in bulk tho. Or, u can just get it from tpb.. Considering MS are intentionally not selling by far the most user-respecting version of their OS to regular folks, it behooves us to pirate it.
Serious question: How can you possibly trust pirated software in 2019? How do you know it’s not riddled with rootkits and backdoors?
Well to be fair, pirates are far more honest and helpful than corporations.
Agreed, pirated anything from a known trusted group or uploader is what I consider a clean copy of something. If I buy the official version of anything I usually use the pirated version anyway.
That is dangerous. They can plant whatever the hell they want as soon as it looks financially attractive. What repercussion do they have against corporations doing the same?
How can you possibly trust open source software in 2019? Do you pore over all the code checking it? I'm gonna assume in most cases no, and that you trust the community who do actually do that. Same with pirated software. I'll trust a known group, because they have a history of clean releases, as opposed to a corp, who often have a history of shenanigans and spyware and whatnot.
I did not try to crack LTSB, but I think that it's similar to other Windowses. You're downloading MSDN iso from torrents (which you can verify by checksumming and googling), you're installing fake license server somewhere and you're activating your copy with that fake license server. No need to crack or run anything and fake license server is open source, so you can even compile it yourself and run from VM or VPS or whatever.

I wouldn't even call that stealing, as many folks legitimately want stable Windows and MS does not want to sell LTSB to them.

"Bash on Windows is maturing quickly." -- Hold my beer. Sorry, maturing quickly isn't going to cut it if you're a hardcore developer that works off the bash command line.
MSYS2 has been distributing a native Windows port of bash for years; it's completely stable and works great (it's the one used in Git Bash). "Maturing quickly" refers to the reverse-Wine/integrated VM situation that MS is developing in WSL.
I don't know the stature of Bash on Windows, but Git Bash does all that I need it to.
Off-topic(ish): I didn't know about Microsoft UI Fabric until I read this, but found it to be really interesting, huge collection of components, well documented and for Web, iOS and Android. Anyone tried it out?

https://developer.microsoft.com/en-us/fabric#/

An operating system with advertisements will never be my first choice.
That. I loved windows, was probably at some time one of the last people using windows phone, but the moment I started getting a candy crash or something icon in my start menu and could not remove it unless I did some powershell tricks and even then I had it coming back was the end for me. I still believe there’s more innovation going into windows than other os but just cannot work on a system where every time I press start I am worried I will be annoyed. On Mac currently but working mostly on a Linux vm with i3 to get used to it. A touch, gesture enabled i3 is my dream and I am working on it.
That's funny, I never see any Microsoft-pushed advertising (other than in the Windows Store, which is kinda its point). I right-clicked on CandyCrush, removed it, and have NEVER seen anything I didn't put in my start menu since. I'm on record as having a well-justified hatred/distrust of Microsoft for their stance on things decades back. But that was long ago, and they've changed. I've been using Win10 for five years now, and it's without question the best operating system I've ever used. Both MacOS and any Linux are a huge step backwards, especially when it comes to running 21st century pen/touch apps on 21st century hardware!
It’s like Microsoft noticed all the spyware and adware people kept accidentally installing, and thought: I want in on that.
Maybe it's how they are funding/justifying their recent open source contributions?
I have used all 3 major OS (Windows, Mac & Linux) for at least a decade each, and I review my current choice every few months.

I have regained a lot of sanity by realizing computing happens within platforms, and regarding the OS as just plumbing. My platforms of choice are the web (for hypertext), elisp text applications (for interactive development, task management, email), and Unix.

I only need a browser (Firefox), a text editor (Emacs) and a terminal. I prefer to use a tiling window manager (StumpWM), but it's not a big deal to use the WM provided by my current OS.

These 3 platforms (web, elisp and Unix) will be long-lived. Whereas native Windows, Mac and Linux applications tend to have much shorter lifecycles. Furthermore, they don't tend to talk well to each other. They are little silos.

Also, since the lifecycles are so short, by the time I work out all inconveniences and learn all tricks, the platform is beyond its prime time. This has already happened to me several times. I was really happy with Gnome 2 circa 2005, but the whole ecosystem collapsed with the transition to Gnome 3. Same thing, to some extent, in OS X Tiger-Snow Leopard. A really nice ecosystem of indie applications that has slowly lost a lot of momentum to iOS.

That said, I prefer to use Linux because it's so component-ized I can always replace frustrating things, and nothing gets pushed into me by a corporation. Plus code is open, and some userland things like Nix are so unique. And first-class centralized package management is great.

I'm kind of with you... next desktop will move from hackintosh to linux proper. I've used enough linux in remote shells, vms and via docker. I really like OSX and the Windows taskbar, but it's at a point where the hardware decisions of Apple leave me unsupportive of their hardware, and similarly their OS.

Likely to use Pop_OS! (weird spelling, hope they change it), as I do like Ubuntu/Debian, but want a faster pace on parts of it. I'll probably continue to work more against containers rather than on the desktop itself. But at least I'll get real volume mounts.

use KDE and enable global menu. You would feel more similar to OSX
I mostly agree with you except that I fall back to macOS because, in addition to development, I do a lot of media production and hardware support for Linux still just isn't there. I have a VM running Ubuntu for a lot of things but I always just find myself falling back to macOS with the terminal and being satisfied with that 99% of the time. That being said, I still have my gaming machine as a Windows rig and, every time there's a Windows Update, it reinforces my decision to leave Windows for day-to-day use. The last straw was when a Windows update caused me to lose video for nearly a week unless I ran in Safe Mode or without the AMD/Nvidia drivers (yes, I tried 2 different video cards). Turns out that the update changed something with HDCP that prevented video out from working because, and I shit you not, my HDMI cable was too old. It worked 100% ok until that update and, despite no hardware issues, was killed by a software update. Never again.
I'm debating switching to Windows when my 2015 Macbook gives up unless Apple really have learned their lessons from the 2016 model.

I have two remaining major issues with Windows, which is down from the remarkably sizeable list that had me switch to Mac and OSX, which makes it easy to keep the Windows box as games only:

+ Extreme monochrome flatness. It's obtuse and hides information, like the edges of icons, encouraging misclicks, and is quite frankly pig ugly. I quite liked aero glass and the UI as Windows 7 had it. The first Windows that "looked right". If only they'd modernised and flattened that a little...

+ Abusive view of the users: Tracking and telemetry you can't easily disable. Knowing better than me when to reboot, to install, when to display ads.

There's lots of minor issues, like 3 to 5 different incarnations of every feature from menus, to dialogues, to preferences. Or Explorer usability. Or how discoverable some things are. Or the whole mess of registry and installing. Or the 40GB of ever-growing Windows sub folders. All I can live with, but ugly and tracking? Much harder to tolerate.

So as ever I'll end up with a mix, rebalanced a little. One day I'll have a lovely seamless all-something world, but it hasn't happened since the 80s when it was Amigas everywhere. :)

I'm in a similar situation, but I'm pretty sure that when my 2015 MacBook Pro dies, I will still be unable to find a Windows notebook with a comparable touchpad. Running Windows on my gaming desktop is tolerable, subject to the caveats you've outlined. But even with great software, Windows notebooks are still handicapped by poor hardware interfaces. I realized recently when I got a new Windows notebook for work that touchscreens exist and are popular on Windows notebooks because they partially compensate for the horrible touchpads. On my MacBook Pro, I still feel no need to augment the touchpad with a touchscreen.
I wouldn't care about the frequent and annoying rebooting if Windows had implemented a feature that MacOS has had for literally 5 years: automatically restoring the logged-in user's session after a reboot. I lose so many Notepad notes to self because they're unsaved and Microsoft decides to reboot. Screw that.
This telemetry thing is surprisingly overlooked in these discussions. I've disabled tracking and reporting on at least 4 separate occasions since windows auto updated my laptop from Windows 7 to windows 10 without user permission. They just keep adding auto-enabled features that override the previously disabled features doing the same thing.

"We heard you when you said you didn't want cameras automatically monitoring you. So we added this new feature where you can disable cameras based on DAY OF THE WEEK and turned every day on for your convenience"

Microsoft knows it lost the online tracking game, so it's playing dumb and putting in privacy-invading features and overriding user selections yearly. Why rely on a browser when you control the OS?

The paranoid part of me thinks windows is giving away windows 10 for free because it's making money selling the user data and access to intelligence agencies.

I know apple has received some flak for updates slowing their computers, but windows is no better. My 4 year old laptop is basically unusable at this point because every action takes 10-15s.

I had to use a Windows laptop for about a week as my MacBook was getting the keyboard replaced.

I hated it. It is hard to articulate exactly why I disliked it so much but I would guess it is almost entirely a visual thing. The font rendering is so much better on MacOS. This was Surface Book 2 laptop so the display resolution was not a factor.

And I hate the amount of whitespace in Windows 10 user interface. There is a dropdown panel in start bar that shows common settings icons. God I hated that entire minimal design. It felt like something high school student might mockup for the Year 12 computer science project. Two colours, thin drawing that vaguely resembles a visual representation of the task and HUGE whitespace.

I was contemplating buying a Lenovo X1 Extreme Thinkpad because everyone raves about their keyboards but after using Windows 10 for a week.. nah.. nope... nyet... na-uh

Ironically, I feel like it's a result of designers trying to copy Apple's minimalism.
I don't call it minimalism. They cut off unnecessary parts and left what mattered, like unblaoted it.
Been an Apple user for 20 years and the switch came down to the absurd hardware cost of Apple. We have 5 desktops in the house (Large family), we do gaming, graphic design, video and audio production. Easily save $10K on upgrading all of our systems to modern hardware running Windows. The stability and experience of using Apple for graphics, audio and video use to be a big advantage 10 to 15 years ago. Now it's the same if not better on Windows.
Saving $2k a desktop doesn't sound right.
I really don't like Windows. There are justifiable reasons that I don't like it but that doesn't get to the root of it for me.

I just _don't_ like it. Not only does it not evoke any kind of pleasant feeling in use, it's so heavy and fumbly that I just cannot use it for any meaningful period of time without getting frustrated, lack of terminal not withstanding.

For context: I use a mac at work, I used a windows machine for 2 years before this, my personal machines are linux/bsd based (i3/sway)

The Mac experience hasn't improved a lot, granted I'm using a 2013 Trashcan mac and that's quite dated, but mac, like windows, is suffering from just kinda feeling bad these days, I'm not sure if it's mojave or that I'm becoming old and getting grumpy about my display manager not being able to be operated without a mouse... but I don't like it.

Don't get me wrong MacOS is still _miles_ ahead of Windows in my opinion, but their hardware these days is appalling, and really the hardware alone makes me want to move to a nice XPS13 with Linux for work.

My i3/sway machines are /nearly/ perfect, I can think of two things that make them kinda suck:

1) Hotswapping monitors on Sway is.. hit or miss.. I could hack my way to make this work better most likely but I shouldn't have to.

2) I work in a Microsoft based company and tools like teams (which has a linux varient.. kinda), skype and outlook aren't going to work, not to mention the UUNC SMB paths that get tossed around and the burning desire to use email as a version control system for Excel spreadsheets...

What I mean is that #2 is served by MacOS, but not linux. :\",

I tried switching to Windows in late 2016 for my every-day machine and I went back to macOS.

It wasn't really a matter of familiarity. I've been using Windows since 3.1 and while I've been using mostly macOS since the Vista days, I've always had a Windows machine for gaming.

I was really surprised the problem for me was the Windows ecosystem.

Outside of the major players (Microsoft, Adobe, etc) most of the stuff you find are ugly Win32 apps that look straight from Windows 95, do not support scaling, etc. At the time even the Creative Cloud app from Adobe didn't support scaling and looked super small on a 4K display. Heck, even Photoshop didn't support Windows scaling, you only had a setting to change the UI size from 100% to 150% or something like that.

The other problem is that I couldn't find good replacements for my most used productivity/utility apps. For example Alfred, Karabiner, BetterTouchTool, or iStatMenus. There are some alternatives that solve some of the problems these apps solve, but none that are even half as good. A colleague which is 100% Windows told me that much like Android, Windows users are less likely to pay for quality software.

I also had a ton of hardware problems with the Surface Book 1 I bought and returned to Amazon.

The Mac hardware situation is a real problem though, that is certain. Hopefully Apple has already realized this and is slowly correcting course.

You're so me.

Mac's culture of 'I made something decent and I ask you only $15.' was a great start for OSX and had gotten better by App Store's presence to provide people the spot on experience of quality third party apps.

Windows, having only either of free but never too good or commercial offering that is bloated and expensive is getting old.

At a certain point I gave up trying to fix various battery, keyboard and screen issues with my MacBook Pro and just started coding on a cheap netbook with Linux and realised I didn’t really experience much pain (spent a fair amount of time SSH’d into beefy servers, admittedly).

When I finally bought a fancy new machine I ended up getting a gaming laptop with a GPU I knew I could do CUDA stuff on. I’ve got one disk with Ubuntu and one with Windows and ultimately spend most of my time in Windows. I still use Cygwin because WSL annoyed me in various ways (mostly I just want Emacs to be able to call command line tools and work).

There is nothing to love about Windows, and plenty of aggravations (I’ve been logged into my son’s Microsoft account for months and Microsoft regularly send me screen time reports about myself, because I once tried to set up a network game of Minecraft). But honestly, I work in Emacs and Firefox and actually quite like having access to games. I can’t really imagine ever going back to a Mac. If battery life was better on Linux and GNOME would stop lobotomising itself with every release I imagine I’d drop Windows too, but it’s been so long since I felt genuinely thrilled by an OS.

Havnt used my computer sence The april 2001 big crash..Windows then, redhat was to complicated to instal on a Window, i tested other to.. But neee
I'm planning on switching from macOS to Windows 10 in the fall, and could not be more excited. I specced out a pretty powerful workstation: 16 core/32 thread AMD Ryzen CPU, 32 GB RAM, 1TB PCIe 4.0 NVMe SSD, and AMD's newest graphics card. For the same price, the best MacBook I could get would be the 13in MacBook Pro with a quad-core CPU, 8GB of RAM, 1TB SSD, and integrated graphics. I'm really excited about the power switching away from macOS gives me. I initially thought about switching to Linux, but I didn't want to give up nice things like biometric authentication and real desktop apps (I use Affinity Photo pretty often). Plus, with Samsung Flow, I get some pretty nice integration with my phone. The improvements Microsoft is making to Windows 10 give me a lot of confidence, way more so than Apple, who seems to be entirely focused on the iPad Pro.
~20yrs Windows user and die-hard anti-fanboy of Apple, I'm almost considering switching to a Mac as the next corpo laptop (if not for unergonomic Mac keyboard layout and different shortcuts for everything, I'd have done it already).

While I'm happy with my personal Thinkpad, being nearly the only front-end guy on Windows sucks (missing out on various tools, and regularly having to fix slightly broken scripts etc.).

But above all, my corpo Dell is a misery (current status: malfunctioning audio drivers hence all audio sounds like 32 kbps crap; issues with external monitors when replugging laptop to the docking station; cherry on a cake is laptop going berserk while presenting at a conference, due to loose RAM; there's an issue like this every few weeks lately).

Current Dells have much better battery and are half as heavy as the previous generation, but I still wouldn't buy a Dell for myself, and sadly those are still the default Windows corpo laptops.

For better or for worse, Windows these days seems increasingly designed for two main form factors. Surface products, and desktops. The hardware quality on a lot of other OEM laptops has really fallen behind.

I use both OSes, and the only Windows laptop I've found compelling over the last four years is the Surface Book line.

I have been using ThinkPads (T, W and P models) with Windows since 2006 and seldom had anything to complain about.
My single biggest gripe with Windows laptops (I have a T470 now, previously a Razer Blade, and I have had various classes of Dell/HP laptops over the years) is the trackpad. The trackpad experience on a mac is leaps and bounds ahead of any of the windows machines I've used. The Mac trackpad via bootcamp is a downgrade, but still better than the trackpad on my T470.