| Comments

Sharing Knowledge.  That was the theme of the Øredev conference held this past week in Malmö, Sweden.  I was invited this year to participate in this conference in the Scandanavian area to speak on Silverlight technologies.  I am very humbled to have been invited.  This was truly a great conference and let me tell you my impressions.

I’ve attended Microsoft’s PDC, TechEd, VSLive, DevConnections, etc.  I’ve got most of them all under my belt (as an attendee).  They are all good in their own regard.  The ones that are most interesting, however, are those that have an intensity about them and a collaboration among the other attendees who may or may not know each other.  That is what I felt at Øredev this past week.  This was the ultimate “code camp” which brought together a ton of different technology conversations in the setting of a large conference.  There was representation from both technology and practices: .NET, Java, project management, user experience, Agile/Scrum methodologies, mobile development, etc., etc.  You name it, it was there.

Along with Beatriz Stollnitz (Costa), I spoke on Silverlight, specifically accessing data and writing custom controls.  After each session we were invited to dig deeper with any attendees who wanted in a “chalk talk” setting, which I did and was able to get some good feedback to take back to a few teams at Microsoft.  After each time I presented, I was presented with a “thank you” certificate on behalf of the conference, which represented a donation to UNICEF.  The conference decided to ensure that the technical community in that area give back to a cause that needed assistance.  At the end of the conference, representatives of UNICEF were presented with a donation of around 200,000 SEK from the Øredev conference.  Very nice.

At the beginning of the conference, the city hosting us, Malmö, invited the speakers to attend a nice dinner at the city hall with the deputy mayor.  I personally thought it was very cool of the city to be involved and a classy act on their behalf (and the conference organizers).

What made Øredev special to me was the sincerity of learning and diversity in attendees.  Generally, even at the local code camps I’ve attended, there always seems to be this animosity between technology experts.  Not here.  In fact I spent an hour talking with an engineer from the JavaFX team about what they are doing, seeing some of their thoughts and learning about what essentially amounts to a competitive platform for the area I work in.  There was no “ours is better” moments in that conversation.  In fact he also mentioned that he’d not really paid attention to Silverlight until this week and is impressed with some of what he saw.  People from Google were there showing Android and getting people excited about that (and they brought it on a few different devices other than what I think is the ugly G1 form factor).  It was a perfect environment for learning together about different things and having open conversations about the technology, and as well as what we as software engineers can do to help create better software and innovate more in what we are already doing.

One cool logistic thing I liked about the conference was removing the long form evaluation concept for speakers.  Instead of relying on people to go to a web site after the fact and enter in an evaluation (which is very hard to collect and usually yields an incredibly low ratio of those who attend sessions actually filling out feedback), each attendee of every session was asked to “vote” on their way out of the room.  There were 3 stacks of cards: Red, Yellow, Green.  You pick the one that fit your impression of the session and put it in the bucket.  This removes the negative marks from the speaker for things like “couldn’t hear, chairs squeeky (which they were), too cold” and so on.  Those type of feedback are needed and still collected by the various delegates that are mingling with the crowd throughout the week.  I wish every conference I went to simplified down to this!

Of the other cool things, I was able to get a demonstration of Strangeloop Network’s AS1000 appliance for ASP.NET applications.  I spent time talking with Richard Campbell and understanding what it does and then proceeded to actually see the effective results in action.  Holy crap it was cool.  If you want better overall performance of your site to our users, you owe it to yourself to check it out.  I’m trying to convince my manager now that we need one!

It was also very fun to meet Linus, Chris, George, Magnus and Michael who all had a part in organizing the conference either as a speaker, track lead, and Michael as one of the main organizers with Emily.  Magnus had invited some people to his flat at the beginning of the conference, but jetlag was evil on me and I didn’t make it…I heard it was a blast as well.  Having dinner with Ted “The Dude” Neward watching him trying to survive a 600gr steak was also a great night in Sweden.  I was able to stay through the weekend and hang out with Richard and Carl and Glenn Block in Copenhagen touring the city and having some great conversations (or at least I think they were).

Overall, hanging out with smart and fun people and participating in this conference was a really exciting time.  If you are close to the area, it is a not-miss conference in my opinion, so mark your calendars for next year.  I hope that I might be invited back in the future.

