Jun 02

Will we feel like stick shift drivers? The potential shift in the OS marketplace

Apple, Comic, Tech, Web Browsing, webOS 1 Comment »


I have been talking in analogy for the last few days. The common meme is relating the computing usage trends to that of the car industry. As I watch continue to watch my family use their devices, it does feel like things are changing. My mum continues to thrive on her iPad / Palm Pixi combo. She feels empowered to try the different corners of the experience. To download new experiences. She is having fun.


One friend suggested that it is like the shift (pun intended) that we saw when automatic transmissions were introduced. At first they were expensive and had some issues, but being able to have simple controls changed the way that people drove. It became so simple. There were people who cried that it would never take off. “People want the control of a manual stick shift system!” However, although we continue to see some die-hards, the vaste majority of the US population drive automatics (this isn’t true everywhere in the world). That battle is over. We will never go back.

The iPad experience is like driving the computing experience without the manual hassle. You don’t have to know how to install the engine to start out (install an OS), nor deal with (and worry endlessly about) the workings. In general, you just don’t need to worry about all of the abstractions any more. The notion of files. And, don’t get me started on viruses.

As my mother thrives on her iPad, I use it sparingly, mainly as an entertainment consumption device. Wait a minute: Am I am the guy who loves the stick shift and never wants to jump to an automatic? I am a little different from the religious chaps who claimed they couldn’t understand why anyone would want an automatic. Or looked down on those people. I understand why my Mum prefers the iPad experience.

I do find the iPad experience often frustrating however. My “why did the car shift then? it wasn’t time!” moments occur mainly around the restricted access to customization, and the inherent and enforced immersion.

First a small thing, which will unfortunately show off an how anal I can be:


I want to rename this to “BBC News”. I am the guy who winces when someone bookmarks a page and doesn’t rename it, thus having “Foo.com – a barish company that deals in widgets, gadgets, monkeys, and flubbers”. I want to jump in and rename it to “Foo” on the bookmark bar. More space. More room. Petty for sure.

Where it gets more real for me is in the lack of integration between applications. Being immersed with one application at a time can be a fantastic thing, I will give you that… even if I often would love to give a bit of screen real estate to me Twitter stream while working on another app right next to it. However, if you live in an immersive environment, you need great integration between experiences. I should be able to Tweet/Share from any application, and not have to close down the app, go to a Twitter client, and get back to the app that had content I was tweeting. A lot of this comes down to multitasking, but more comes from integration….. and putting intents on a stack. On the iPad I feel like I am jumping through doors without an easy way to go back.

The browser has some of these notions baked in. States have URLs that I can bookmark. I can go forward and back. I can search. I can fork off (new tab). Turns out, I really like those abstractions, and miss them when they are not there, and every single app tries to reproduce some of them. They are often cross cutting concerns. I don’t want the app developer to have to write code and choose where to put a “Share” button. I want the system to know that I have an account on Twitter and let me share with a simple gesture.

Back to the Web. I was a little stunned when a friend showed me the Speed Test.net experience on an iPad:


Yup, if you go to speedtest.net, you are automatically redirected to the App Store. There is no way to trick it (again: would be nice to have customizability and tweak user agents etc).

To the credit of the speed test developers, the website is driven by Flash, which won’t work…. so they are trying to do something good for a user. I get that.

However, I am scared to death to think of the Web going this way. You go to websites and get sent to apps directly. I *do* want user agents to tell me if apps are available (hence the App Discover experiment), but don’t force me into the world of apps. I also think that doing what YouTube does and take over a URL in a certain way can be a good thing. I would love to install handlers for mime types…. so a certain link always opens up my favourite Twitter client say.

I personally prefer many of the Web experiences to the “new” app experiences. (I talked earlier about the abstractions that I find useful). This could break the Web. Data that was shared at the ReadWriteWeb Mobile Summit showed that the same users often hit a site using: mobile website, full website, and application. We are context switching in real-time already. Different views are best for different use cases.

It definitely feels like there is a shift in the force. We need to get the balance spot on as we move to automatic transmissions. What should be customizable. What should be locked down. As developers as well as consumers, we need to make our voices heard. What do you think?

Jan 11

The table stakes of 2010 and beyond

Comic, Mobile, Tech 1 Comment »

From websites to mobile apps

Remember the first dot-com boom when people started to think that creating a company was just about creating a website? They would register a domain before they had a business plan? Crazy days of sock puppets and and people renaming themselves as dot com versions. Behind the craziness was the reality that to a large extent you did have to have a website. A website was table stakes, and this continues to be the case.

With the iPhone another gold rush occurred. The initial rush is over and you can’t just throw an application into the appstore and hope to make a fortune. You actually have to create something compelling and differentiated to make hour mark. Imagine that!

The “quick buck” allure isn’t there and we are onto the next level of maturity. Having an experience for iPhone users has become table stakes for some too.

