Saturday, 13 June 2009

After Google I/O 2009

This year Google I/O held on may 27-28 at Moscone West. The registration was closed over a week before and there was more 4000 attendees which I was also luckly in them. Actually my San Francisco trip started a day before joining Google Technology User Group Party at San Francisco where I also had a small presentation.

Google I/O started great, google managed to build so many products and made so many API's available that they really had much to show us. The keynote started with the demonstrations from Google App Engine, GWT2, HTML5 and of course the Android. Actually the moment they mention about Android they also offered us free HTC Magic Android phones so that we wont suffer with emulators. Google is really very generaus and bold in such stuff. Actually when they say that they have more suprises for the next day expectations are set to so high, I was expecting a free macbook to make us work on GWT2, some other people were expecting them to hire us all.
The food, bewerages and the party were all great. When you are in a google organised event you always feel the 'unlimited'. Coffee? it was like a local starbucks inside the moscone operating all the time (unlike javaOne), food? no one asks for a ticket like javaOne you can eat as much and many times as you want. Drinks all unlimited. Even the confrence guide, google announced the will only provide soft copies to be environment friendly but you need a hard copy? they have more printers than a big office building to let you print your own copy in color! When they do that they really make you feel they do it for the environment not to cut down the costs for the conference (i am sure printing one for everyone would cost much less then setting and operating individual printers). Thats the way, the details Google makes you feel they are not evil and honest.
Here are some key points from the conference;

HTML5, seems great! You want to play a video? no need for flash player or jvm or anything just use the new Video tag and let your browser to do the job. The new browsers will also have ability to use hardware components such as GPU! In keynote google demonstraed a 3D application which is directly using the GPU letting the CPU stay as low as %5-10. Seems like with HTML5 need for Javascript will be much less with the new tags and fuctionalities.
Google App Engine, finally got the Java support and out of beta stage. Actually i also published stuff on app engine's java support and it looks really promising. To use app engine the first thing you must consider is to denormalise your database and use Google's BigTable. According to google joins are the main problem for the performance so to get rid of them you must implement BigTable's approach. When people ask about BigTable's performance, scability..etc, Google's answer was simple and fair enough... "we indexed the world with BigTable, all our apps use bigTable, just use it and leave the rest to us...".
GWT team will release version 2 soon and the improvements are awesome! async loading and detailed compiler reports let you know which packages loaded when so that you can fine tune and lower the startup sometimes much more than 10 times less! Results are great, and google also introduced us the Google Wave to prove us that big projects can be built with GWT. As someone who is interested, working, presenting and even teaching on Rich Client platforms, I must admit Google is really make me questioning my beliefs. They are doing great with simple html and javascript on GWT which is now as good as any rich client platform like JavaFX, Flex... etc.
Chrome is a great browser! It is my first choice as long as I work on windows but since I use either MacOS or linux there is no way i can use it. Even in presentations at I/O most of the presenters were using mac books so they used other browsers instead. Come on Google it can't be that hard, I am really waiting for Chrome for Mac!
Android, is really out and ready to rock! As a iphone user I will be very cruel to critisize android, it is definetly not a iphone but definitely the most closest thing ever and can really offer much more time to time. The app market is getting more advanced and soon will attrach more developers. Thanks to google I had the opportunity to use a HTC Magic running Android with unlimited call and data plan during my visit. Want to know where is best buy located in San Francisco just type "best buy san francisco" to the google search boc on the desktop, the browser opens automatically with best buy"s link with an option of "get directions". Just click that and maps application is triggered from the browser and shows you the way! Find the product you are looking for buy not sure if it is the cheapest one? scan the barcode using the cam and the barcode app triggers the browser directly searching for only the barcodes and showing you all matching products. This barcode application was also used during the conference to scan each others conference badge to get others contact details directly to the phonebook. The integration is great! Since apple is using such a closed box principle and not letting running apps background I can't even imagine such a functionality on iphone! iphone is still more capable with thanks to hardware but I believe with a such a open and flexible operating system, very soon more Android compatible phones will be out and as the hardware evolves one day we can really see the real iphone killer. For now Android devices are great compatitor but iphone is easier and may be a little more fun.
Guice, is very fun and easy to use and if you are on app engine just take it without even questioning! As their session name in JavaOne, Enterprise Java is fun again with Guice!
...and finally the Google Wave, for the ones who didn't watch the presentation, Wave is what email would be if it was designed today. It is built with GWT, letting fast startup and incredible rich interfaces and functionality. Can it replace email? well the question should be: does google want to replace email? if they do, yes wave can replace email, social sites, blogs, office and even ms project! and the most dangerous part for the competitors is google can replace each of them by offering great compability and integration but in long term this great integration and compabilty can really make other producuts to become useless and dissolve.
Sometimes I feel like Google is taking over the world just like in the SkyNet does in Terminator movies (I am not saying this in a bad way or sayingthey are evil or bad). They have so many products, apis, tools and services all look like just a small or medium sized fun project but actually is a part of a very big huge project and just acting its part (such as Guice). They didn't buy youTube to make profit on that, they needed the services for other products so they have it now. I really feel like when morning i will wake up and see from my phone to my computer everything would be running on and connected to Google services. As long as they keep the "Don't be Evil" promise (and give away free phones :) ) actually I am ok with them to control everything.
Every session I attended or didnt because it clashes with another is available online! Just go and watch, you will definetly like it!
Oh Microsoft you are in much more trouble than you think you are :) Great job Google!

ps. any one interested in joining Goggle Technology User Group Istanbul? go and get subscribed!