Platform as a Service

It was not long ago that MacOS and iOS were far and away the best platforms to both develop on and use. Pleasurable might be the word. They had the JustWork(TM) feature, which is the killer app.

Development had its pain. It’s arguable that a degree in particle physics would help you comprehend Objective C but Swift looks nice enough. As others have noted, the general build quality of MacOS and iOS overall has dropped substantially. Maybe we should call it the “fit and finish”. I type this on a Mac that is no longer responding to hot corners or clicking on the dock. Literally, I click on an app in the dock and it doesn’t bring it to the front. I move the cursor to a hot corner to start the screensaver or show all windows, and it does nothing.

I have similar anecdotes for my iPhone. How did we get to the point where application context switching doesn’t work? It’s (almost) literally the most important thing you need to do. It’s the whole point we have Windows, Icons, Mouse and the Pointer, what we used to call WIMP. And it doesn’t work on my mac. My Mac was $3,000 or so when it was new, and I can’t click on applications.

Perhaps a reboot would fix it? What is this, Windows 3.11?

I’ve been using a lot of platforms recently. My Mac, my iPhone. My Surface Pro 3. My WinPhone win Win10 preview on it. A Nexus 5 and a Nexus 7.

What’s striking is how little there is between them. They’re all black rectangles. They all have Office. They all can make phone calls and take pictures. They all have notifications and calendars and twitter. They’re all the same platform with slightly different boot up logos.

The distinguishing feature is now the fit and finish.


Let’s talk Android. Boy is it confusing. What committee designed this thing? Why does the Android Lollipop clock icon look like a very low-contrast pie chart? We must give up, since there is no logical reasoning behind anything I can see on Android. Maybe that’s somehow on purpose. Some kind of lock-in so you get used to swiping one way for media and one way for cards and get confused when that isn’t there any more and keep you locked in to these behaviors.

Maybe Android is iOS-by-committee? It’s hard to find a mental framework to understand it all. The development environment is the same way, maybe there is some causality there.

Which is a shame, since there is so much potential there. When the material design works, it works really well.


And so Windows. The bastard child of history trying to do everything, all the time, everywhere. Amazingly it’s actually pretty good (Windows 10, that is) both on the phone and the desktop. How the heck did that happen? What happened to Windows 8’s mess? Win10’s design is clean, the thing works, things are where you expect them. It even boots quickly. And it’s cheaper than the other guys. Huh.

But they miss the apps. The apps on WindowsPhone tend to be somewhere from dire to awful. So Microsoft have tried to build an app store covering everything from Xbox to Windows to WindowsPhone – or Windows Mobile, or whatever it’s currently called. Great idea on paper but it has some technical challenges.

Except, when you go investigate and actually build something in Visual Studio it all works pretty well. There’s remarkable cross-platform targeting that doesn’t really exist on the Mac or Android/Chrome. Not just for native apps, but Cordova and everything else you can imagine. There’s this ridiculous multi-decade history of the CLI allowing you to target it with everything under the sun, and then magically run that code on everything from the Xbox to Windows to the phone.

The clever thing is Microsoft have a fairly mature stack to make Android apps work magically on Windows, and the iOS stuff that shipped recently will get there. But think about this – they only need one of them to work. Twitter has a great android app and a great iOS app, they don’t need to port both of them to Windows. One will do.

And Visual Studio really is fun. It’s like… have you tried Open/Libre/Office vs. Office? That’s what it’s like after using Eclipse. Why would you ever go back to Eclipse?

And the only way is up. It’s hard to see the Windows Mobile share go down much more, where do you go after 3%? 2%?

Future Choices

So let us say you’re in the market for a new phone or computer. Is there really some compelling reason to buy iOS over Android? It doesn’t look like it any more. They’re both ok, they both have apps, and Android is cheaper.

Not long ago I helped my father-in-law get a iMac. Today, he regularly has trouble with it. Including, if you can believe this, web-based malware that locks out Safari and asks you to pay money to an 1-800 number you have to call. It somehow pops up a MsgBox and you can’t get rid of it by rebooting, quiting Safari or 100 other ways. It’s remarkably tough to get Safari to quit, kill the network connection, close the tab and restart the browser to get out of this lock-out. It’s like Windows98 with IE.

