The 2018 MacBook Pro Sucks

I’ve been an Apple fan for a long time. My first laptop was a Powerbook 5300cs, purchased secondhand at the Auburn University Surplus Auction. I’ve been using Apple equipment exclusively since 2007. My desktops and laptops are all Apple, I use AppleTVs exclusively for streaming, I carry iPhones and iPads. If it has a shiny Apple logo on it, I’ve probably bought one. So it pains me to write this post, but…

The 2018 MacBook Pro sucks. There. I said it.

To be sure, it is an incredibly fast machine. Internally, it is fantastic. And it has some nice new features. In particular the touch to unlock is a very welcome new feature. And I love the USB-C charging because I can pick either side of the laptop to charge. That is super, super convenient. And the ability to use a USB-C dock means I now only plug in one cable when I get to work, one step closer to my holy grail of no cables.

But from a usability and egronomic standpoint, it is terrible for everyday use. And this is why:

The Touchbar

Heralded by probably 30 minutes worth of exposition at the launch event, the Touchbar was supposed to be a killer new feature enabling programmers to take further control of user interaction. They killed the entire top row of keys and replaced them with a small touchable display that can change depending on the app.

If you have been using a computer for longer than a few hours, you may already see the problem here. When you are using a computer, what is on the screen is the most important part. You do not look at the keyboard. You keep your eyes on the screen because you have the keys memorized.

But now the keys start changing on you, so you have to take your eyes off the screen, interrupting your workflow to pay attention to what has happened on your keyboard. It doesn’t matter if what the keys changed to be may be “more helpful.” The interruption has already happened and you have lost any value you might have gotten from having relevant keys. Because you cannot predict what the keys will be because they are always changing, you get no benefit from it, and you end up having to constantly look at it to figure out what you need.

Moreover, they removed really useful keys (especially for developers) to make room for this. The escape key? You know how often you use that? If you’re a vi user, the correct answer is “all the time.” And keys like the volume controls and screen brightness I used so often. What was one push to silence the volume is at least two presses with the touchbar. Same with screen brightness. And I hit the damn Siri button so many times it’s driving me crazy.

If the really wanted to include a touchbar, why not put it above the top row of keys? Why take away a whole row of very useful keys?

The Keyboard

Want to really make a computing professional angry? Mess with the keyboard. It is something we touch for hours and hours every day, thousands of times a day. And little things about it will absolutely drive us crazy.

Besides the aformentioned removal of keys that are very useful for programmers, there are other issues as well. The keys have very little travel, resulting in a feeling of just barely above typing on glass. There is very little tactile feedback and what is there feels … wrong. Cheap. Un-Apple.

Because the keys are so low on the keyboard, there is very little tactile difference between them when typing and the keys feel closer together than on a standard keyboard. As a result I end up making far, far more typos on this keyboard than I ever have since I was kid. Because the key travel is so little, I’m constantly pressing longer than I should, resulting in woords liike thiis, or hitting the wrong key because it was too close to the one I wanted to hit.

If they did this to shave a few millimeters off the height of the laptop, I can’t help but wonder if they don’t know their customers. No developer I have ever met would trade a few millimeters of height for a crappy keyboard. We need powerful, usable machines.

And then there’s just the WTF that is the arrow keys. Why are the left and right keys full height, but the up and down arrows half height? What happened to the inverse T that has been around on keyboards since forever? Just now I was pressing back when I really wanted up because the arrow keys are different sizes! Developers writing code use those keys lots.

These may seem like petty, tiny gripes. And the are. But I touch these keys thousands of times a day, every day. Little things become big annoyances with time. Thankfully, I have a traditional full-sized keyboard with normal keys at work. Not interacting with the keyboard minimizes my annoyance with it.

The Trackpad

Why is the trackpad so big?

I’m glad we don’t have the dinky little tiny trackpads of yesterday, but the positively enormous trackpad is just overkill. So many times I hit the trackpad when I’m trying to hit the space bar.

Ther is also not enough room to rest my hands on the machine when typing so I’m constantly triggering the trackpad. Between the touchbar and the trackpad, I have become very aware of how I use a laptop and where I put my hands, because I am always accidentally touching something. I should not have to be aware of the absolute position of my hands over a machine.

(Just typing the below sentence I accidentally hit the touchbar causing it to do … something and misspelled 5 words.)

And if I rest the laptop on … my … lap, the bottom of the trackpad is so close to the bottom of the case that even my clothing brushes up against the trackpad. Making much of its size useless.

Conclusion

The egronomics of this machine are such an absolute mess that I cannot believe that Apple made it at all, let alone has allowed it to drag on for three years now. This is like something that would come out of a knockoff shop, not the most valuable company in technology with a history of producing great hardware.

I tried. I really did. I tried to give it a chance, gave myself a couple months to try to get used to it. Maybe in a year I will think differently, but for now I am tolerating all of these myriad of issues and mitigating them by using my external keyboard and trackpad as much as possible. But sometimes I have no choice - like now, when I’m traveling - and just have to tolerate it.

As a developer, my two requirements are:

  1. Fast powerful usable machine that is reasonably portable.

  2. Good battery life.

Notice that height and weight are not features on this. A few extra ounces or a few extra millimeters are not a worthwile tradeoff to compromise on the first two.

Apple: please step back from the brink and put the damn top of the laptop back the way it was. The 2015 MacBook Pro was perfect. Everything was sized correctly and laid out perfectly. It was the perfect developer laptop. Go back to that and iterate on it. If you want to include the touchbar, fine, put it above the top row of keys.

So disappointed in Apple. My next laptop might be a PC.

Did something I wrote help you out?

That's great! I don't earn any money from this site - I run no ads, sell no products and participate in no affiliate programs. I do this solely because it's fun; I enjoy writing and sharing what I learn.

All the same, if you found this article helpful and want to show your appreciation, here's my Amazon.com wishlist.

Read More

Xcode 4

So today, out of nowhere, Xcode 4 finally landed as an official release. After seemingly forever in beta, and me quipping more than once about it’s similarity to Duke Nukem Forever, Apple finally pulled the trigger and released it. But something changed. Xcode now has a price. And that has left me, as both a Mac user and a Mac developer, with a lot of questions. It’s either $4.99 if you’re not a registered, paid Apple developer, or free if you are a registered, paid Apple developer (with all its $99 per year price tag glory). Supposedly there’s some crazy accounting reason that they have to charge for it. This, of course, leaves open the possibility that Xcode will soon be free again once OS X 10.7 arrives. But, it also leaves open the possibility that Xcode will no longer be distributed with OS X and will always have a price tag. It may not even stay $4.99. It may be $49.99 or $499.99. There are additional questions, too. Does this mean that Apple is still distributing Xcode as a bundle with GNU GCC? Because there are things (such as MacPorts) that rely on the underlying foundation provided by the developer bundle that don’t actually use Xcode. Before, those were completely free. Now, they cost $4.99 unless they have split the underlying compiler from the IDE. And if they are still distributing it with GCC, that leads to all kinds of crazy interesting licensing questions. But I think the worst part is that there is now a barrier to entry, however low, to being a developer on a platform that is already a minority in market share. I can’t understand how Apple potentially believes that it is good and right to trade short term profits for long term growth in the number of potential developers. For the future of the Mac platform, I sure hope this isn’t their line of reasoning. So, let me tell you a little story. My first dabbling in programming came courtesy of QuickBASIC back in the MS-DOS and Windows 3.1 days. This was the late 80s or early 90s, so I would have been 10 or 11 at the time. I stumbled across the Qbasic environment included with MS-DOS by accident and found Nibbles. And, after playing it, I discovered that I could change things by making changes to the strange text presented on the screen. I could change colors and speeds. But it would be a couple of years before I really understood what I was doing. When Windows 95 came out (and along with it, Visual Basic 4), I talked my parents into getting me a copy. I don’t remember how much it cost but it was probably a lot because it was one of the few Christmas presents I got that year. But boy did I run with it. I’ve periodically felt guilty over that expense because I didn’t actually make anything really useful with it, but it was instrumental in furthering my education. Now I could do things on my computer far beyond what poor ol’ Qbasic was capable of. So I wrote lots of silly little programs. I put together a “family newsletter” one year that was installed and ran as a piece of software. I was pretty proud of that. I even wrote some software for my high school as part of a software development and AP Computer Science courses. Eventually, I would move on to other things. Other versions of Visual Basic, Java, C, a brief foray into LISP and Forth-based languages for programming MUDs, and eventually web programming. First in Perl, then in PHP. I even landed my first paying programming job while still in high school, writing applications for a local transit contractor. At first, these were Visual Basic applications. But by the time I left (August of 2000) everything was going to the web and so were we. But I can trace everything - my entire career, and my consuming passion for software engineering - back to Qbasic and Nibbles. A silly little game about a block snake, and a free development environment included with the operating system. Had I not stumbled on Qbasic and Nibbles, there’s a chance I would never have been a developer. This is not about $4.99. I spend more on coffee in a week than that. My worry is about that 11 year old kid out there somewhere who may never get the opportunity to stumble across Xcode or the sample applications in /Developer and realize the raw power they possess. This is an area where Apple, a company with billions in cash on hand, should be happy to show a loss. It would be to the benefit of their platform, both now and in the future. One of the great benefits of the Mac platform has been it’s low barriers of entry to developers. Sure, one could argue that the hardware is more expensive (and I could counter-argue that, for the quality of the equipment you are getting a bargain), but the development tools have always been freely available online and included with the machine. You could dabble in programming to your heart’s content. Sure, if you want to put something in the app store(s), you had to pay for admission, but there was nothing stopping you from getting all the way to that point, or even distributing your creations on your own. But this new trend of charging for the development tools - even if it is a paltry sum - sends, to me, a worrying signal about the course Apple intends to tread. They’ve now moved the gate from the last step to the first step. It’s a course that Microsoft, as above, once tread. Microsoft? They now give away a version of Visual Studio for free.

Disabling Text Zoom in Netbeans

A couple of days ago, I upgraded to the most recent version of Netbeans - 7.1.1. I had been running a 7.1-DEV nightly from back in 2011 and just hadn’t bothered to upgrade yet. The first thing I noticed is that this version of Netbeans introduced a “feature” that allows you to zoom in or out of text. This is accomplished by, on the Mac, holding down the Command key and scrolling on the trackpad. The problem with this is that it is very easy to trigger accidentally - to the point where I was doing it multiple times a day. Even more irritating, there was no indication as to what the zoom level was or easy way to revert to normal view. If you trigger it accidentally, you just have to kinda zoom back out until you find a setting somewhat similar to the rest of your tabs. Fortunately, someone on the nbusers mailing list mentioned how to solve this problem, so I want to post it here in case anyone else gets as lost and frustrated as I was. Open the preferences page. On the Mac, you would go Netbeans Menu -> Preferences. Go to Keymaps. Search for “zoom”. Remove the bindings for “Zoom Text In” and “Zoom Text Out.” Double click on the Shortcut and hit backspace twice.