Thursday, May 29, 2008

Google IO Conference - Day 2


From day 1 registration

I'm going to let this one ride all the way as it (I'm not big on spelling corrections, etc..)  I've typed enough notes today and I'll have to take another look at it tomorrow and perhaps then make additions and/or corrections.

Enjoy, KP

Day 2 begins with Keynote speaker Marissa Mayer, Vice President of Search and User Experience talking about "Imagination, Immediacy and Innovation... plus a little glimpse under the hood at Google"

Blah, blah, blah, laughter, blah, blah blah nothing we have not heard before for those that have seen the TV documentary.

Here's a cool fact I noticed..  The main stage has the Google IO logo and the left and right are top and bottom like so


            1  1111
            1  1  1          
01001001    1  1  1   01001001
01001111    1  1111   01001111

The bottom left and right are displayed as black dots and white dots in a set of eight or Binary to ASCII that is "IO" which is a nice little play on the whole Google IO thing.  (??Hint: Times Squaring the Circle???)

Ok back to the keynote: This story Marissa is telling is the one about Google Home Page A/B testing and returning more than 20 results with the end result being "It's not about the number of results but it's about the speed at which those results are delivered."  Nothing that I didn't already know.  What crazes me about this is that they cite a falloff based on speed when it is a know fact that user percentages that go beyond page two of  a search fall off considerably.  With today's faster net speeds there is no way you will convince me that this is not about advertising $$ based on this logic.

I didn't know about the Swedish Chef Easter Egg. (Egg's and Hoaxes)


Note: There are more laptops here that I have ever seen before at a conference.  It looks like 90% of the people here are wired in.

Note2: The provided WiFi is not keeping up with demand so I am glad I am putting these notes together in Windows Live Writer.

Note3: The told us that all the sessions will be online next week (I guess that means videos will be online.)

Note 4: Open Social API gadgets.util.sanitizeHtml() for HTML cleanup and protection.  Funny thing is that you can find this in the version .8 release notes but not in the API reference.

Note 5: Need power strips everywhere considering the number of laptops here.  The future is having a good laptop and conferences will continue to have more and more laptop percentages.

Note 6: I hear there are around/over 3000 persons here.  I think 2/3rds of the group are using Mac's and the rest a mix of PC's, Mids,iPhones, other mobile types.

Note 7: I need to get a sitemap so sites like Google can better find out content.

Note 8: Images from Google IO 2008 (tagged with the io2008 tag)

Note 9: I keep seeing something called hi5 mentioned with this logo

  and along with that and a few other OpenSocial containers.

Note 10: Tons of people taking pictures of slides in lectures and even saw a few webcams recording or broadcasting perhaps...  Hmm I wonder if I would blue-screen my T61 if I try a Yahoo Broadcast. I better save this document first.


For my session lineup today:


Session 1: I picked "HTML5, Brought to You by Gears" - Speaker Aaron Boodman - (Room 1)

One other interesting note is that I think most of yesterday's sessions I picked were in smaller rooms that did not fill.  This session is in a double size room and packed tight onto the floors as well.

Gears and HTML5 web standards - Gears is incrementally implementing HTML5 standards as they release new and exciting features.  They consider themselves ahead of the curve on this because they are doing things that are being set as standards later on.  This means they have to come back and the adhere to the accepted approach that gets put forts by bodies like the W3C.

Gears core functions are is typically wrapped in their own JavaScript Namespaces so they can later fix the underpinnings to be HTML5 compliant.

The DB demo that they were going to show didn't work which was kind of annoying IMHO. Ok with some help from the crowd they did get it finally working.  Basically it was a demo of native implementation of the new HTML5 DB API using Safari 3.n and then switched to using Gears which in essence makes it backwards compatible with older browsers not yet supporting HTML5 DB.


Session 2: OpenSocial, OpenID, and OAuth: Oh, My! (Room 4) - Joseph Smarr -

I was going to go to "A World Beyond AJAX: Accessing Google's API's from Flash and other Non-JavaScript Environments - Speaker Vadim Spivak - (Room 9)" but I think those are things I could learn for myself so I picked the OpenSocial,OpenId track in hope of getting a future Intel integration up and running.

OpenID enables one place storage of Personal Profile information and allowing sharing that information with websites that you trust.  (Note: I don't honestly understand what this speaker is suggesting here using the Google offerings.)

My interest in the OpenSocial side of this talk is honestly nill and I am more interested in knowing more about the OpenID and OAuth integration points.   

Joseph mentions that all social apps are broken or act like silos.  I tend to agree with that.  OpenID would be a good thing for to work out.  Hell for that matter working with Google Auth would make about 1000x better.

Crumb I think this whole Social web talk was an excuse to show us Plaxo (From their site Plaxo is about the be bought by Comcast.) I have heard all I care to hear about OpenSocial and what it is and I thought this talk was going to be about OpenID integration process steps etc..  When the frick is Joseph going to dive into OpenID and OAuth? 

I'm personally not very excited about ever allowing third parties to access my online address book or personal details beyond the information I wish to give.  The thought putting all my interconnections in one place thinks that it creates a ripe place for thievery or scam.

Finally a two second mention about XRDS but so far that was it.

This was not really a session for developers.



Session 3: Inside the Android Application Framework
(Room 3) - Android Engineering Team -


APK Runs on a single process

Activities - Concrete API

Task - are a Runtime Sequence of Activities - Tasks can span Activities

Process Basics - One per APK - By default one thread per process and all APK run within that thread. Process is started for a given UserId

Activities Lifecycle -

  1. Starting Up (Created(), onStart(), onRestart(),onResume())
  2. Normal Execution (onFreeze(),onPause())
  3. Shutdown (onStop(),onDestroy())

Example Lifecycle -When a child Activity is launched

Live sucker...


Die sucker


Threads and Loops - Loopers Assume they are associated with a single process and are not intended to be thread safe. Loopers cannot tolerate multi-threaded access and must use message passing/handlers instead.

The thread handling was quite interesting


Process Resource Management

Only three process run as root

  1. init
  2. Zygote
  3. main runtime

To connect distinct process's, for that process you have explicitly expose it via Services API and Inter-process communication bridges.

Dalvik VM - The Virtual Machine that hosts a running Android Application instance running in a single process.



Session (Long break): I plan to take a break now instead of a session to see all the offerings on the main display floor..  I will tell what I see and what piqued me here later...


Google Health API - Google Health TOS gets around normal HIPAA requirements (If you create, transmit, or display health or other information while using Google Health, you may provide only information that you own or have the right to use. When you provide your information through Google Health, you give Google a license to use and distribute it in connection with Google Health and other Google services. However, Google may only use health information you provide as permitted by the Google Health Privacy Policy, your Sharing Authorization, and applicable law. Google is not a "covered entity" under the Health Insurance Portability and Accountability Act of 1996 and the regulations promulgated thereunder ("HIPAA"). As a result, HIPAA does not apply to the transmission of health information by Google to any third party.)


Google AJAX Libraries API - Provides hosting and loader for various JavaScript Libraries and a loader for my favorite jQuery -


I met Vadim Spivak the person who put together the hosting of all these various OpenSource JavaScript libraries and gained a few insights into the loader mechanisms.  You can now reference your favorite JS library directly from Google CDN but for even better loading speed Vadim recommends you use the .load() API in the HEAD section with explicit versioning (actually does a document.write) which will get you the file from cache servers much faster than direct linking.  Cool detail to know.


Session: Creating a Client Side Search Engine with Gears - Brad Neuberg -

What would be very cool to get out of this session would be the ability to take our Intel CD system (internally called Redfort at Intel) offline for and make it searchable.  Imagine thousands of technical documents at your fingertips for easy reference.

Demo was awesome..  Brad showed a web app that loaded a text document containing URI's of E-Books.  This app parsed and pulled all those E-Books local and then provided a search interface that used FTS2 (Full Text Search2) Gears API function to search the entire database and return results.  Wow!!!

Sample used Gears threads to do all the work making the app run without stuttering.  Brad's explanations were excellent and he showed a lot of code which was very cool.  I'm not a Dojo fan but between Dojo,Google style code and jQuery, I think I will learn more about those first two.  Different style and approaches teach a person more than just knowing one style of coding.

The project is not available for download as it is not completed but I did find a Google reference that led me to gears-pubtools (confirmed, it will be there when it is completed.)

Kick Azz demo for sure and I will look forward to see it.


Kevin Pirkl

No comments:

Blog Archive