So, now you have created your website, and iPhone app, do you go to an Android app? Facebook? One for a new 3D TV? :) It is starting to get daunting.


Walking around at CES the consumer in me gets very excited to see the proliferation of devices. Everything is connected, everything has an API.

Then the developer in me wonders how this is going to scale and how we are going to deliver great experiences to all.

My hope is that the Web can become a great unifying platform. It isn’t easy to build Web apps that will just work anywhere. I just talked about the issues and fun of developing for devices and we are going to be getting a lot more form factors out there.

Feb 09

Will the real WebKit please standup

Comic, Tech, Web Browsing 6 Comments »


I recently heard a conversation in Palo Alto which had the following in part of it:

  • Chap A: Are you testing in WebKit?
  • Chap B: Which WebKit?

I have heard this before. I am running into this issue myself right now. Something that our team is playing with uses some bleeding edge standards, and some recently were added to WebKit nightly. Unfortunately, that doesn’t mean that they are in Chrome, AIR, Mobile Safari (in this case it is), or the other people who use and fork WebKit (from Nokia to Titanium).

On the one hand companies are highly leveraging each others work when they choose WebKit. Forking isn’t necessarily an evil thing anymore, especially if everyone is giving back to the cause as much as possible. The WebKit team implements CSS Animations, and you hope that it will be placed in browsers that use WebKit in the future. Watching the WebKit community deal with the many large companies will be interesting indeed in the coming couple of years. Luckily, the core team is top notch, and continue to push forward.

Feb 04

Google Latitude; Get your explaining ready

Comic, Google, Tech 3 Comments »


Google Latitude is cool indeed, and will have folks from Loopt and beyond watching (see Dodgeball didn’t die, it’s just slowly becoming a feature of Maps!).

Even with all of the privacy controls, you KNOW that there are going to be fun cock ups in the future, just like we see on Google Maps Street View. It just has to happen. But, it’s worth it :)

Shame the iPhone version didn’t come out on day one, and the Palm Pre version will be cool :)

Aug 24

London Olympics 2012. Poor buggers.

British, Comic, Personal with tags: , , 6 Comments »

London Olympics 2012

As the Olympics comes to a close, I remember seeing the frolics of the opening ceremony, and thinking about how the London contingent must have felt as they are reminded “oh yeah, we are following China.”

To think that London will be mainly hosting in the beauty that is Stratford and the like. I hope the workers are getting paid overtime to make it happen!

China was a coming out. An East meets West. London needs a mission too. If you can look past the infrastructure issues, and how the M25 and Tube will explode, there is a lot going for it. Having the tennis happen at Wimbledon, and some footy at Old Trafford and Wembly, and using other great sites. That could be impressive.

Also, we are lucky that shows such as X-Factor, Pop Idol, and “Brits have some got talent somewhere” will be able to find the two kids to make a different. The cute one to lip sync, and the other one who can actually sing.

London 2012

Can’t wait to be there for London 2012. It has got to be better than the logo!

Athens was returning to the roots, to the country that invented the Olympic Games. China was the most populous country in the world.

London is the capital city of the country that has invented modern sport, that has invented the rules of the sports, and the values of fair play.

It is a cosmopolitan, multi-ethnic and multi-religious city and that’s something they can build on.

Aug 01

Silent updates: Good, Bad, or Safe?

Comic, Security, Tech with tags: 7 Comments »

Update Paradox

I am in a paradox this morning. I found myself managing a million friggin updates to various software and components.

There were the iPhone Apps (keep hoping that NetNewsWire will get stable :(), and the software updates, and the browser plugin updates, and the list keeps going on.

It is interesting, because at the same time, if I download an application that doesn’t tie into an auto-update framework, I get frustrated. I am maddened as I know that I won’t stay on top of the versions, and I shouldn’t have too!

So, I want all of my software to update, but I don’t want to be bugged all of the time. Hmm. How about silent installs? What if I could say for a set of apps “just keep these puppies up to date and don’t even bug me”. Maybe just a growl “hey, just so you know, I updated NetNewsWire to the latest point release, and if it isn’t working well, you can revert”. Having revert would be cool (but potentially more work).

But wait a minute, what if that happened and suddenly something stopped working, or I just didn’t like the new version? Well, revert can help there, but maybe you could have a setting where silent updates happen only for point releases.

What about security though? This would allow developers to sneak in some code without me even knowing! True. That sounds scary doesn’t it. However, isn’t that bogus? They could just put it in the new release and you would update anyway! I doubt you are cracking open the .exe to look for malicious code :)

The fact is that we rely on trust. We weigh up trust. And, I am willing to trust certain companies and people to do silent installs.

In fact, someone on the Gears team mentioned that they think it is the developers responsibility, and that it has to be taken seriously. What if there is a security breach? If you have the ability to push out a fix in short order, you can minimize the scope. Else, there will always be a serious of people who never upgrade and are taken over. How many 5 year old worms and viruses are out there that still propagate due to your aunt running Windows 98 with no changes to it. Ouch.

