The Problem with CarPlay

Today at the Geneva International Motor Show, Apple announced CarPlay, with is the new name for "iOS in the car". It looks great!

They are pitching it as "a Smarter, Safer & More Fun Way to Use iPhone in the Car", and I love the concept. We upgrade our phones every year or two, but our cars much less frequently than that. In-car entertainment systems are limited by the automotive industry’s product cycles, so they are basically already obsolete (in consumer terms) by the time the car hits the showroom. Enabling cars to piggy-back on the smart, GPS-navigating, voice-recognising, music-playing computers that we already carry in our pockets can only be a good thing.

If you take a look at a video of CarPlay in action, though, I see one huge issue.

Touchscreens in cars are a terrible idea. Old-school controls gave drivers haptic feedback: if you turn the dial one notch, you feel the click, and you get the next radio station, or one increment of temperature, or whatever it is. This is something drivers can do completely blind, without taking their eyes off the road.

It’s been at least a decade since cars could accommodate physical controls for all of their functions, so multi-function control systems like iDrive, Comand or MMI were introduced to help with the plethora of systems and settings that modern cars require. All of these systems allow users to navigate hierarchical menu trees to control in-car entertainment, navigation, and vehicle settings.

These systems are still better than touchscreens, though, because at least the driver’s hand rests on the one control, and that control still has tactile increments to it. The haptic feedback from those clicks is enough for seasoned users to be able to navigate the menu tree with only occasional glances at the screen - very important at highway speeds.

Touchscreens are terrible for non-visual feedback. Users have no idea, short of looking at the screen, whether their action achieved the result they wanted or not.

Apple’s suggestion of using Siri is not much of a fix. I like Siri and use the feature a lot in my car to dictate e-mails or messages, but it depends entirely on network access. Out of major cities - you know, where I take my car - network access is often insufficient to use Siri with any reliability, so drivers will almost certainly need to use the touchscreen as well.

I really hope that CarPlay also works with steering-wheel mounted controls, as those allow control with an absolute minimum of interruption. If we could have audio feedback that did not require network access, using the existing Accessibility text-to-speech functionality in iOS, that would be perfect.

Ban All Acronyms (BAA)

There's a tendency in the technology industry to speak in acronyms, generally three-letter acronyms or TLAs. Technology is not the only industry where this happens - I'm reading the FT right now, and it's saturated with EBITDA and FTSE, not to mention what the ECB is doing about the PIIGS - but because I work in tech I feel more confident talking about my own glass house.

At one level TLAs are no more than the logical end-state of jargon. Once you start repeating phrases instead of communicating, it's more efficient to condense those phrases to acronyms. It's also cool to be in the in crowd who knows what's going on.

The problem is that at some point you need to communicate what you're doing to the outside world, and if you've been talking about it in TLAs all along, they're going to slip into the conversation. Your audience will pick up on them and repeat them, and pretty soon the acronyms have taken on a life of their own and nobody even knows what they stand for any more.

Try an experiment: use the full names instead of the acronyms wherever possible. I mean, be sensible: people will look at you funny if you say Universal Serial Bus. But at least try to avoid adding to the stock of empty acronyms - the intellectual junk food of our industry.

And if the name is too long and unwieldy to use except as an acronym? Well, that's a big indication of something that needs fixing!

Protect the base

An interesting story in the news today is about Gmail adding an "unsubscribe" link to marketing e-mails. Of course this is not exactly a new feature, having first launched in 2009.

Some of the commentary about why Google is doing this seems to me a bit misguided. Someone from Slate on Monocle’s The Briefing (sorry, missed the name) characterised this move as Google trying to make Gmail more useful for users and therefore more sticky.

I think the actual reason Google is doing this is to reduce or even eliminate a channel marketers can use to connect with consumers without going through Google. Subscribing to e-mail updates is a direct connection between consumers and brands. Google would rather be the middleman in that transaction, selling AdWords to brands and collecting a toll on all the traffic.

What makes me fairly certain of this analysis is that Gmail’s unsubscribe feature relies on the sender including the list-unsubscribe header as per RFC 2369, so it won’t help with spam or with dodgy marketing e-mails in general, only with entirely legitimate and technically correct marketing communications.

I’m not on Team "Everything Google does is evil!", but that doesn’t stop me from taking a clear-eyed look at what they do.

Lie ^W Sit back

It seems someone has actually called for "revolt on reclining seats in planes". The battle over reclining seats has been going on a long time, but revolt seems a tad excessive...

I'd be happy if we could agree not to recline until meal service is done, but as long as we’re revolting:

Smoking in flight has been forbidden as long as I can remember. What if airlines were to repurpose the redundant no-smoking lights to indicate when it's okay to recline? This way people could also move their laptops out of the way, and so on. My iPad was nearly crushed when the person in front decided to recline suddenly and violently. Only the magnet on the Smart Cover releasing saved it from a cracked screen. I have also seen people ending up wearing their dinner or their drinks when the person in front reclined sharply.