So thank you to Linus, Magnus, Emily and Michael for inviting me to participate and making it special.  I think the show was a success and your region should be very proud of this conference!  Great job to all!

| Comments

Earlier this year I wrote my thoughts on the current mobile scene and what troubles certain players more than others.  I made the assertion that Android will face the same troubles that Windows Mobile is challenged with.  That being that Google/Android are providing a platform and not a physical device.  I think it would be hard to argue that owning the complete platform and hardware is not a good idea.  Apple’s complete control of every aspect of the channel provides them with the ability to deliver in a somewhat more reliable fashion (except for the fact that Contacts suck and their implementation of ‘enterprise’ features is questionable).

So why another post on the failure of Android?  Take a look:


(source: CrunchGear)

What you can’t really see in the photograph is the proposed angle of the button controls (they angle upward in other design drawings/renderings), making it look like a more old-school handset more than a revolutionary device.

And therein lies the struggle for Android: they aren’t making the device.  I’ve seen the demos of Android and have already said they are impressive.  The fact that all of that is made available via open source is great and exciting.  But for consumers, useless unless some great packaging comes with it.  Remember the old adage of lipstick on a pig?  When I look at the above T-Mobile picture device running Android, that’s what I think about.  There isn’t anything innovative in the design and regardless of innovation it doesn’t even match some of the sleekness of current designs.  In the consumer market, design matters over features. 

I will say that the “HTC Dream” has other shots/drawings around that look a lot different than the above picture, so I could be eating my words.  But right now it looks like a Nintendo Wii accessory.  And in some angles it looks like an iPod sized thing with an FM transmitter adapter on the bottom…just not polished.

I foresee a bunch of Silicon Valley types walking around with this device, but my wife won’t be carrying it because it looks too Star Trek-ish.

Better view of the weird angle bottom in this video ("is that Android in your pocket or are you just happy to see me?"):

| Comments

I suspect Apple will have a good day on 11 July.  I’m pretty sue Apple could release the iGumWrapper and people will camp out 2 days before to be the first to purchase a gum wrapper made out of napkin and far less superior in functionality than what exists today.  It’s the lure of Apple, the marketing engine behind them and the fact that despite that napkin material, it would likely be so beautiful and make you forget some things that you’ve depended on for so long.

But I digress :-).  In all seriousness, Apple excels at the hype and the experience (yes, two distinctions that shouldn’t always be confused as one).  With the release of the iPhone 3G, they’ll sell a lot I’m imagining and it will cause other mobile manufacturers concern…or it should.  The iPhone is being marketed as ‘half the price’ but others have already pointed out that that asterisk on the advertisements is a large asterisk…and in fact the ultimate cost to the consumer is actually higher (including service plans, etc.) than the current model.  But who cares…I’ve seen the cost analyst and it is negligible.  Misleading advertising?  Maybe.  Some have even pointed out that other than the 3G there isn’t much core upgrade to the device.  No camera upgrade, no IM, no Bluetooth support for cars, no cut/paste, no MMS messaging.  Some have even pointed out that despite GPS support there will be no guided turn-by-turn navigation provided.

Regarding Navigation: Some have said that 3rd parties will use the SDK to solve that problem.  Ah, but read the terms of the SDK…no applications can provide navigational guidance using the SDK.  Why?  If you are aware of US carriers in telecom, you may notice that devices equipped with GPS all have an icon for directions – provided by TeleNav – provided as a monthly service fee of approximately USD $10 per month.  I think this is one area where the carriers won against apple in negotiations…to protect their own agreements and cross-revenue opportunities on services.

One thing that has bothered most developer geeks about the SDK is the lack of background processing.  Apple’s keynote has pulled a little of the 'these aren’t the droids you're looking for’ magic by stating battery life, blah blah blah.  Hey guess what…Blackberry does this just fine and has great battery life.  Is this an area of “we couldn’t get it done” for Apple?  How many think this will change?  I do.  If there is any plans for iChat to be on the device, it would have to be.  Rely on an middle messaging server to deliver what is effectively an SMS command and then prompt me to launch the app again?  Seriously?!  Is this another way of retaining the carrier’s service costs for messaging fees?

Have you ever noticed that Visual Voicemail is actually delivered as an SMS command to the phone with information on what that voice mail contains?

