A notch above a monkey

Quo vadis, Nokia

It’s been a month since I got an iPod touch as a present and I’ve been using it regularly since. I still have and use both a Nokia N65 phone and Nokia N770 tablet , but use of later has been diminished in last month.

iPod touch experience

I can’t help not to think of Touch as basically this decade’s Palm organizer. Thin widget with pleasant user experience that can be extended with myriad of applications, whose developers are — judging by iPhone versions — limited not by their imagination, but with device capabilities and limited expandability.

I still don’t like its on-screen keyboard and wish I had at least something like Graffiti . Hence I don’t write on it anything longer than two sentences and together with lack of camera, built-in microphone, GPS, Bluetooth or even just self-made software, it makes Touch a read-mainly device. Consumer device would be another, more ghastly, but appropriate description.

As a side note, even my now aged N770 tablet is more friendly to creators and hence I still find use for it. I just don’t want to browse web on it because of its very very dated browser that can’t be updated.

Still, even with annoying limitations I like iPod touch a lot. It’s hard not to with its polished interface and an App Store that is probably its killer application. Choice of applications in Slovenia is more limited than in USA, but still very wide and downloading them is so easy and cheap, you might have to fight against developing an addiction to it.

So what about Nokia?

Mobile devices space has become really interesting in last year. iPhone, iPod touch, Android with G1 and upcoming Palm Pre are finally bringing experience on web and otherwise, that we were promised years ago. But what this list lacks is any gadgets from Nokia.

I like Nokia. They had friendliest phones that are remarkably open in industry that likes to control everything. I think their tablets are great, even with shortcomings that should be resolved by now. But even with lots of innovation I get an impression that they are lagging behind.

As a complete outsider who only passingly follows what is happening in mobile industry, I can only ignorantly speculate about its reasons and plans.

I believe first problem for Nokia is that unlike Palm , Apple or even Google it’s not a niche player and tries to build phone for every possible user. It releases them too often. Taken together it is no wonder that just Nokia Europe lists 115 devices that are either selling now, were recently or will be in near future.

That’s too many devices, each with slightly different software, that create a very fragmented market. In such environment you can’t really hope that application would be pushing phones capabilities which aren’t there in most cases. Hence applications Nokia offers are not nearly as exciting as what Apple has.

Next problem presents development environment, which is simply awful. Symbian might have been a nice platform back when, but its time has passed and I doubt open-sourcing it will help. Java hardly works better, but it’s probably a bit nicer to use even though it feels slower. Python is nice for tinkering, but not really an option until it becomes pre-installed. There’s also a web runtime, which is mostly missing. Few phones support it and only one phone available can use it for something more significant than a window to web.

Much of what I just said is not true for tablets, but historically they didn’t seem to get much love from company. Too bad, since I think they are one of the most exiciting things Nokia has.

I do remain an optimist. Purchase and relicensing of Qt together with its upcoming S60 version signals that company is aware of development problems. Qt also offers a possibility of a framework that could be used everywhere and hopefully this will include Fremantle. Generally I don’t put too much faith in rumors, but some of them give credible hints that next tablet could be even better than an already great N810. If it also brings a distribution model comparable to App Store and a bit more polish, then it could be a big success even with non-geeks.

But what they need to do in my opinion is spend less time trying to build all encompassing services like Ovi and spend more effort in building amazing devices that integrate well with what is already out there. And by integration I don’t mean an app hidden in some folder on phone. Upload to Flickr should be available right after you took a photo. I also wish they didn’t try to leverage existing platform and users so much and were more daring and forward looking. If platform you have is stopping you from developing a phone you want, then find or develop a better one.

Until then I am sticking with what I got. A great phone for my needs that few match and a couple of nice tablets.

IE6 - hope of web standards

I often find myself in a room with web developers and at least one of them proclaiming that IE6 sucks because it doesn’t support web standards while others nod in agreement.

This has bothered me enough to contemplate having a talk at BarCamp Ljubljana . I didn’t, but this is what I would say.

Internet Explorer 6 was released on 27th August 2001, when twin towers were still standing in NY.

7 years is a long time to remember, but what did we work with back then? There was no Safari and Firefox was still in its infacy, far from 1.0 release coming 3 years later. It was changing so often most developers simply ignored it. Opera was at version 5 (version 6 came out in November of that year) and I am sure I am not alone in remembering how awful it was at least until version 7 in 2003. Mozilla was at version 0.6 and although showing great promise, IE6 definitely was the browser we hoped others would match.

