A great weekend after a long time. Well, call it weird but my definition of ‘great’ here does include spending full Saturday on google devfest(D3vf3st, as they decided to call it) and then the night on a party whose duration overlapped with the wee hours.
The dev-fest was something I was looking forward to intently since the very moment I received the confirmation mail, which was about a couple of weeks back. The conference was divided into sections ranging from Android, Google Apps, HTML5, Chrome, GAE aspects and few more. As for me, I was primarily interested in Android and GAE. After the keynote lecture on UI patterns of HoneyComb and some amazing features(read powers) of HTML5, the lectures began.
The first one was on the Android Market by Tony Chan who delved into the factors that can make or break an application in the Market and what are the various tools developers can utilize to get maximum benefits out of their application. Since I already have deployed an application on the market (:smug smirk), I knew about most of the stuff being talked about. But at the same time, there were many tips he suggested that one should pay attention to while deploying the app. For example, I did not know that once an app has been released as free, it cannot be made paid whereas the reverse option is available. Also it is a good idea to explain in the app description as to why a particular permission is being asked by the app. Rest was more of the usual stuff which everyone knows but choses to ignore, especially when developing just for the pleasure of it. Tips in this category include the likes of, yes you guessed it, making a good UI, building relationships with user and monitoring user comments. All in all a good set of useful pointers on what to do and what not to.
Mr. Chan continued with android talk after the break, this time on Fragments and ADK. Since I have zero exposure to an android tablet, I was totally oblivious of the awesome concept of Fragments that was introduced in Honecomb version. As is obvious, this feature has been added by taking into consideration the large screen available in tablets as compared to smart phones. I found the design philosophy very similar to that of GWT in that it enables the developer to make a complete application in only one activity. This is achieved by making inter-fragment calls that pass through the parent activity so that the activity knows about its fragments. Much like GWT, where an entire application is housed in one web page and AJAX calls decide and monitor the flow of application. This was a huge shift for me from the usual concept of activities, which are just like pages calling other pages by passing relevant data. The concept is pretty powerful and, as expected, compatibility libraries are available so that even phone applications can be built using fragments only and when the application is installed on a tablet, it will behave in a manner it supposed to on a large screen.
The second half of the lecture was on ADK and which went more into the USB protocols used for handshaking with an external device and how the messages are passed between the controller and peripheral that is connected. The demo was build on an Aurdrino board that had all the sensors a phone has.
After this were a couple of lectures by Alfred Fuller on GAE, building apps on it and what are the built in services available that relieves the user of worrying about infrastructure (like storage, prediction, big query, app identity etc). These concepts where explained in the due course of the presentation. I won’t go too deep into this part as it will make this post too technical to be posted in this category (and also because I found android talks way cooler…no offense).
After the lecture on Fusion Tables, I was confused about attending one of two lectures which were to follow simultaneously after that. One being on the Partner Talks by Zomato and Phototour.in and other on DevTools Tips and Tricks for Chrome. Intuition came to rescue and I decided to attend the former, which I later figured out, was exactly what I should have done. This session involved representatives from two small companies telling us how they started off with a particular idea and, most importantly, what are the pitfalls that we should be careful about when treading the same path. This was a welcome deviation into practical applications of android tools, techniques and concepts. In a short span of 45 minutes I found out more about improving my apps than I could have after hours of blog and tutorial scraping. These were the people who have done things and knew how NOT to do them again.
The final lecture was again more of theoretical one, describing Honeycomb UI patterns and how to use them. This included ActionBar, MultiPane Layout, Application Navigation, Fragments and Beyond the List. Nifty bunch of ideas on how to maximize the screen usage, enrich user experience, how to make UI intuitive and various other DO’s and DONT’s regarding designing and deploying the apps.
This was the first time after getting out of college that I said I was tired of attending lectures the whole day only to find out later that this wasn’t the only thing that was ‘like college’ I was about to experience that day. The after party, much to my surprise, bore the same colors.
Spent the sunday with friends and family and worked on a few things like integrating ACRA, playing around with DDMS and tweaking this website. So all in all, did everything that was on the agenda for a while. Although there is one thing that I actually could not do and have eventually left it for good after spending a lot of time and energy on it. It was about developing an app for facebook and I couldn’t cross the ‘hello world!’ barrier. Before commenting on this, for your sake, try doing that and I owe you a treat if you can come up with a working example in one day 😛