Web Applications

After being in a radio show (german) about web browsers recently and reading all that hype about client side web applications, I got more and more thinking. I can’t see really the use case now and I wonder if I’m that alone with this opinion. But let me explain my thoughts on it.

For now there are several kinds of client side web applications. There are text processors, photo managing tools, presentation slides editors, spreadsheets etc etc. But is there a real use for them. Personally I’d rather have my text processor on my hard disk, I’m also not processing my camera RAW pictures in a web browser and so on. For all of these serious tasks there is already software exactly suited for the job. Its hard to imagine that one day an online text processor would outperform Word, Pages or even editors like Textmate or Eclipse.

There is also no real advantage to do these kind of tasks within the browser. Even the software, although it is distributed directly through the net, is practically on your hard disk and the whole purpose and the recent efforts are about making these web applications run in your browser even when you’re offline.

So your work is kind of stored on your machine within the browser context, the software you’re using is on your machine and you don’t even have to be online to work with it. It just doesn’t sound like a web application.

The whole point of doing something in the web is to connect people and information. There were plenty of implementations of Hypertext prior to its premiere in the world wide web. Bringing this concept to the web also brought a very useful extension. Rather than creating local hyperlinks only you could set hyperlinks to completely different servers across the whole planet. You could connect information that was impossible to connect before. The web is also a lot about communication these days. Look at these endless lists of online communities or projects like twitter. Its about connecting people, sharing and distributing information.

A word processor simply doesn’t make sense within the web context without making explicitly use of these features of the web which I just mentioned. Now managing my photos online only makes sense if I want to share them. Flickr is the perfect example for that. You have a very good chance improving flickrs user experience by using frameworks like the recently hyped sproutcore to make everything look like serious application environment but it is only an enhancement to a service that had no desktop equivalent before.

Webmail is kind of the same story, told from a different angle. There are a lot of desktop mail client applications. Still there are also a lot of webmail interfaces out there. GMail is probably one of the most famous ones as its making heavy use of client side javascript to make the whole interface feel like an application rather than like a website. Webmail has several reasons why it exists. You need webmail when you travel without your own computer and you want to check mails. But that is only because your mails are online. You have to go online to work with the medium mail.

So when there is a web application that is more or less cloning an existing desktop application without adding capabilities that are unique to the web environment, it is completely useless. Why I create my presentation with a 10 times slower version of keynote online? Why would I edit my photos online where I have limited tools and therefor limited possibilities? Why would anyone re-implement the Desktop itself in a web application when it has no features could really need?

Check the EyeOS Website. I mean hello? When I read about it I imagined a person who doesn’t have a graphical operating system but wants to have a desktop like look and feel on the screen. This person than decides to install a browser in order to use EyeOS’s web based desktop. Thats the only use case I can come up with. They’ve entirely forgotten what the web is and what it is good for.

In the end your favorite web application is currently not available due some stability or scaling issues or maybe both. Now you’re sitting there, can’t edit your documents, can’t manage your mails, can’t work with your photos, can’t access your bookmarks etc etc. In this scenario you got one new major dependency to able to work. It isn’t enough that your computer works and that you have the proper software installed, you must also hope to get a decent internet connection without people in the same cloud sucking all the precious bandwidth with their heavy downloads etc.

I know I’m exaggerating here quite a bit. Apologies.

My point is that I’m not against the idea of client side web application. Not at all – the recent developments and achievements are truly awesome. in fact, before writing this post I played around with sproutcore. I’m just against this whole hype of cloning the desktop experience into the web without any sense for the web itself. I think we should rather focus on enhancing and developing present and new concepts which progressively explore the possibilities the web offers for us. Think Wikipedia not Word. Think flickr not iPhoto. Sync, aggregate, share and communicate over the web rather than building self contained and therefor boring and uninteresting islands.

I mean sure, Keynote or iPhoto in the web browser is impressive but – yeah – thats basically it. Wikipedia is a lot more impressive, even with a old school interface.

But we’ll see how far everything goes, with client side storage and all that. In my opinion though the whole “software distributed through the browser” thing is as visionary or useful as the 3D desktop.

Wettermanipulation am 30.05.2008 um 6:00 ?

Irgendwie gab es heute morgen um 6:00 Uhr auf sämtlichen Regenradarbildern eine Anomalie.

WetterOnline

Wetter.com

unknown

Wikipedia: Wettermanipulation

strange.

Wüsste gern was da passiert ist.

My favourite Ruby (on Rails) Books

I’ve read a couple of Ruby and Ruby on Rails books now and for those who wonder which book is right for them, I want to give recommendations.