Win10 is surprisingly compelling and I’d probably recommend that today. It’s cleaner and cheaper and it works.

Platforms as a Service

If you’re trying to accomplish real work on top of any of this mess, today it feels like you may as well pick randomly. Office, email and your calendar is available on everything. They even all look the same. It doesn’t matter if you buy iOS, Android or Windows for any actual work task. They all work with some marginal pros and cons.

I think that makes the future very interesting.

It’s not particularly sustainable for all three to have their own everything. If you go look, Apple, Google and MSFT all have something like 100,000 people give or take. They’re all making development stacks, they’re all mapping the world, they’re all working on search, they’re all building cloud things, they all have spreadsheets. It goes on and on.

It doesn’t feel particularly sustainable or rational. At some point, something will give and the cash cows that pay for all of this will fall over. One of them will not have the cash to sustain it all, then there will be two. Like some medieval city-state after a drought, it’ll become some kind of Sun Microsystems or SGI. How many decades away is that? Hard to predict.

Unless memory fails, Nassim Taleb predicted a while ago that Italy was more robust and sustainable than Syria. Syria had a long period of stability under dictatorship. Italy was a mess of factions and in-fighting. People thought he was nuts, but then Syria fell over.

These 100k people organizations can be understood like that. There’s a deep fragility in everyone building these huge stacks. Apple taking device revenue and building maps, or Google taking search revenue and building laptops. Unless you make the leap to profitability, independent of the start up capital from your cash cow, eventually something will give. Apple and Microsoft have done that multiple, multiple times. Google has not as yet.

It’s also interesting how vertical Google and Apple are, compared with Microsoft. Microsoft has those same vertical stacks as those guys, plus all the horizontal services across Android and iOS. It’s unbelievable how decent Outlook is on iOS. It’s hard to see Google or Apple responding by making their services work great on each others platforms in the same way.

The attack on Android

It’s hard to see Microsoft making a frontal or otherwise attack on iOS. It’s too locked up and they locked out Google as much as they could. On the other hand going after Android isn’t going to be that hard. Plus the reality is a massive amount of cooperation between Apple and MSFT.

By building this big suite of services out on Android it’s going to be very easy for a manufacturer to jump ship to a Microsoft Android. Pretty much all the pieces are there; office, email, calendar, maps. I suspect Windows Mobile is Plan A by expanding Windows in to phones and Plan B is Microsoft Android. Or why not do both? Android support is a great way to go run interference that is hard to respond to. It’s much harder for Google to go run interference on Microsoft’s revenue streams today, but it’ll get easier with build out.

Also interesting to note is that Windows Mobile will probably disappear. Windows itself runs very well on low end hardware. We aren’t far from a phone being just a low-end Windows device. It almost feels like, playing with it, that Windows 10 Mobile is like the days when Windows and NT were separate products. It takes time, but then they’re the same thing.


Thus I think the future is very unstable. Note I don’t think instability is a bad thing.

Being forced in to a corner and losing all marketshare in the big emergent space of mobile has forced Microsoft to be extremely innovative. It doesn’t face the same barriers to thinking or entry of the other two. It has nothing particularly to defend in the mobile space and everything to gain. And it has the same money and smart people the other guys do.

The barriers to Apple or Google going horizontal and supporting each other today are going to hurt them. They’ll both keep doing what they’re doing. iOS will gradually get more messy and flaky and Android will continue to commoditize whatever iOS does. Next up, fingerprints, or whatever it is.

In the end the consumer wins.

Try it and see

Whatever you favorite flavor of ice cream is, if you haven’t tried the other two I’d urge you to go do that. Old iPhones, Nexus devices and Lumia devices are all pretty cheap on eBay.

The world will only get weirder

Another month, another terrible and bizarre aircraft incident.

As far as the media are reporting, Andreas Lubitz decided it would be a great idea to fly a fully functional A320 in to the side of a mountain and kill 150 people a few days ago.

Six months ago a fully functioning 777 was flown in to the sea wall at SFO.

A year ago a fully functioning 777 made some interesting maneuvers and disappeared in the South Indian Ocean with 239 people on board.