Another sore spot for developers was the lack of Flash on the device.  There has been some bickering from Adobe/Apple on this, but it still isn’t there.  Adobe has said in their last company call their execs have noted they have it working via SDK but would hope the software would eventually be a part of the iPhone software.  A similar request has been made to me by developers of ‘when will Silverlight be on the iPhone’?  Hey guess what, no plugins are allowed on the iPhone – let’s wait for Apple to change that first, then let’s talk…you can’t complain when the platform doesn’t allow it first!

And then comes Android.  When I first saw the video demonstration of this I was impressed.  It incorporates a lot of what modern devices have as well as what people like in the iPhone from a usability standpoint.  Oh, and it will be free and open source.  Some of the Open Handset Alliance have already announced devices with Android that might be available as soon as the end of this year!

Will Android be successful in mainstream?  That is a big question.  Why would I ask that?  Tim, it’s Google, they do everything right, how could you be so stupid?  But consider this.  What makes Apple so successful in their software implementations?  Their ad campaigns shed some light on this when they jab Windows.  They control everything…the entire channel from hardware design to implementation.  There are no other (legal) hardware providers creating iPods, iPhones or MacBooks.  What does this have to do with Android?  Well Android is an open source project that will directly affect consumers.  Most of the time I think we see open source projects that are hiding behind consumer services.  Take, for example, any web server running their site on Linux.  Sure that affects consumers visiting the site, but not directly…the HTML/rendering is what affects me…not the implications of the hardware.

Android will be literally in peoples’ hands.  There have been others that have done this successfully…like Sansa running Mono on their MP3 devices.  But how is this different?  Google isn’t providing the handset.  Will Android feel the same pains of the distribution channel that Windows does?  That being that you are providing an OS and don’t control the hardware that it resides on?  Android will be picked up by handset manufacturers and modified and tweaked and installed on various chipsets and handsets with differing peripherals that may not always comply to the specs or to what Android may expect.  Will that give Android a bad name when someone wants to put it on a device that is ‘minimum requirements’ (I hate minimum requirements---ever try anything on a min req machine…it never is a good experience)?  That remains to be seen.  Perhaps Google may have to do what they said they never would: the Google phone – to ensure that Android has one place where it can be guaranteed.

And when it does come out, will it beat iPhone even though it shares some similarities?  I’m not convinced.  Apple (and iPhone) have a culture behind it.  iPhone itself has become somewhat of a mnemonic.  If you have an iPhone, when you tell someone that you just took a picture, do you say “I took it with my phone” or do you say “I took it with my iPhone”?  I hear this all the time…I <fill-in-the-function> with my iPhone.  I never walk around saying “I took this with my Blackjack.”  This is an advantage Apple has over the market…the brand strength.  I took it with my Android.  Still doesn’t sound right.  Even the newest devices like the Samsung Instinct, HTC Diamond, etc. will not gain that level of brand recognition.

Where does all this leave developers?  Let’s see:

    • Apple – closed platform; closed hardware; Objective-C/Cocoa dev platform (OSX only for best tools); controlled distribution channel for apps;
    • Android – open platform; Java dev platform; tools everywhere; available for any hardware
    • Windows Mobile – open/closed platform; C++/.NET dev platform; tools everywhere (best tools on Windows); available for any licensed hardware vendor

What a minute, Windows Mobile an ‘open’ platform?!  Tim, you lie.  Well, I’m not sure the marketing teams would agree with my statement, but consider the facts.  Windows Mobile provides an operating system to device manufacturers to leverage.  We actually provide what we call “platform builder” and those who license Windows Mobile can customize and pick and choose what “Windows Mobile'” means to them.  Is it completely open to alter the base code of WinMo?  No.  But if you have ever picked up a phone that had WinMo from T-Mobile and one from AT&T and one from Verizon, you’ll see that it is not the exact replication across the board.  Those carriers have done some of their own customizations and added/altered some of the applications that exist.

Basically developers will have a choice…not a consistent choice by any means because each choice has a specific skill set.  I don’t know Java well enough that Android will be my choice, for example.  But if it is compelling enough, will that cause me to want to learn?  Who knows…

So what’s with my rant.  Who knows…just had some thoughts on mobile that I wanted to get out.  Carry on.

Related Blog Posts: