Warm Takes on Microsoft's Surface Pro 4
First, some background
I embarked on a spiritual journey this week to answer these questions: do all the developers I see switching (or threatening to switch) to Windows see something that I don't? Has Microsoft actually turned the Windows user experience around? Is the combination of Microsoft's hardware & software superior to Apple's on the Mac?
At the heart of these questions: hope. Hope that people have placed in Microsoft's embrace of open source, its in-house hardware design, and its broadened cross-platform support. My suspicion at the outset of this experiment was that the recent, near-universal praise of Windows is, instead, mostly hype—fueled in large part by a general frustration that Apple has been the only serious contender for developer mindshare for over a decade. Most of the people I know switching to Windows of-late are furious about Apple's apparent product direction, and I'm biased to think their praise of Windows represents a sort of motivated reasoning. But I can't test my bias without seeing Windows appraised by someone who, like me, is a genuine fan of Apple's products… reluctantly, I figured I'd do it myself.
So, last week, I bought a Surface Pro 4 from the local Microsoft Store and put it through its paces on my own terms and carrying my own biases. I'm not a dispassionate reviewer, poring over each feature checkbox and assessing its objective quality. I'm just someone who really likes using iOS and macOS, but is interested in challenging Microsoft's products by asking them to "make me switch." These are my initial notes.
I have spent over twenty hours documenting my observations as I compare the Surface to the Mac, including some of the things that macOS can't do (things like registering the serial number to obtain warranty support). This post will focus on my experience as a new user. In a subsequent post, I'll cover development environment setup for Ruby & JavaScript.
This is a very long and very painful read. So gird yourself and pour a stiff drink now. Go ahead, I'll wait.
This is a dying document
I am going to say things in this document that are uninformed, inaccurate, and unfair. This is a very spritely-edited list of snap observations I made while getting used to Windows 10 and my Surface, categorized only for digestibility by you, the reader. As a result, please feel free to add comments wherever I goofed up or where you know a workaround to a problem I encountered. I'll do my best to curate your comments so that subsequent readers will see them, but I will avoid the temptation to continuously edit the document itself to correct the record, as any fixes wouldn't be true to my real (if fallible) experience.
First up: what it was like to buy the Surface.
The Purchasing Experience
I walked into the Easton Microsoft Store with next-to-no knowledge of Microsoft's current hardware offerings. When it comes to consumer technology, it's rare that I'm operating at an information deficit relative to the staff, so I reveled in the opportunity to learn about the Surface & Surface Book from Microsoft's own employees.
- Without exception, the staff was friendly and kind. Nobody was pushy, but at the same time they were very pleased to see that I was interested in buying something. I got the sense that everyone was very well trained
- Over my two visits, the staff was able to help me make heads or tails of how the Surface Pro compares to the Surface Book, initially guiding my decision to buy the $799 Surface Pro since the cheapest Surface Book with a dedicated GPU (the only reason I'd want one) was twice the price
- The store was clean, uncluttered, and mostly well-laid-out. People gave Microsoft a lot of grief for aping the design of the Apple Store, but I think the retail industry would be a lot better off if every company ripped off Apple's stores and that we should welcome the imitation of pleasant experiences
- For a product that's priced at or above the iPad Pro, I was genuinely surprised that not a single configuration includes any kind of mobile/cellular radio. Later, I learned that the previous edition, the Surface Pro 3, offered an LTE model, but this year's didn't. What?! And you all thought Apple had #courage! There'd be riots if Apple did this!
- I used Apple Pay at checkout and didn't get any grief about it
- I was given this hilariously large and durable tote bag
- Unfortunately, it turns out that I made a partially uninformed purchase. The next day, I dropped by the store on my way home and mentioned what I'd just purchased to a representative. He kindly informed me that while I had paid $930 for a 4GB/128GB i5 Surface and Type Cover, there was a special promotion for an 8GB/256GB i5 Surface that included the Type Cover for $999. He was apologetic they hadn't mentioned it the night before and processed an exchange, even though I didn't have the box or power supply with me
As someone who hates buying things from corporeal humans, I found the process of buying the Surface to be genuinely enjoyable.
The Unboxing Experience
I opened and set up the device from my hotel room, and I paid close attention to the package design and initial shipping conditions of the product:
- The tape used on the box features friendly-looking pull tabs, but was actually very difficult for me to pry off with my bare hands—what a tease!
- The box itself was unexceptional and the product was mostly unadorned, minimalist to an almost Apple extent (I say almost because the plastic wrap around the surface had printed bullet points of hardware features on it, as if that was the best place to teach me about what I could use the Surface for)
- The Surface and Pen were displayed prominently in the box, but the power supply was hidden off to the side, itself in a cheap white cardboard box of its own.
- Speaking of the power supply, there's a reason the package designer tried to hide it: the thing is grotesquely huge. Microsoft had to crop its product photo on its online store. This thing takes up more space in my bag than my 15" MacBook Pro's 100W power supply. If Apple had shipped this, people would complain that the power supply includes a USB port, as if that exacerbated the size. In reality, I suspect the port was tacked on as a result of the power supply's girth and was not a contributing factor to it
- Both of my Surface Pro devices shipped with completely dead batteries. Apple products usually ship with a 50–75% charge so you can start using them right away, but each Surface was a brick until I plugged it in for a minute or two. Perhaps this is the result of Apple turning over its inventory every week and the Surface sitting on shelves for weeks, but regardless, it's a suboptimal user experience
- The Surface Pro 4 ships with a Pen accessory, but it doesn't come paired. I suspect if Apple shipped its Pencil with the iPad Pro, it would come paired out-of-the-box (like the Apple TV's Siri Remote does)
- The Pen comes preloaded with a teeny-tiny AAAA battery, a form factor I didn't previously know existed and which I simply cannot wait to replace
- Being able to magnetically stick the Pen to the left side of the Surface is a welcome change of pace, as I never know where my Apple Pencil is unless I awkwardly stick it in my pocket as I move about the house
- The Surface kickstand is inelegant and feels cheap, but it's functionally superior to Apple's smart cover in that it can be adjusted to arbitrary angles and (unlike my 12" iPad Pro) isn't prone to frequently falling off and causing the device to crash to the table
- The tablet and pen themselves look and feel cheap and bulky. The pen's cap, grip, and tip all look ugly with their gray-on-gray two-tone rubber, which itself sports an unpleasant gritty texture. The Surface itself looks good from the front and the back, but everything along the sides feels cheap, especially where it reverts to plastic or has holes exposed for the built-in fan and ports
- The Type Cover's keys feel good with a surprising amount of travel for its height, but the trackpad seems too small. The Cover's pseudo-cloth texture which covers the palm rests is layered atop the hard plastic awkwardly and is deeply unpleasant to the touch. I will say, though, that the magnetic click the Type Cover makes as it snaps into the base unit is very satisfying and consistent
The unboxing experience and my initial impressions of the hardware were positive… if I grade it on a curve. I would have been appalled at numerous points if this had been an Apple product, but I had (appropriately) low expectations. Verdict: "this seems way, way better than opening a new Dell or HP device."
Initial User On-boarding
As with any modern device, there's a wizard that helps get the machine initially configured (a network configured, an initial user account created, etc.). My thoughts on my first moments with the Surface software:
- Step 1: connect to a wireless network. I selected my hotel's wi-fi network and, instead of rendering Hilton's captive page, the wizard hung for a few moments and timed out. I hunted frantically for a "skip" button and didn't find one. Worried that a Surface couldn't be used without connecting to Microsoft's servers, I clicked "back" and found a link to proceed offline in small font under the network list
- Over two pages and five checkboxes, Microsoft asks for the user's consent for tracking their data. I found it refreshing that they separated the option for data to be used for advertising from data needed for more critical functionality, but I was still alarmed by the catch-all default set to share all my "browsing data" for the mere purpose of predictive page loading. Yikes. (Against my better judgment, I left all of these checked because I'm trying to evaluate the default, recommended experience.)
- The wizard had me pair the Surface Pen and took a moment to explain a few of the buttons for me; that brief tutorial was probably the highlight of the wizard experience, as I wouldn't have known the eraser could register clicks and double-clicks otherwise
- The wizard had me create a user account and, since I was offline, it was a completely local username and password and not tied to my Microsoft account. Later, I would download an app from the Windows Store which required me to login to my Microsoft account and then— without prior warning — Windows changed how I login to my entire computer so that my password would match my Microsoft credentials. I promptly forgot about this and found myself temporarily locked out of my computer the next time it restarted, because my Microsoft password was generated by 1Password and I don't have it memorized
- Once I'd completed the wizard — entirely offline — the Surface displayed a full-screen "Making everything ready for you" message and spent over a minute doing something, but who knows what. Honestly, what could the device be possibly doing that takes so much time if it's not sending or receiving any data on a network? I'm genuinely curious
- As soon as the wizard launched me into the Windows desktop, the screen was much too dim for my tastes, so I started tapping the apparent brightness buttons on the Type Cover over the F1 and F2 keys, only to find that they had no effect. I later came to realize that those keys merely control the brightness of the Type Cover's keycaps' LEDs. Why would Microsoft devote two physical keys to keycap brightness (something I'll set once and never think of again) while leaving control of the much more important display brightness unbound?
- Aside from the pen, the wizard seemed like a missed opportunity to teach me much about how to use the Surface. I'm always a fan of jumping right into an environment and playing around, but not everyone is going to have the initiative to find and download the User Guide PDF like I did
- There is one last feature that I only bothered to set up on my second Surface device: Windows Hello. It's a nifty login mechanism that has the user configure a numeric PIN (so now I have configured a local password, a Microsoft account password, and a PIN with which to unlock my device) as well as pose for a facial recognition system that's akin to the one found on the now-mostly-defunct Xbox Kinect. The facial detection almost always recognizes me, but I have no clue whether it would recognize only me, or if it's just on the look out for bemused and balding generic white men. A separate security concern is that, unlike Apple's Touch ID, Windows Hello doesn't seem to be primed by a secure password entry—rebooting the device will still allow facial recognition to initially log a user in
- One thing missing from the wizard: any mention of full-disk encryption. iOS devices are always encrypted and new Mac devices encourage users to enable FileVault during their set-up wizard, but I had to dig a little to understand what the Surface had done. I was pleased to discover that the Surface Pro 4 had Microsoft's full-disk BitLocker encryption enabled by default (even if it can be defeated by a rando wearing a Justin Searls mask)
Typing and Swiping
I can't speak for you, but I spend a lot of my time on computers typing on keyboards and swiping on trackpads. One of the things that pushed me away from Windows in 2004 was the slowly-increasing input lag associated with keystrokes and clicks throughout the user interface. The distraction caused by waiting around for the GUI to catch up with my keystrokes or clicks would often pull me out of productive flow.
Here are my thoughts on the keys and trackpad on the Surface Pro 4's Type Cover (sold separately at $129):
- Whereas the MacBook's Force Trackpad features palm rejection (a necessary improvement given how massive the trackpad is), the comparatively small Type Cover trackpad instead seems to feature a "dead zone". That is, if you place a finger on the trackpad and move it less than a millimeter, the input is ignored. If you drag your finger further, Windows will start registering cursor movement. I find this compromise — probably implemented in the spirit of reducing accidental input — really frustrating, as the tiny trackpad doesn't have many millimeters to spare. Worse, this dead zone implementation often prevents intentional swipes from ever registering at all, even when I rub a finger over the entire width of the trackpad. My brain's very first thought every single time I touch its primary interface is "oh shit, the computer isn't working", and this experience is repeated hundreds of times per hour
- The trackpad's height is incredible short, and that makes for very limited space for two-finger scrolling gestures. This means it was even more important for Microsoft to nail the acceleration curve to ensure a pleasant scrolling experience. Sadly, swipe-scrolling on the Type Cover's trackpad is far too slow and it doesn't accelerate nearly quickly enough to work through a document quickly. Just scrolling from this point of the article back to the top of the page required me to lift my fingers 14 times on my Surface trackpad. For comparison, it only took a single swipe on my MacBook Pro
- iOS and macOS are really good at locking the horizontal scroll of a window in place when it suspects that a user is scrolling up-and-down, and Windows attempts to do the same but it does a poor job of it. I experienced accidental side-to-side scroll (which in turn tended to interrupt any intentional vertical scroll) on roughly one out of every six swipes
- One surprising aspect of the trackpad is that it features, by default, the much-derided inverted "natural scrolling" first featured by Mac OS X Lion. I like this both because I'm already accustomed to it and because it would be pretty jarring to swipe in one direction on the touchscreen and in the opposite direction on the trackpad
- Another aspect I miss from the Force Trackpad is its ability to offer the same satisfying click along the top as the bottom; alas, the type cover's trackpad implements an older "diving board" click mechanism which makes it easier to click from the bottom than the top
- One of my favorite features of Mac OS X Leopard was the ability to scroll inactive windows in the background without first bringing them into focus. Windows, of course, also allows this, but I found on numerous occasions that scroll events on inactive windows weren't registering as reliably as active ones
- Speaking of scrolling, at one point, my Surface's touch screen stopped responding to all touch input whatsoever. I spent twenty minutes searching for a solution (figuring that I just disabled the touch screen through a configuration setting) before giving up and restarting the computer. To my surprise, this restart triggered an unskippable Windows Update and which took over 8 minutes to install. The restart did, however unsatisfyingly, fix the touchscreen failure
- I noticed that with a dozen or so tabs open, the 4GB/128GB i5 Surface started to really slow down in its ability to respond to my keystrokes, and I was able to detect very noticeable input lag as I typed. This sort of thing is simply unacceptable with 2016 hardware, especially because Windows 2000 handled keyboard input under heavy load on a Pentium III much more ably than this
- There is no way to type emoji with the hardware keyboard, whereas Apple ships a fantastic emoji picker in macOS (it can be invoked by cmd-ctrl-space)
- There is no apparent way to type non-ASCII characters without a numpad, which the Surface obviously lacks. I asked about this and a bunch of folks told me I could type things like an ® with the "shortcut" of Alt-0174, until they realized I didn't have a numpad, in which case they told me to use the "Character Map" app, which looks like it hasn't been improved since I first used it in Windows 95. Many of these common glyphs and diacritics have easy shortcuts in macOS, meanwhile (alt-R for ®, for instance)
- Most surprisngly, the function ("Fn") key toggles state in a manner similar to a Caps lock key. It even has a little LED light to indicate state. I suppose this is a feature built for people who make ample use of the F1-F12 keys, but it's frankly confusing for anyone who needs the Fn key primarily for the keyboard shortcuts which require you to simultaneously depress it
Overall, the experience of typing and scrolling in Windows is every bit as awful as I remember it. There's simply no excuse for input lag on keystrokes or scrolling that feels so unnatural. These are the most fundamental user interactions in the entire operating system, performed by users thousands of times per day. They warrant a level of care and attention that Microsoft has repeatedly failed to give. This was excusable when Microsoft could blame the hardware vendor, but the buck stops with them now that they own the product from top-to-bottom.
I struggle to imagine how anyone can find this experience to be acceptable, but understand that everyone's threshold for perceiving the "natural-ness" of a UI control varies greatly. (For comparison, some gamers can easily detect when games fail to render 60 frames per second, whereas I can't tell a bad framerate from a good one.)
All I can say is that if I ran Microsoft, I would stop development on every feature of every application until my platform could ensure that typing and scrolling were thoroughly delightful and convincing. They are currently neither. This is easily the defining failure of Microsoft's foray into hardware. You had one job.
A tablet AND a computer!
Microsoft's most aggressive sales pitch for the Surface — and maybe for Windows 10 as a whole — has been its ability to operate as both a desktop and touch-screen tablet, as well as everything in-between. Microsoft's marketing claimed that touchscreen desktops represent a "no compromise" design. Apple executives, meanwhile, have held firm that a device trying to be both things will wind up compromised.
I don't really have a dog in this fight; I don't feel like macOS is missing out for want of a touch screen, but at the same time it's hilarious to watch kids tap hopelessly on a Mac and conclude that it must be broken. Here's what I noticed about the "tablet-ey" aspects of the Surface, knowing I didn't really seek them out and don't care much when they fall over:
- When I disconnected the Type Cover, Windows asked if I wanted to enable tablet mode. It delights me every time I see this and I can't explain why. I personally prefer the tablet mode, even when using the device as a laptop, if only because on a small screen I find that I'd usually rather give my current app full-screen focus
- In tablet mode, a swipe from the left side of the screen will bring up an alt-tab like window switcher. This is quick and useful, but takes some getting used to if you're coming from iOS or Android and expecting left-edge-swipes to serve as a "back" gesture for navigating the UI
- A swipe from the right side of the screen will show the generically-named "Action Center", which serves as a combination of the iOS/macOS notification center and the iOS control center. Action Center generally serves its purpose, but for some reason in tablet mode, it's really hard for me to dismiss items with any accuracy. An "X" is not displayed next to a notification until I touch it, but when I move my finger to tap it, the X often disappears and I instead activate the notification
- On three occasions I've woken the Surface from sleep and the screen has stopped registering touch input until I restart the device. The fact that Microsoft can't get such a basic thing nailed down by their fourth at-bat gives me serious pause
- I tried to find a file while I was in tablet mode, and I couldn't figure out how to launch File Explorer by any means other than typing in a search for the word "File". File Explorer and the Desktop are mostly hidden from you when in tablet mode. It's one thing that iOS doesn't expose a hierarchical file system to the user, and it's worth debating the merits of that decision, but it's quite another for Windows to pretend that the user need not worry about files and folders when sitting in a recliner. Like it or hate it, files remain the primary abstraction for organizing a user's data in Windows, and changing from a trackpad to a finger doesn't fundamentally alter that fact. This is the very definition of a compromised design
- While I was setting up Windows Mail, I noticed a setting that indicated you could swipe to archive e-mail (similar to Mail.app for iOS or macOS). I tried this a dozen times on the trackpad before realizing the swipe gesture only works on the touchscreen. The impedance mismatch of gestures that work on only one of the touchscreen or trackpad is pretty discouraging. Ideally, the trackpad should be able to register any gesture as the touchscreen on the presumption that the cursor's current location would stand-in for a finger's location on the touch screen
- As one might expect, a lot of the tap targets — particularly links in web sites — are way too small for even my relatively-dainty-for-a-man fingertips. I think the root cause here is that almost all web sites render as "desktop" pages, even though my significantly larger iPad Pro device would render the same pages with an easier-to-tap mobile layout
- On one occasion, the Calendar app completely froze and became unresponsive until I plugged in the Type Cover and disabled tablet mode. The fact that such a nonsensical solution fixed my problem is training me to try foolish things to workaround issues I encounter, which is a hallmark reason I left Windows years ago
- The software keyboard is irredeemably bad. For some reason, mine will arbitrarily capitalize characters as I'm typing. This is a sentence that I typed with the software keyboard, careful to note that my finger hit the correct physical location of each key icon: "Its NicE that the pdnConnectS magnEtiCaLly tonthE dise of tJe caSe" (translation: "It's nice that the pen connects magnetically to the side of the case".) This isn't a one-off example. Every sentence I typed with the software keyboard looks like this
- Animations and transitions are few and far between. Collectively, the operating system fails to develop a clear sense of place when in everything-is-full-screen tablet mode, which is obviously more necessary than in desktop mode where the user's ability to organize windows establishes a sense of place
The Surface is easily the worst tablet I've ever used, but up until now I've only really used iPads. I don't think I'd ever go out of my way to use it without the keyboard unless I was reading a long document and it was literally the only device I had on hand. Rather than delighting me by feeling tangible and physical, as the iPad has always excelled at, the Surface-as-tablet feels finicky and fussy. I felt like I was constantly fighting with it: struggling to read small text, failing to hit small tap targets, accidentally tapping icons that would change the entire screen's focus.
The Surface Pen
I'm a big fan of the Apple Pencil. It's accurate, has no perceptible input lag, recognizes strokes at extreme angles, and is a nice way to navigate the iPad from a distance. As a result, I was eager to compare the Surface Pen, given how prominently it features in Microsoft's marketing:
- If you double-click the Pen's "eraser", it'll save a screenshot to OneDrive. This is pretty neat, especially because I take a lot of screenshots. Unfortunately, when I opened OneDrive two days later, all my screenshots were gone. (That's why this post is one huge wall of text; I didn't feel like going in and recreating dozens of screenshots)
- The tip of the Pen does not depress, but I was convinced that it did, because in order to trigger a tap event with the pen it needs to be nearly perpendicular to the screen. Scrolling and selecting text works reliably up to a 45-degree angle (compared to near 90-degree with the Apple Pencil), but for some reason a direct tap won't register a click event unless I press it very intentionally and straight on. This has made the Pen much less enjoyable for me to use to navigate the system
- The Pen seems to be designed with two-handed use in mind. I can scroll text with my finger but doing the same with the pen triggers text selection instead. This would probably work really well if I spent a lot of time marking up documents, but for basic navigation I'd much rather the Pen would just scroll so that I could give my fingers a rest
- The Surface ships with a handwriting keyboard. The first time I used it, it failed to detect any letters I wrote and I thought it was probably just Newton-tier junk. That was, of course, until my next system restart seemed to fix it. (Aside: I'm disappointed by how often a restart resolves my problems.) Once fixed, and though my handwriting is pretty awful, the handwriting detection of the Pen keyboard was pretty solid overall
- One issue with the handwriting keyboard is that the autocomplete suggestions start at the far left of the screen and work their way to the right, in decreasing order of confidence. That means that the user is incentivized to write with the pen along the awkward left edge of the device rather than in comfortable center. I found myself dropping the Surface when handwriting in earnest as my hand would slip as I put all my weight on the far left side of the tablet in order tap the best autocomplete matches
- The full-width design of the Pen keyboard suggests to the user they can write in complete left-to-right sentences, but if a single word is interpreted by autocomplete incorrectly, a single tap of backspace will delete the entire sentence. There is almost no way this is the intended way for the Pen keyboard to be used, but I bet the full-width keyboard design looked great in storyboards and prototypes
- One gesture the Pen offers is to "press and hold the eraser to activate Cortana" (Microsoft's voice-enabled personal assistant). This is a really cool feature, but for the fact that holding the eraser button is the same gesture one makes to pair the Pen to a Surface device. The first time I tried this gesture, Cortana failed to appear for whatever reason. Ignorantly, I continued to hold down the eraser, but eventually the Pen disconnected from the Surface. It took me over ten minutes to figure out that the Pen was disconnected (no clicks worked, but basic tapping still did). Ultimately, I had to open the Bluetooth control panel and again throw the Pen into pairing mode to reconnect it. It was a miserable experience
In sum, the Pen is fine, I guess. If I want to draw a thing and want to go out of my way to not use my iPad Pro, I'd use it. But I won't carry it around with the Surface with the intention of navigating about the system like I do with the Apple Pencil. So far, 90% of my use for the Pen has been to double-tap the eraser to snag a screenshot into OneNote, and even that is only because I don't know the shortcut to accomplish the same thing with the keyboard.
General User Experience
There are a few other UI and UX observations I jotted down but aren't easily categorized elsewhere, so I'll unceremoniously foist them upon you here:
- I hear Windows users express a lot of antipathy towards Microsoft's handling of "HiDPI" (e.g. retina) displays, and I'm not sure if that's where the blame lies for this, but in general I found a lot of text throughout the operating system and its stock applications to be almost illegibly small. I did find one control panel that allowed me to increase the font size system-wide, but it didn't appear to affect very much. I have pretty good vision, but my eyes strain easily, and I feel them tire within 30 minutes of using the Surface, which is a problem I haven't had on Apple devices for years (devices on which I also crank up the system-wide font size)
- I feel overwhelmed and claustrophobic when I'm in the desktop. I think a lot of this is just that I'm simply not used to it, but for me, Windows lacks whatever it is that makes a design feel "inviting" to be played with as opposed to "vaguely alienating" and confusing
- The Windows-D keyboard shortcut will hide every window and display the desktop. In macOS, I set up a hot corner to accomplish the same thing, and I tend to use it frequently. In Windows, though, when I tap Windows-D a second time it fails to restore focus exactly as it was previously. Instead, it seems to just barf up all of your windows at random depths. It's not uncommon for me to hit Windows-D, look at the desktop, hit Windows-D again, and find that the app I'd been using isn't even visible with the clutter of other windows that just got spewed on top. Did someone design this intentionally?
- A shortcut I use in macOS Finder all the time is "quick look", which is invoked by pressing the space bar and is able to provide a quick preview of countless types of files. Windows File Explorer, by contrast, only offers basic thumbnails of images and—it seems—not a whole lot more. Double-clicking an image that I want to preview prompts Windows to permanently add it to my Photos library, which is almost never what I want. I find myself desperately wanting a quick-look equivalent in Windows, or at the very least a built-in equivalent to Preview
- A very minor thing, but it's humorous to me that the primary means of launching apps, Windows Search, is invoked by the shortcut Windows-Q, which happens to be the same shortcut macOS offers for quitting the current app. The tie goes to Apple here, if only because the letter "Q" features prominently in the word "quit" and is nowhere to be found in the word "search"
- Windows 10 finally offers a sensible file path for a user's home directory (e.g.
C:\Users\justin
) but doesn't actually expose this home directory anywhere in File Explorer. I had to type it out and drag it to the sidebar to make it easily accessible (macOS Finder hides the user's home directory behind a setting, which is also frustrating) - Why does Windows still use drive letters like
C:
instead of human-readable labels? - The CPU fan turns on without warning and when the system isn't under obvious load. I understand that any sufficiently fast Intel x86 CPU requires active cooling, but it seems like this should at least afford me a UI that's as responsive as the passively-cooled iPad Pro, and it doesn't
- A lot of apps send frequent notification banners without express permission and I can't figure out how to disable them reliably
- In macOS, apps generally allow you to resize content with
cmd-+
and-
, or if you're in a productivity app with adjustable font sizes,cmd-shift->
and<
. I've found myself hunting for an analogous keyboard shortcut that I can use throughout most Windows apps, and so far have only found MS Edge (as browsers typically ship with a content zoom). Frustrated, I've resigned myself to needing to frequently lean in to read the screen. Office is particularly egregious in this regard, sporting the same set of discrete zoom settings as it did in the late-90s - Windows Update is slow and has failed as often as it's succeeded so far. This morning I watched it run from 1% complete, to 27% complete, to telling me it had failed, to restarting, to 1% complete, to 27%, to restarting again, to finally booting to the desktop. What about the design of Windows causes updates to fail so frequently? More broadly, why do so many updates require a stop-the-world-now strategy of forcing the user to restart the machine? By contrast, macOS only releases four or five software updates that require a system-wide restart per year
- Windows' default behavior with compressed files seems as half-cocked today as it did when WinZip was still a must-install application. Double-clicking a zip file will open the compressed folder in a pseudo-window from which executables cannot be launched. In macOS, opening a zip file decompresses it to a directory of the same name alongside the archive. The latter is more roundabout, but spares the user from ever having to conceive of being inside a "fake" directory inside which nothing works
tl;dr Windows is still Windows.
Cortana
I haven't used Cortana much yet, but the praise I've heard .NET developers heap upon it seems overblown:
- Clicking the Cortana button does not engage the microphone, because it's also a text input. In macOS, Siri and Spotlight handle voice and text input, respectively (which, at times, is separately frustrating)
- If I click the Cortana button and then the microphone icon and then immediately start speaking, Cortana will always miss the first half-second of whatever it is I said, bungling the entire query and forcing me to repeat it. It's 2016 and I'm still waiting for Windows to be ready to receive my input before I give it
- I asked Cortana "how's the weather today" and it returned links to four completely irrelevant YouTube videos
- Cortana can't seem to toggle device settings like Siri often can. Asking it to exit tablet mode, for example, resulted in a verbatim Bing search
Voice-based personal assistants are still pretty awful, all-around, and Cortana is no exception.
Microsoft Edge
The new Edge browser has been a highlight of this experience. It's lean and mean, just like Safari on macOS. I definitely prefer it to Chrome, just as I do Safari on the Mac. Some notes:
- Edge is minimalist, renders pages quickly, and features UI controls whose input latency is no worse than the rest of operating system. This compares very favorably to Internet Explorer, which Edge replaces, and represents 90% of what I look for in a browser
- Hitting Ctrl-T to open a new tab is a jarring experience, as the keyboard's focus is placed on a search box in the center of the window as opposed to a populating a clear address bar at the top. This is actually a more honest UI, because it telegraphs to the user that every one of their keystrokes is being uploaded to Bing, but the incongruity with the position of the location bar of every other tab is aesthetically awkward
- One of my favorite features of Safari is Reader, which presents the current page in an advertisement-and-clutter-free view that has reliably decent typography. Edge has a similar "Reading view", which is more than can be said of Google Chrome (which would never introduce such a feature, since Google makes money off the display ads that such a feature is designed to circumvent). However, the implementation of Edge's reader lags far behind Safari in typography, responsiveness, and accuracy. In Safari, the reader button and shortcut become enabled as soon as the DOM is initially loaded, but I found that Edge's Reading View icon would remain grayed out until every resource and advertisement on the page finished loading, which undercut the feature's purpose significantly. Moreover, Edge's reading mode would often pick up superfluous bits of other articles from invisible DOM elements. This happened often enough that I found myself confused while reading, forcing me to exit reading view to visually inspect the article (if you're curious, see this Verge article for an example)
- Whenever I leave a tab open for more than a few minutes, Edge would get confused about the height of any scrollable and editable content (think: a notes editor at iCloud.com or a spreadsheet on Google docs) and refuse to allow me to scroll the full height of the content with the trackpad or touchscreen. Instead, I found myself forced to scroll with arrow keys or the Pen's text selection unless I reloaded the page
- Finding your downloads is more tricky than it ought to be. In macOS, there's a default "stack" along the dock that prominently displays your most-recent downloads. Edge's download sidebar has a link to show the downloads directory, but for some reason, clicking it always opened the directory behind all my current windows, requiring that I go hunt for it
- Edge supports resumable downloads, but on a couple occasions when a download was interrupted and I clicked "resume", I'd get a message saying "resume failed. Retry?" So then I'd click "retry" and I'd get a message saying the file "couldn't be downloaded". So then I'd go find the exact same link I initially clicked, click it, and it would start downloading. This experience made me recall fond memories of the [A]bort [R]etry [F]ail prompt, which featured prominently in my DOS-based youth
- Edge struggles with editable content that butts up against the edges of the window. For instance, if I hit return at the bottom of a window while editing this Medium post, macOS Safari will add some additional padding to ensure the text insertion point is within view, whereas on Edge the text insertion point would often be clipped outside my view, and I'd have to hit enter and then scroll down to see what I was typing. Whether this is a browser compatibility failure or Edge's fault, I don't know (or much care), but it seems to happen whenever I'm in a web app that expects a lot of text input
Overall, Edge seems like a pretty competent browser. I was skeptical at first, because Edge was a fork (as opposed to a rewrite) of the same engines that powered Internet Explorer, but I was generally satisfied with its speed and accuracy of rendering and most of its quirks are forgiveable disappointments.
Windows Mail
The first stock app that I configured after exiting the Surface's initial setup wizard was the built-in Mail app. I configured my two Google mail accounts and sent a few e-mails:
- After setting up my personal Gmail account, I clicked "Add Account" again to add my work account, but the button stopped working. Try as I might, I couldn't get the button to work again until I restarted the app
- After restarting the app and adding my work account, I noticed that Windows Mail doesn't feature a universal inbox, and every setting is made on a per-account basis
- The first e-mail I sent with Mail featured a gaudy "Sent from Windows Mail" signature, so I hopped into the preferences to disable it. It was gross when iOS included this as a default and it's gross when Apple's competitors do, too. Worse, the second e-mail I sent also had this signature on it, because I didn't realize that the setting needed to be applied to each mail account
- Mail doesn't seem to download HTML messages or images in e-mail by default, instead requiring the user to opt-in with a click. Honestly, this is a refreshing default, given how every e-mail marketer uses magic pixels to track who opens each e-mail and when
Aside from the fact Mail doesn't have a universal inbox and that its swipe gestures don't apply to the trackpad, it seems like a serviceably good native Mail application. I won't cover Calendar in depth here, but it was at least sharp enough to carry over my Google accounts and seemed to work well enough at first blush. I suspect I'd have a longer list for each if I tried to live in them for a week, as—and I admit this with a deep and profound sadness—I rely heavily on e-mail and calendar apps every day.
Third-party Apps
Let's talk a little about getting third-party software installed. It's funny, because Windows was so dominant when I last used it personally in 2003 that I struggled to switch to the Mac for want of alternatives to my favorite Windows apps. Now, through a combination of unfamiliarity and Microsoft's own failure to build a successful mobile platform, the tables are turned and I'm struggling to fill out the desktop software I'd like to stay productive in Windows.
- In the good ol' days, every single Windows app shipped with a mysterious install wizard. Telling what those install wizards were doing to the underlying file system or registry was an often impossible task, however. Many apps still install this way, and the Windows User Account Control remains as useless for informing me of what the installer is doing today as it was when it was unveiled in 2006
- Because of the complication of installers, "portable" or "standalone" executables emerged as a popular alternative. These standalone apps are often served up in a compresed file and can be extracted and run from anywhere on the filesystem. This creates its own problems, though, because unlike macOS, where such files are expected to be dragged to the
/Applications
directory and automatically registered with and indexed by the operating system, Windows seems blissfully unaware of any portable apps, even if they're explicitly dragged into theC:\Program Files
orC:\Program Files (x86)
directories. When I manually installed Cmder, nothing I did could get Windows Search to find it, so there was constant friction whenever I wanted to launch it - Speaking of, why are there still two directories for storing applications on Windows, why are they still called "Program Files", and why is there still no rhyme or reason to how apps are organized on disk?
- There is, like the Mac App Store, a Windows Store app. Sadly, it seems like even more of a ghost town than the Mac App Store, and I didn't find much use for it
- Many tasks that developer-focused applications need to accomplish will require escalated privileges from the operating system, but few (if any) of these apps request privileged escalation on a narrow, task-by-task basis. (macOS makes this easy with API-triggerable password dialogs or Unix's
sudo
command.) Instead, in Windows, I'll often perform a command in terminal, only to see it fail, which then requires me to remember, "oh, right, I should have launched the terminal in Administrator mode," forcing me to start from the beginning. This sort of foresight shouldn't be the user's responsibility, and leads to people giving apps escalated privileges more often than is necessary, which in turn exposes them to added security risks - The 1Password Windows app feels like a third-class citizen until you find out that there's a beta of 1Password 6 which upgrades you to the second-class cabin. Sadly, they still don't have a plugin for Edge, but I'm not going to feign surprise that an Apple-first software vendor doesn't have fantastic Windows apps. That doesn't change the fact that 1Password's awkwardness in Windows increases the cost to switching to the platform, as I store over 2300 logins and encrypted notes in 1Password
- There's an official Twitter client for Windows 10 and it's even worse than all the other official clients. It crashed constantly and when it wasn't crashing, I had no idea what it was doing, so users of other official Twitter clients should feel right at home. I searched high and low for a third-party client half as good as Tweetbot and gave up. Bright side: maybe no Twitter means I'll be more productive in Windows
- The sole silver-lining of my experience with third-party apps on Windows was when I started using Chocolatey, which is to Nuget as Cask is to Homebrew on macOS. I stopped using Cask to install GUI apps on my Mac because it didn't have a story for updating apps (and sometimes would complicate existing ones), but I was so starved for a reliable way of installing apps at all on Windows, that when Chocolatey proved able, I dropped everything to start using it. The first apps I installed each successfully registered with Windows Search: 7zip, VS Code, Cmder, and Steam. Kudos to whoever works on Chocolatey and Nuget—Microsoft should be funding it themselves
I've only started scratching the surface on third-party apps that I'll need for getting my development workflow set up, but I'll save that post for another day.
Initial conclusions
I walked into this experiment with a strong and clear bias. I am currently, happily entrenched in Apple's ecosystem and my recollection of being a Windows user is generally negative. Nothing, so far, nothing has challenged that bias. It's possible that—and this might be especially true for folks who've never strayed from the Microsoft ecosystem—things have been improving dramatically in Windows-land lately, and so the relativistic impression for longtime Windows users may well be that things are great, but I sadly can't confirm that report.
To my (literally, due to strain) tired eyes, it feels like Microsoft is just barely treading water to stay current with the web, mobile, and touch revolutions that they successively missed the boat on. I don't get the sense that Windows or the Surface represents an understanding of why its platforms faltered in the past nor does it seem to chart a bold direction towards a clear future. The best thing Windows 10 has going for it is that Microsoft has concluded it's dominance is not vital to their financial success. If there is a creed among the Windows team, one can only assume it is, "be all things to all people." A lofty goal, but one which also dooms it to mediocrity. Windows would only be my choice for a task barring a complete lack of alternatives.
I'm going to stick out the rest of this month-long experiment, however, because once I've gotten over the hump of initial configuration and culture-shock, I should be able to hone in on identifying focused development feedback loops. But I'm not quite there yet. I need a few days for Windows to sink in first.
The worst part of this experiment is that I've noticed that I've been short-tempered with those around me—an angry hangover that lasts hours after I've stopped using Windows. It is as if the friction I encounter in the Windows UI accretes in me literal adrenaline, which in turn triggers me to lash out at my loved ones.
Or perhaps it's just the holiday spirit. Hard to tell.