First impressions of google wave

After few weeks of testing, here are my first impressions.

Google Wave is definitely something new and innovative.
I don’t think will replace the email or the chat, I see it more as a collaboration tool than a communication one, so I believe at the end will remain a (big) niche product for techies, perfect for some environments: trainings, schools, brainstorming, wikis, project collaboration maybe discussions, forums. Not a twitter-killer.

It could be a great tool for companies which can set a private google wave server and use it internally, for example.

I was favourably impressed by the user interface, if you consider it’s still a beta release. Not bad as first shot, new but also familiar. Maybe over complex for non techies, needs some tuning.

The biggest problem right now is that it’s still a closed preview. I sent out invitation to my friends but the process seems to take forever so i could use only the public waves. Therefore I could not really test the product till now.  I’ll come back to this point as soon as my invitations will be rolled out.

There are still many bugs and problems, not yet ready for the masses. Also, many important features are missing.

It’s slow. Too slow to chat. That’s a big problem.

Overall, I was a bit disappointed but, hey, it’s a beta so I’ll give it another chance with the next releases. let’s see.

Link: The War for the Web

An interesting post from Tim O’Reilly about the coming war for the web, all starting when Tim noticed that Facebook unlinked Twitter (and not only) links. And he mentions other examples in the war against the accepted rules of interoperability on the web: the AppleStore and Rupert Murdoch’s crusade against Google indexing the Wall Street Journal news.

The main takes:

If you’ve followed my thinking about Web 2.0 from the beginning, you know that I believe we are engaged in a long term project to build an internet operating system. […] In my talks over the years, I’ve argued that there are two models of operating system, which I have characterized as “One Ring to Rule Them All” and “Small Pieces Loosely Joined” .

[…]The first is the winner-takes-all world that we saw with Microsoft Windows on the PC, a world that promises simplicity and ease of use, but ends up diminishing user and developer choice as the operating system provider.

The second is an operating system that works like the Internet itself, like the web, and like open source operating systems like Linux: a world that is admittedly less polished, less controlled, but one that is profoundly generative of new innovations because anyone can bring new ideas to the market without having to ask permission of anyone.

[…] And so we’ve grown used to a world with one dominant search engine, one dominant online encyclopedia, one dominant online retailer, one dominant auction site, one dominant online classified site, and we’ve been readying ourselves for one dominant social network.

[…]It could be that everyone will figure out how to play nicely with each other, and we’ll see a continuation of the interoperable web model we’ve enjoyed for the past two decades. But I’m betting that things are going to get ugly. We’re heading into a war for control of the web. And in the end, it’s more than that, it’s a war against the web as an interoperable platform. Instead, we’re facing the prospect of Facebook as the platform, Apple as the platform, Google as the platform, Amazon as the platform, where big companies slug it out until one is king of the hill.

And it’s time for developers to take a stand. If you don’t want a repeat of the PC era, place your bets now on open systems. Don’t wait till it’s too late.

P.S. One prediction: Microsoft will emerge as a champion of the open web platform, supporting interoperable web services from many independent players, much as IBM emerged as the leading enterprise backer of Linux.


Google introduces new programming language: Go

Google appears to have just made public a new experimental language, called Go (weird, the name does not look a great choice from a search engine point of view …)

It is similar to the C language but with garbage collection and some elements of modern scripting languages as Python, including array slices and a map type with constructor syntax that looks like Python’s dictionary concept.

According to Google, Go offers an expressive type system, fast compilation, good performance, and built-in language features that simplify threaded programming and concurrency.

For example, parallelism: the language introduces the concept of “goroutines” which are executed concurrently. Any function can be executed as a goroutine by prefixing the function call with the “go” keyword. The language provides a “channel” mechanism that can be used to safely pass data in and out of goroutines.

My two cents: it will not replace C or C++ and will not be useful for embedded developers (Go has garbage collection and lacks pointer arithmetic, while C has explicit memory management and pointer arithmetic); so where is it aimed for? Just adding concurrency development to a C-like language? Or is an alternative to scripting languages but then, why?

Personally, I subscribe what Alex Iskold said:

I am a fan of Java and Object-Orientation, so new procedural languages sound like a thing of the past to me.

Link: mobile development for multiple platforms

An interesting article on ReadWriteWeb about writing mobile application for multiple platforms.

This has always been a problem, since developers have to write an application for many different devices, platforms.

There are many platforms out there and even if you write only for Symbian or J2ME or the newcomer Android you need to take into accounts different screen sizes, different input devices (touch screen? keyboard?), different memories and different accessories (has the device a GPS chip? Bluetooth? Has a fast wireless connection or a slow one?).
[Note: this is also explaining the popularity of the iPhone: same screen, only few devices; But … very small market share].

One way around it was to use a web application, accessible from the native browser, some could be really rich and interactive now. The problem here are the browser (mobile browsers have been historically less advanced than the desktop counterparts) and the fact that the experience still looks not so good as native applications (try it on the iPhone for example).

According to the article by Elia Freedman this is now changing thanks to the combination of HTML5, Flash and Javascript.
I am not a huge fan of Flash but I agree that HTML5 will help a lot to improve the experience and hopefully we are really at a turning point.