Aircraft are an interesting set of examples because they’re so well studied and corrected. We don’t spend time correcting hospital mistakes with nearly the speed and detail we do aircraft accidents, for example.

It used to be that airliners broke up in the sky because of small cracks in the window frames. So we fixed that. It used to be that aircraft crashed because of outward opening doors. So we fixed that. Aircraft used to fall out of the sky from urine corrosion, so we fixed that with encapsulated plastic lavatories. The list goes on and on. And we fixed them all.

So what are we left with?


As we find more rules to fix more things we are encountering tail events. We fixed all the main reasons aircraft crash a long time ago. Sometimes a long, long time ago. So, we are left with the less and less probable events.

We invented the checklist. That alone probably fixed 80% of fatalities in aircraft. We’ve been hammering away at the remaining 20% for 50 years or so by creating more and more rules.

We’ve reached the end of the useful life of that strategy and have hit severely diminishing returns. As illustration, we created rules to make sure people can’t get in to cockpits to kill the pilots and fly the plane in to buildings. That looked like a good rule. But, it’s created the downside that pilots can now lock out their colleagues and fly it in to a mountain instead.

It used to be that rules really helped. Checklists on average were extremely helpful and have saved possibly millions of lives. But with aircraft we’ve reached the point where rules may backfire, like locking cockpit doors. We don’t know how many people have been saved without locking doors since we can’t go back in time and run the experiment again. But we do know we’ve lost 150 people with them.

And so we add more rules, like requiring two people in the cockpit from now on. Who knows what the mental capacity is of the flight attendant that’s now allowed in there with one pilot, or what their motives are. At some point, if we wait long enough, a flight attendant is going to take over an airplane having only to incapacitate one, not two, pilots. And so we’ll add more rules about the type of flight attendant allowed in the cockpit and on and on.

Why, why, why, why, why

There’s a wonderful story of the five whys.

The Lincoln Memorial stonework was being damaged. Why? By cleaning spray eroding it. Why? Because it’s used to clean bird poop. So they tried killing the birds. Didn’t work. Why are the birds there? To eat insects. Let’s kill the insects! Didn’t work. Why are the insects there? Because the lights are on after dusk. So let’s just turn the lights off. That works.

This is a clean and understandable example of why adding more layers, and more rules, to a problem doesn’t always work. If you stop at some level then you’re missing out on the ultimate solution.

If we’d stopped at killing insects, we’d spend more money and still have the same problems. If you keep asking why, then you get to solve problems.

Similarly the US Constitution, as a set of rules, fixed most problems with government. That document alone probably fixed 80%+ of governmental problems and now we’re reduced to rules making it illegal to be a hairdresser without a government license, or whatever.


And so, with more rules we have solved most of the problems in the world. That just leaves the weird events left like disappearing 777’s, freak storms and ISIS. It used to be that even minor storms would be a problem but we have building codes now (rules). Free of rules, we’d probably have dealt with ISIS by now too.

Ultimately, this is why the world is getting weirder, and will continue to do so. Now with global media you get to hear about it all.

What to do?

The primary way we as a society deal with this mess is by creating rule-free zones. Free trade zones for economics. Black budgets for military. The internet for intellectual property. Testing areas for drones. Then after all the objectors have died off, integrate the new things in to society.

The worry should be we end up with so many rules we become sclerotic like Italy or France. We effectively end up with some kind of Napoleonic law – everything is illegal unless specifically made legal. Luckily we’re far from that in the US.


On a personal level we should probably work in areas where there are few rules.

To paraphrase Peter Thiel, new technology is probably so fertile and productive simply because there are so few rules. It’s essentially illegal for you to build anything physical these days from a toothbrush (FDA regulates that) to a skyscraper, but there’s zero restriction on creating a website. Hence, that’s where all the value is today.

If we can measure economic value as a function of transactional volume (the velocity of money for example), which appears reasonable, then fewer rules will mean more volume, which means better economics for everyone. So it used to be very hard to create an airline, now it’s easy, we have more choice and more flights and so on.

Rules stop you making transactions (monetary or otherwise). With fewer transactions we have a lower flow of value from where it is, to where it’s best usable.