So, I am all for a change. Time to allow more silent upgrades. Developers, protect me, and don’t bug me all the time!

Jul 14

Loopt, I just can’t do it again; My friends are out there

Comic, Tech with tags: , , 1 Comment »

Loopt Friends

Loopt looks very cool. I downloaded it early on for the iPhone 2.0 software, but after I set up an account I saw the “Invite Friends” step, and I just couldn’t do it.

Even though the service ties into my iPhone contacts, and online allows me to blast my contacts on Gmail etc (although not using the Google Contacts API so you have to give them your email password which is a password to everything since people can “forgot password?” you) I still couldn’t do it. I couldn’t ask my “friends” to go through yet another process to show that we are friends.

I have noticed this from the other side. Plurk comes out, and you get a set of emails from people asking to connect. I don’t need another Twitter, even if it scales.

You start to see the same faces again and again. FriendFeed asks if Bob is your friend. Yes, yes! He is my friend on Facebook and Twitter!

Where is the magic “just do it already” button that takes this over for me. Where is the data portability + with ease. Everyone needs to do more, and there are hard problems there, but I am slowing down on services until it happens.

I click on less as they come in. And, I take less time to go and friend back the person, again even if I have already done so on another service. It’s just too much.

So, sorry Loopt. It isn’t you, it is me. I don’t have the energy to do it, so I will leave my account up with 0 friends, and as the odd people find me I will accept, but I am not going to go after anyone…. until the systems talk to each other and I don’t have too.

Jun 04

Luke and Darth talk past each other on language debate

Comic, Tech 3 Comments »

Dynamic Static

I witnessed yet another “dynamic vs. static” argument between a couple of developers today. The age old debate just keeps on going.

I totally understood both sides. I have been in both positions. If you look at the Rails code for example, it takes you quite awhile to grok what they are doing with tons of meta class stuff. It can be a little frustrating to open up classes that all look like “class Foo; end” and you growl “where is the functionality!”.

On the other hand, I have worked with plenty of Java codebases that have me jumping through the IDE following the class – abstract class – interface trail where it seems that a ton of code could be shortened to 1/40 the size.

Obviously, it is easy to write bad code in any language (and I have done plenty of that!).

What makes matters worst is when you have the team with the one wizard. This is the guy that builds code that bit twiddles your bytecode so much that you get exceptions when testing that send you to weird anonymous blocks that don’t actually show you what is going on. You curse as you are in static language land with a great IDE like IntelliJ yet all of the information is gone. The worst of both worlds.

On the other hand, you want to bring good practices from other lessons learned. When I write Java now I often use closure-like semantics. However, I try to think about who the users of the code are, and how they are likely to think about things. If you always give people a clean API (again, very hard) then you can do a bit more magic under the hood (until it breaks and the developers can’t debug the darn thing).

As we move to the world of the polyglot, it will be interesting to see how developers cope thinking in various paradigms in the same codebase.

May 29

I am on Dilbert!

British, Comic, Tech with tags: , , 1 Comment »


I wondered why Scott Adams was following me around, and my coworkers were pointing things out!

May 23

TwitterFone: Voice recognition can be dangerous here

Comic, Tech with tags: , , 1 Comment »

Twitter Phone

I like the idea of TwitterFone. It would be nice to be out and quickly call in a tweet. I got an invite, and tried it out this week, and then remembered that voice recognition is really hard. Doesn’t it always seem to be one of those technologies that is “10 years out.”

My test tweet occurred after Man U beat Chelsea for the Champions League trophy.

I said:

I’m really excited that Manchester United won again today but I can’t believe that it went to penalties.

and I saw the following in my twitter stream a few minutes later:

I’m really study the dimensions unit one again today but I can’t believe that it went to penalties.

To be fair, they did pretty darn well. It is hard to expect them to know something like Manchester United. Unfortunately, even though they did well, it would be hard for anyone to understand what I was saying.

I then thought back to Twitter Translate. In that case we are translating between languages, and it is also often “off”. However, you can normally work it out, and there is a key difference. I expect that if I translate something that it will be a bit off, and I will cope with that. However, something like TwitterFone is happening without the consumer knowing, and thus it comes across as gobbledy gook as they don’t have the context (other than seeing “twitterfone” if they look carefully).

It seems that there are many use cases where it is OK that translations of some kind are “good enough”, and others where it does matter. You could get into trouble too, such as the comic above which messes up the “d” for direct message and changes it slightly so you say something totally different.

You could go from: “I like yoghurt and peas” to: “It hurts when I pee”.

Then there is the 140 character issue. It is impossible to do the math as you are speaking a sentence, so you will often run on.

Nice idea, but we need the technology to get to the next level for this kind of input to be used in a case like this. Using it for GOOG-411? Perfect… you can keep saying the same thing again.