Back then no browser supported CSS2 in a meaningful capacity. Opera had the best support for CSS until then, but IE6 surpassed it. It didn’t support DOM Level 2, which was standardized only 4 months before first beta of IE6. Good excuse not available anymore to IE7 and IE8. Apart from that it supported more or less everything web developer could want back then and then some. IE6 problem isn’t so much that it didn’t support standards of its time as it is that it doesn’t support standards of today.

So why the hostility?

Lancia Delta Integrale , which dominated rally competitions in eighties, is today an obsolete car, but car aficionados still have a soft sport for it. You don’t hear them go around complaining how it doesn’t meet standards of todays cars.

Well, as I’ve said, 7 years is a long time and most web developers are not old gits like me, so the historic context isn’t there. We also have to live with its real shortcomings today. But I think there’s more to this.

Complaining about IE6 standards deficiencies is declaring who you are and where you stand. It’s a simple and very recognizable way of declaring you are a member of web-standards tribe. IE6 bitching has at least as much to do with proclaimer as with proclamation’s subject. Trashing IE6 isn’t so much talking about the browser as it is talking about you.

However it is not unreasonable to ask why IE6 doesn’t better support standards that were released or updated after its initial release.

Certainly more could be done through software updates, but are standards themselves forward looking in a way that would avoid updating browser internals with every new version of a particular standard?

I am quite certain that this isn’t always possible. I don’t see how you could add a video object from HTML5 to a browser without explicit support from browser’s developers. But not all changes are such as John Allsopp has recently pointed out.

I have mixed feelings about HTML5. It’s bringing much needed new capabilities and lots of goodies, but I also think Sam Ruby has a point. New, simple, DOCTYPE is reduced to a switch between standards and quirks mode and unless it will become more complicated in later revisions, it won’t offer an easy way to distinguish between HTML5 documents and other HTML versions. This isn’t a particular problem if newer revisions will be backwards compatible with older, but this isn’t true even of HTML5. Why would we think this is the last version where we will make a major misstep that needs backwards-incompatible correction?

There are other things I don’t like about HTML5, but if I would have to pick one thing I would like to see changed, is to make it more extendable.

To sum it up, IE6 is indeed a problem in todays development, but it’s also at least at fault for this. It was an excellent browser when it came out and is remarkably solid one for software so old. There are many reasons, completely untouched in this post, why its users don’t migrate to something newer, but we, web developers, are also to blame, because we tend to standardize only current practice and leave few doors open for future development which invariably comes.

Simplifying registration forms

As I am leaving on a short vacation that will probably take me off grid for few days, there is still a time for a hopefully short, but definitely last post of this year. I don’t like how registration forms ask me twice for password and I think I can offer a better way.

Most registration forms these days still want you to type password of your choice twice. They probably do it to reduce risk of mistyping it. I deeply dislike Facebook, but I think this is one thing it got right . You only have to do it once. Those with FB accounts can see this in action if they log out for a moment and visit front page.

There are several reasons why once is enough. First one is that every decent page provides a way to reset password in case you have forgotten it. So even if password was mistyped, it’s easy to reset it again to a different value. Second reason is that by now it’s quite well known that most people use a low single-digit number of passwords and don’t come up with a new one each time they are asked to do so. Hence it’s quite unlikely they’ll make an error now after so much practice.

Third reason is that in most cases you can help them .

When registration forms first appeared internet access was rare and expensive enough that most common environment in which it was used was work or school. It was therefore likely that when you were registering for a service, you weren’t alone and entered password had to be hidden from people around you. Today it’s probably opposite. Most of the time I am quite private and could see what I type with no additional security risk.

So as in demo we could offer a switch that let visitors see what they are typing if they choose to do so. It should still be hidden by default, since we can’t really tell the environment visitor is in or if Javascript is available. It is always better to err on side of safety.

As a side note for those who might have peaked at implementation. I’m replacing password input field because of Internet Explorer, which doesn’t tolerate type attribute change on input fields. Every other browser tested (FF, Opera, Safari and Chrome) would work perfectly fine by just switching field type from password to text.

Anyhow, that’s it for this year. If you leave a comment, which I hope you will, and I don’t answer, it’s because I lack Internet access.