Once I was even told to stop poking my knees into the back of the person in front. My suggestion that moving her seat forward would solve that problem nicely was met with a stony glare, but I literally had nowhere else to go.

If you’re this worked up over conditions in flight, though, may I suggest either ordering another drink, or springing for the upgrade? Premium Economy isn’t that much more expensive, and there is significantly more room, bigger screens, earlier service, and so on. The one downside is it’s often placed at the front of the Economy section, so it ends up being over the wings without much of a view out.

Know your audience

Is your core audience likely to react like this1 to whatever you’re planning?

Thanks, SXSW. Your attendee-hostility grows every year. It's like you're using Burning Man as your customer service model.

[…]

I guess it's time to update my scrape-sxsw.pl script to try and rip all the music from their site on my own.

If so, it’s probably a bad idea, and you shouldn’t do it.

My bill is in the mail.


  1. I’ve been there too. A few months ago I wrote a command that wrapped like twelve times in a standard Terminal window to unwrap some videos "protected" by Twistage. The only reason I didn’t share it here is that some particularly brain-dead paid video platforms also use the same mechanism, and I don’t want to help piracy. 

Enterprise IT on the shelf

Cross-posted to my work blog and to Linkedin


If there has been one overarching theme of the last few years in IT, it has been the changing relationship between enterprise IT departments and the users that they support.

Users have always wanted more IT faster, and this has always driven advances in the field. Minicomputers were the shadow IT of their day, democratising access to computing that had previously been locked up in mainframes. (By the way, did you know that the mainframe is fifty years young and still going strong?)

Departments would purchase their own minicomputers to avoid having to share time on the big corporate machines with others. This new breed of machine introduced application compatibility for the first time. In other words, it was no longer necessary to program for a specific machine. Higher-level languages also made that task of programming much easier.

Microcomputers and personal desktop computers were the next step in that evolution. At this stage it became feasible for people to have their own personal machine and run their own tasks in their own time, and for a while IT departments lost much of their control. The arrival of computer networks swung the balance the other way, until the widespread adoption of mobile devices started the swing back again.

Seen in this way, cloud computing is just the latest move in a long dance. The tempo is increasing, however, and it becomes more critical to make the right moves.

One make-or-break move is the very first public one, when a company decides to shift at least some of its workloads to the public cloud. It’s important to remember that Amazon was not designed to be traditional IT and trying to treat it that way is a route to failure.

IT-on-the-shelf.jpeg.jpg

To get an idea of the sort of problems we want to avoid, here’s an example from a completely different domain. If you have ever furnished a house or a flat, the odds are good that you have wandered around IKEA, feeling lost and disoriented, and possibly having a furious argument with your significant other as well.

Assuming the shopping trip didn’t end in mayhem and disaster - and personally I always count it as a success when I get out of IKEA without either of those - you may well have bought an Expedit shelving unit. The things are ubiquitous, together with their cousins, the Billy shelving units. I should know, I own both.

The bad news is, IKEA is discontinuing the Expedit and replacing it with a slightly different unit, the Kallax. This has infuriated customers who liked being able to replace or extend their existing furniture with additional bits.

What has this got to do with IT? What IKEA has done is break backwards compatibility in their products: you can no longer just get "more of the same", and unless you are furnishing an entire new home, you will probably have to deal with both the old and the new model at the same time.

Enterprise IT departments are facing the same problem with cloud computing. They want to take advantage of the fantastic capabilities of this new model, but they need to do it without breaking the things that are working for their users today. They don’t have the luxury that startups do of engineering their entire operation from the ground up for cloud. They have a history, and all sorts of things that are built on top of that history.

On the other hand, they can’t just treat a virtual server in the public cloud as being the same as the physical blade server humming away in their datacenter. For a start, much of the advantage of the public cloud is based around a fundamentally different operating model. It has been said that servers used to be pets, given individual names, pampered and hand-reared, while in the cloud we treat them like cattle, giving them numbers and putting them down as soon as it’s convenient.

The public cloud is great, but it works best for certain workloads. On the other hand, there are plenty of workloads that are still better off running on-premises, or even (gasp!) directly on physical hardware. The trick is knowing the difference, and managing your entire IT estate that way.

This is part and parcel of BMC’s New IT: make it easy for users to get what they need, when they need it. To find out more about what BMC can do to make your cloud initiative successful, please visit www.bmc.com/cloud.

Desperation

Name obscured to protect the guilty

Three e-mails in six minutes? You’re looking a bit desperate there, mate…

Plus I used your service yesterday afternoon, and I’ve installed both the Mac and iOS clients. You may want to take another look at how these things are targeted. Just saying.

Adventures in AppleScript

Here’s a handy little AppleScript to switch the Bluetooth audio output device on a Mac.



Why do this? Well, partly because I can and it’s fun, but partly because I run a headless Mac Mini, and I’d rather not have to VNC into it just for something this trivial. Since AppleScript can be run from the command line via `osascript`, this little script can easily be triggered from SSH.



The next step is to make an iPhone-optimised web control panel for this and a couple of other equally simple tasks.



     set theDevice to "HT-CT260"



 tell application "System Events" to tell process "SystemUIServer"

          tell (first menu bar item of menu bar 1 whose value of attribute "AXDescription" is "Bluetooth")

               click

               delay 0.2

               tell menu item theDevice of front menu

                    click

                    delay 0.2

                    try

                         click menu item "Connect" of menu theDevice

                         click menu item "Use as audio device" of menu theDevice

                    end try

               end tell

          end tell

     end tell



     tell application "Finder" to activate



It wasn’t obvious how to do this, and then I had to do it twice, because I did the development on Mavericks, only to realise that the Bluetooth Preferences pane is different between Mavericks and Mountain Lion… The method above works on both versions though, so it’s all good.



If you need to do this sort of thing from scratch, the Accessibility Inspector in Xcode is your friend. I obviously started out trying to browse menu items off the Finder menu bar by using `UI Elements` directly in the AppleScript Editor. The problem is that this only gives the Apple menu and the basic menus (File, Edit, View, Go, Window and Help), none of the widget menus over to the right. Because they belong to SystemUIServer. Of course.



If you need to use this actual script, you’ll want to set the value of `theDevice` to your own device rather than "HT-CT260". I didn’t make this script to take inputs, so there’s no downside for me in hardcoding the value. Apart from that, it should be ready to go.

Stop helping me!

How is it that these days the best power user tools are the ones where you can turn all the "helpful" features off?

What am I talking about? Go ahead. Open a Microsoft Word document. Place your cursor anywhere in the text. Try to select one character using only the keyboard.

You can’t. Word "helpfully" expands your selection to the entire word. Sure, you can turn this behaviour off: on a Mac, go to Word > Preferences > Edit and uncheck "When selecting, automatically select entire word".1

Sometimes the behaviour is more annoying, like Excel’s complete failure to handle dates, or some of the more obnoxious iOS autocorrect failures, such as insisting that when I typed "its" I must really have meant "it’s".

The uncanny valley between n00bs and gurus is where the wizards live

The reason these functions are there is to assist the "average" user: someone who is more than a Muggle, but less than a power user. These are the sorts of people who don’t know about shift-alt-arrow to select an entire word, and instead laboriously tap-tap-tap that arrow key until they have selected the word. They complain that "Word is hard to use", and eventually Word gets the default behaviour of selecting the entire word.

This of course drives actual power users up the wall, because if we had wanted to select an entire word, we would have used the command that actually does that. And if I wanted to futz around with regular expressions, I wouldn’t have opened Excel in the first place. And so on and so forth.

This is why I use my highly advanced graphical user interface to run… a command line. In fact, a Terminal window is one of the most frequent apps you’d find open in my session, right behind Safari and ahead of my mail clients.


Image by Nicola Perantoni via Unsplash


  1. On Windows, the instructions change as follows: take your computer, throw it out the nearest window, then go and buy a Mac. 

The circle is complete

Over at the ever-fascinating Stratechery, Ben Thompson dissects [Microsoft’s Mobile Muddle](http://stratechery.com/2014/microsofts-mobile-muddle/). I especially like one of his recommendations (emphasis mine):

Embrace services. Services seek to touch every device, and, as I’ve written previously, are much more suited to Microsoft’s culture. Moreover, Microsoft has many of the pieces already in place, along with their primary remaining trump card: Office. Microsoft should use this trump card with Apple specifically: offer Office on iPad exclusively for a specified time in exchange for Bing as the default search, fuller iCloud integration with Azure, and/or built-in Xcode support for Azure cloud services. Apple has most of the best customers – the ones who will pay for services; Microsoft needs those customers desperately, and Nadella should go hat in hand to Cupertino.

The irony here is huge for those of us who remember 1997, and Steve Job’s MacWorld speech:



> We have to let go of this notion that for Apple to win Microsoft has to lose. We have to embrace a notion that for Apple to win Apple has to do a really good job, and if others are going to help us, that’s great, cause we need all the help we can get…The era of setting this up as a competition between Apple and Microsoft is over as far as I’m concerned. This is about getting healthy, and this is about Apple being able to make incredibly great contributions to the industry, to get healthy and prosper again.



The situation is almost perfectly symmetrical. Without Apple, Microsoft is… well, not dead; there’s a lot of life left in a rump-Microsoft focused on enterprise sales alone. On the other hand, for Microsoft to survive in its current incarnation as the Everything Company, it needs to do something extreme like this.



I think this move would also make sense for Apple, as a way of further getting out from under Google’s thumb without having to build all the services for themselves. I mean, I actually found Apple Maps to be [an improvement](http://findthethread.postach.io/platform-wars-are-here-again), but there have been too many issues with iCloud as well for Apple to be seen as properly credible in online services.



If Microsoft really were to follow all of Ben Thompson’s advice and also fork Android using its own services, we could end up with a duopoly of strong cloud-based mobile back-ends, with Apple providing the balance between them. Sounds like a pretty good future to me...