And thus we arrive at speed. As everything is getting weirder, it’s also getting faster. In film, Christopher Nolan has explored a lot of this across his movies.

Almost literally, everything that has ever happened has happened in the last decade or less.

Nick Bostrom nails it in his book:


Nothing happened from the beginning of time up until something like 1980. Maybe the industrial revolution. You get to pick. The explosion in transactions came from a feedback loop of an explosion of population and ideas.

It’s going to take a lot of rules to slow that down, but it is possible.

Contrarian, or the Opposite Movement

The worlds richest software engineer doesn’t live in Silicon Valley but Bellevue, Washington. The worlds richest investor doesn’t live in New York City, but Omaha, Nebraska. Even the world’s richest actor doesn’t live in Hollywood, but Long Island.

It appears that the best metric for success in everything is to go figure out what most people do and then do the opposite. Everyone watches TV, throw it out. Everyone eats pizza and drinks beers, don’t do that. Everyone has credit cards, go debit. Everyone needs permission to do anything, don’t ask for it. Everyone bitches and moans, be positive. Everyone drives a car, walk. Everyone goes to University, run away screaming.

Or, write software anywhere but in Silicon Valley, invest anywhere but in Wall Street and act anywhere but in LA.

The opportunity here, if you can live with yourself, is awesome. Sell the idiots TV shows, pizza, loans, self-help permission books, negative news, ridiculous cars and school loans. Or by proxy, invest in those things if (to echo Ben Graham) they are underpriced and offer a margin of safety.

What I want to do is find a way to short anyone who just copies. China copying American infrastructure (skyscrapers to airports to freeways) instead of the constitution. Bing copying Google instead of building Siri. Students going to college thinking a degree is a differentiator. Everyone making black rectangles that look like an iPhone.

Then I want to write a book on all this mimicry that is everywhere, and why it’s so problematic.

A Modern Mapping Party

Last month I ran a mapping party in Castle Rock, Colorado at the new Philip S. Miller Park:

Philip S Miller Park

Philip S Miller Park

The park was challenging for a few reasons:

  • Nothing on the map before we did the party
  • No up-to-date aerial imagery
  • Lots of footpaths in winter mud conditions

Luckily we had a bunch of enthusiastic people at the event. The footpaths were easily captured using GPS units but the new buildings, football field and other macroscopic features were harder to do.


Drones to the rescue!

Luckily I own a Phantom Vision 2+ drone which looks like this:


So I sent it up to 500 feet or so and took some pictures with the HD camera which looked like this:


The image shows part of the car park, internal access roads and the new sports building (red) and swimming pool (beige). Having some pictures is great, but what we needed to do was patch the images together to be able to map on top of them. You take these warped images from some height, location, yaw, pitch and roll and stitch them in to something flat and usable .

Enter MapWarper. This web-based tool will help you spit out that map:


You’re looking at multiple images stitched together, click it for a bigger interactive version. MapWarper is a little clunky in the work flow as it stands today. Each image is stitched to OSM as a ground truth and then you use multiple of those in to a layer. The problem here is when you have no ground reference to stitch to, which is the issue we had. It would be super useful to be able to stitch images to each other, and to the ground rather than having multiple images in free space. Still, the thing basically works but is best used (and apparently intended for) single high altitude images, or old maps. Not multiple images like I did.

One solution would be to send the drone higher and cross fingers it doesn’t decide to fly away or something, and take a single image that way. The downside is lower resolution of the imagery. Upside it (hopefully) less distortion from the fairly wide angle lens the Phantom Vision 2+ has.

You can go from MapWarper to editing using iD on the OSM website pretty trivially, and anyone can now use the imagery to help improve the map. So one person can go through all the imagery pain, but then everyone else can use the imagery as if it was just any other layer. Big savings there.

So what’s important here? I think it’s a new tool in the belt for use at mapping parties (and a new set of toys to play with). You’re no longer (and haven’t been for a while) restricted to existing imagery and GPS units. For a fairly modest cost you can collect your own live imagery and make maps better, all by yourself.

Measuring continental drift with your phone!

Most of the work mapping people do is concerned with moving GPS units. Walking, driving, biking with a GPS and doing things with that movement data. But, there is a big use case for static GPS units too!

As far as I can find out, continental drift and glacier movement is measured by buying a GPS, strapping a really big battery/solar pack on to it and embedding it in a lump of concrete (or a glacier) so it won’t move much. Then you come back a year (or whatever) later and see how much it’s moved by averaging out the locations it’s been collecting. The location will vary minute to minute within some bubble (30ft across or so). But over the span of a year you can average it out and get the movement of the glacier or continent. Like this guy is doing:


Guy planting a GPS in a glacier

So the question to me is, instead of having one GPS collecting for a year, could I have 365 GPS units for a day? Or, 4,380 GPS units for an hour…. And get the same result? Or at least something fun to wave around?

I suspect the simple answer is no, because having thousands of GPS units in the same place for an hour will all record the same systematic bias. But, what if you had thousands of people collecting drift information part-time around the planet? That would be fun!

So I built a little thing I’m calling OpenDrift. If you go to with a phone there’s an alpha version of what I’m thinking. What it does is uses your accelerometer to wait until your phone is still. Then, it uses the GPS to start recording. As soon as you pick it up it will stop since you moved the phone. If you knock the table it’s on, it will stop. And so on.

So, you could imagine instead of leaving your phone to do nothing overnight you could instead leave it to record 8 hours of drift data. We’d anonymize it and record drift information just for the nearest 100 mile square or something so we don’t know where your house is. Then we could aggregate that data with other phones across the world and see if we get something that looks accurate out of it.

Maybe, just maybe, we could produce a pretty visualization of that data. It would be a huge, fun citizen science project.

Today the code isn’t actually recording anything, and it can’t distinguish a phone from a laptop (which typically won’t have a real GPS). But the proof is there and I’m working on those things.

That sounds fun, what can I do?

Join the mailing list. Also, the code is on github, feel free to submit patches.

The Book of Reddit

The Book of OSM is going really well. So much so that I’m thinking about what’s next.

I love reddit. I’m thinking that a book of interviews with the people who make reddit live would be super interesting and fun. I’m imagining 25-35 interviews across a range of subreddits and interests. Why those subreddits exist, what makes them tick, who the people are and so on.

You can sign up at to keep in the loop.

I’m building a book cover right now over on crowdspring. You can vote on the book covers. Have a look and let me know what you think about the idea and the best cover design.

10 Ideas for Southwest Airlines

I love James Altuchers “send someone 10 ideas a day” thing and have been doing it for a while. I figure, since the response rate is pretty low why not just make them public too?

  1. I almost made A-List preferred in 2014. Southwest should email me in December and tell me I’m going to miss it by a few flights. Southwest should email me in January and say “hey for $100 you can top up to get to A-List Preferred” so I don’t miss out. You get more revenue, I don’t miss the opportunity like I did.
  2. The front row on the plane has nowhere to store a bag since there is no seat in front. This is especially painful for people picking the middle seats late in boarding since the overhead bins are full. Figure out a way for the front row to have some storage and it’ll make it available to people like me with a laptop who get on the plane first but have to sit further back because there’s no space even though the seats are free.
  3. Fix the WiFi. It’s only ever barely worked. I took a Lufthansa 747 over the Atlantic a few months ago and used their WiFi. Whatever those guys are doing works.
  4. Stop sending me drinks coupons if I don’t drink. Figure out some other reward, since people just sell them on eBay.
  5. Make the drinks coupons digital in the app and save the paper and mailing costs. Figure out a way to avoid fraud with QR codes or something. Maybe print them on the ticket.
  6. TSA are your number one customer pain point. Help A-List customers get Clear cards and figure out a way to make TSA die.
  7. Mobile boarding passes disappear from the app when the flight is delayed since it thinks you’ve boarded and taken off. Fix that. It’s causing gate staff to reprint tons of passes.
  8. The mobile app makes it painful to scroll through all the cities to find the one you want when booking. Let me type a few letters to narrow the list down.
  9. Add baggage tracking to the app. Let me get alerts when the bag is scanned off the plane and so on.
  10. Partner with Uber and UberX so someone is waiting for me when I land and knows where to take me. Let me set this up in-flight on the wifi.

Powered by WordPress. Designed by Woo Themes