Ruby Books:

My favourite ruby book is the “The Ruby Programming Language” from O’Reillys shelf. It is written by David Flanagan (author of Javascript, The Definitive Guide) and Matz himself. This book is like a Definitive Guide but its not as heavy as the Javascript version as it is “only” 430 pages thick.
The big benefit of this book is that it covers all the new stuff from Ruby 1.9. I also like that it completely leaves out any kind of tutorial like part. It’s really all you need to know. Well written and reference like.

My second favourite book is from Addison Wesley and its called “The Ruby Way”. With 888 Pages this is even more like the definitive guide but there are some minor things that I don’t like about this book. So minor I won’t even mention them. If I had to chose between the O’Reilly book and this one I’d choose both.

The third book I can recommend is the Pragmatic book. This one is more for beginners as it starts with a tutorial that gives you a somewhat playful insight into the world of ruby. But once you’ve read this book and want to know more you will put this book aside and consider the previously mentioned ones.

Rails Books:

Same here. I’d highly recommend the Addison Wesley book “The Rails Way” because it is more like a reference to Rails and covers each aspect with way more details than the famous Pragmatic book which again starts with a tutorial that takes up half of the book. Its a very good and easy start for early Rails developers but it leaves so many questions open that you will definitly need another one. In this case – take the Addison Wesley one.

One of my ideas became reality – without me: Port of the Processing language to JavaScript and Canvas

A couple of semesters ago, when i was still enrolled ad UdK I’ve had the idea of porting processing to javascript. I wanted to use SVG instead of canvas but at that time canvas wasn’t really that big. I’ve never had the time to pursue that idea because I was busy with lots of other things but today I’ve read on that someone had the same idea and actually realized it. See here:

Port of the Processing language to JavaScript and Canvas

The results also look pretty cool – not sure if I would’ve been able to get it to this level. Thumbs up for another project that uses web technologies completely out of their initial scope of use cases.

Updates, really

I haven’t forgotten my weblog. It’s just that if you have lots of stuff to blog about, you don’t really have time to do it. At least that’s the case here.

On monday for example, I booted my very first computer. I was kind of late though so its a pretty decent machine compared to what most of my friends had. It’s a Apple Macintosh Performa 6200 with a stunning, Pentium smoking 75 MHz PowerPC, 24MB Ram and 500 MB HDD. I got this thing 1995 I believe, so it’s 13 years old and it was running almost every day since because my dad was still using it after I got a new computer. He used Filmaker 3.0 for writing bills and keeping track of customers. He ran it until last monday when I was at my parents and thought that it might be a good idea to finally transfer all his sensible data to another machine. The HDD would fail some day and I wanted to prevent an emergency call. But there was a problem. This machine had almost no useful interfaces to retrieve the data. There’s no USB, no Firewire, no Ethernet – nothing! It has a SCSI connector but I don’t have any SCSI capable machines anymore. So I took my computer to the CCCB in order to remove the HDD and plug it into a new machine. The Performa 6200 was one of the first Macs which got an IDE HDD instead of SCSI. I was hoping that I could simply put it into an old G4 desktop in order to copy the files. It turned out though, that at the time they shipped the Performa, Apple was formatting the HDDs in their factory in a special way. This was changed late but appearently my disk was special because no modern computer I connected it to was able or willing to show me the files. Meanwhile I was thinking that I might destroyed the filesystem by putting it in the G4.

I didn’t bring the 15″ screen, the ADB Mouse and Keyboard with me, so I couldn’t boot it. After I got the missing pieces from my parents I connected everything and my Mac booted as it used to be:

My first Computer

It was like christmas. Or my birthday when I got my Mac. I went through all my files, played F/A 18 Hornet 2.0, Cyclone II and Rescue and was smiling all over my face.

Then I connected my old Syquest EZ 135 Drive with 135 MB cartriges via the SCSI port to backup my dads files. A friend then retrieved the files via his old mac which had a 10 MBit ethernet port. Now Filemaker 9 Pro was even able to convert the 3.0 database files and everything went through successfully. Now I can keep my first computer and play F/A 18 Hornet with it.

By the way, if someone out there really wants to make me happy – buy me this game: http://www.graphsim.com/games-fa18-oif.html

After all these emotions I have to say that this computer still looks nice on my desktop. Imagine a 13 years old PC box! The Performa case is well designed. Doesn’t look like it is that old. I can even connect a TFT display so everything looks real crisp.

The machine never had any problems. The battery faded out but it can be replaced. It was really worth the money.