Wednesday 27 July 2011

Browsers & Apps

I have hated with a passion applications that use a browser / HTML interface since the very first time I had the misfortune to use one. Clunky, unfriendly - a complete step back in development of decent user interfaces. Browser based front ends make command line interfaces look like a massive step forward in the evolution of computer - human interfaces! I am constantly amazed at the stupidity exhibited by the apologists. It was all about having a 'thin client'. What rubbish - never heard of Moore's Law? The advantages of having a shared back end database is obvious. But writing a front end via a browser where the original rules were written by Microsoft - forget it!

One of the very first Internet based applications I ever used was online chess - the Internet chess club - 1999 possibly. Everything happened online via a custom built interface that was really superb. In those days I used to have a list of adjudications a mile long for people who pretended to have network problems when they were losing! It was a brilliant interface and was a joy to use.

Then more and more Applets, JavaScript, asp and all sorts of other horrible ways of implementing browser based applications appeared. Java is OK as languages go but let's face it, an interpreted language which is what it is regardless of how you dress it up, is always going to be painfully slow and unwieldy. One size fits all can only work when the 'all' side of the equation is standardised to a greater extent than we have so far achieved.

Back in 2003 I found myself at a loose end as the hitherto reliable contract Market for developers dried up. I regard this year as my 'annus horribilis' - not only no work but I did my back in, my hair started receding, all hair started getting greyer and any new growth of hair was always in the wrong places! By the end of the 10 months without work I was actually looking for work outside IT.

However what I did do at this time was teach myself OO and UML and I developed a system for running the fantasy football league which I was running for my local pub. It was written using Microsoft Vbasic with the .net framework. My idea was to market it as an app and use an Internet based database (MySql) as the back end so that people could run any sport based fantasy league online. I still have somewhere all my UML class diagrams and some of them actually got implemented! I also had plans for a nutrition app to allow people to work out their calorie consumption using back end nutrition databases, a system for using the IMDB via a local windows based app and several other similar ideas. All abandoned once I got my next contract which ended up as a permanent job.

But does this remind you of anything? You got it - iPhone and iPad and android apps! You don't use a browser interface anymore, you write an app! The app uses the Internet but does not rely on a kludgy browser based user interface - heaven! Why has this idea not yet extended to Windows / Mac machines? Not having looked maybe programming for the iPhone / iPad / android is easier. Perhaps I should get unemployed again - might make some money now!