My scorecard had the mojo solidly on the Android side after last year‘s I/O: 2 solid releases, Android had actually become more stable than iOS, and finally the design had also leapfrogged: 7 and 8 (iOS) were pretty forgettable and L was a monster. Guess I was kind of surprised at what a flat, horribly-produced affair the 2015 I/O was. Seriously, whoever produced that show should have been cashiered before it was even over. It made the Samsung events look like the Carson Era Tonight Show (actually the S6 rollout was pretty good). Anyway, because I want to be helpful, let me start by providing a couple notes:
- the pong intro was stupid beyond belief and went on so much longer than it should have, you started to think that whoever was the subject of the proposed build up was abducted at the last moment and they were readying a substitute
- when the first thing said about M was that they wanted to make permissions easier for users, I thought ‘wait, the maker of the OS that was on 80% of mobile devices is leading with this? ok, quick assessment of what they have that‘s of interest: nothing‘
- when the woman came out (who Quartz later claimed ‘proved‘ that mixed gender presentations were possible), the presentation slid down the scree even faster.. she was trying to impress with talk about how smart their neural network was and at one point put up a slide that showed the typical NN structure, which predates the company by decades, and a junior programmer can get an example running in a few hours, and basically said ‘neural networks have layers, ours has a lot of layers.‘ I burst out laughing. Seriously, that makes the ‘ours goes to 11‘ look learned.
- Now is STILL not open, but there are new partners! I need a whole post for this but the irony of the main battle cry of Android being open and no walled garden and then Google‘s main focus being in an area that is not open, is um, INSANE!!! Hypocrisy doesn‘t even cover it.
- the rest of the presentation was pretty hazy until the Oprah moment where they announced that everyone was getting free photo storage
Huge fail. Oh, on the tools side, the big news was they sped up gradle and the NDK guys finally yelled enough, Google went back to their tool partner and got C++ support.
The image that emerged from the presentation in general:
- Dear rest of the word, don‘t bother developing software, we have that all covered
- Oh wait, there is one thing you can make: games
- Now does almost nothing useful, but because it found Skrillex‘s real name given a sentence with him instead of Skrillex (an enunciation savings so slight as to probably be imperceptible to the hosting human), we are the masters of the universe
- But we are so cheap, we can‘t be bothered to put on a show with a single joke that was funny or show any enthusiasm about our own stuff
On the Apple side, I say 7 and 8 were forgettable, well that is except for Swift. Problem is though: Apple did something they almost never do: they released something that was not anywhere near ready for primetime. In 2014, I had finally lost faith in the ‘it just works‘ company. Mail has been so broken I had to stop using it. Then after Swift, I made the tragic mistake of developing an app with it, and received a dose of punishment unequaled since the Windows days. Finally a few months ago a version of Xcode came out that squashed the last of the SourceKit crashes. Near as I can tell the people who suffered the most were the ones who had the most extensive codebases. If you were just tinkering, probably your perception was that Swift and Xcode worked fine (I know because I had large projects and tinkering ones).
Now that it does work, it‘s pretty much of a monster. Google made a big mistake not going all in on Kotlin. Having done Java back to the year of its birth, I am not a hater at all but it‘s no match for Swift.
I was thinking about something funny about Apple this past week: in some ways, Steve Jobs was the embodiment of the Mike character in Breaking Bad (and now Better Call Saul) shows: no half measures. So maybe this horrible experience showed that though there was pain, the result was worth it. Though, it‘s hard to call it because in a lot of ways Swift was a half measure: it let‘s you continue to do O-C if you like, and mix them. But unlike C++, it does NOTallow you to just write O-C with the compiler (which to me was C++ ultimate downfall: metrics studies showed that a decade on, only 5% of the C++ codebases even had C++ language constructs in them). Should do a whole post on why I think that once you have used Swift or Kotlin, returning to Java or Ruby or Python will feel like going back to a diaper. Of course, let me add the peremptory IMHO here, but I am predicting that the language landscape is changing and that the vanguard languages will end up ushering in a new era which will make the older ones seem obsolete. Sure, maybe Java 10 can try to turn itself into something like Kotlin or Swift, but what‘s the point? Bottom line on this front: advantage Apple. While they were mopping up the SK mess, they also put in incremental build. Sadly, it‘s not working perfectly on test targets, but that is going to get fixed. I went nuts and finally removed all my source files from the test target, which with Swift is actually quite easy, but the results were pretty stunning. Now working in TDD fashion is pretty much the most painless environment around: rerunning tests after minor changes to the source is stupid fast. I think until you have a situation like that, you will always have people complaining about tests. Once you have it, you will not want to do any serious work outside a test.
My prediction is that Google has blown it‘s chance to really make a dent in the high end market with this whimpy release, perhaps for another 5 years. I listened to a podcast yesterday where Farhad Manjoo and some other cat were talking about Android and Farhad was making the point that no one is making any money in the Android camp. The other dude seriously, I was starting to think, was 5 years old (or that‘s when his brain stopped developing). His main argument was ‘android is a success because it‘s on the most devices, and because the goal was to prevent microsoft and apple from controlling the future.‘ Really?? Actually I thought even Farhad‘s argument was while at least coherent and adult, well short of what it should have been. Just claiming victory based on body bag counts is the ultimate stupidity. I have another main vector in my argument about why I think Google has screwed itself, and that is that Now is just not that useful. Sure it can perform some interesting tricks, but my main phone has been Android now for a year and it‘s day-to-day, minute-to-minute impact on my life is nearly zero. This morning it told me how long it would take for me to get to Whole Foods. I was there yesterday, IDIOT!!! If you are going to tell me you don‘t need any help you have everything already figured out, please try not to interrupt me with your stupidity!!