I put together the notes from various technical lectures I have attended in the last two weeks. (Includes the ever-fabulous Google IO.)
1. GTUG meetup, 4 May 2011
2. Hacker DoJo Meetup on Mobile Web APIs, 5 May 2011
3. Bootcamp (Google's prelude to GoogleIO), 9 May 2011
4. Google IO, 10, 11 May 2011
("IO" might mean "Innovation in the Open")
At Google IO:
We all got a free Samsung galaxy tablet!
I got a Bugdroid stuffed animal for attending every year. See picture of Bugdroid with Buddy above.
We all get a Chromebook mailed to us June 15!!!
HTML 5
There is a new attribute for input tag: input type = "text" speech
JS runs in the same thread as the browser UI.
A worker is a way to run a block of JS as a background process to the main browser.
A binary attribute is true if it is there. Example: required in an input tag
Tool: modernizr
html5rocks.com/tutorials/file/filesystem
html5-intro.appspot.com
google.com/chromeframe
http://css3please.com/
Khronos.org/webgl/wiki/tutorial
Feature detection vs. modernizr
html 5 geolocation
object tag replaces applet tag
Types of storage in an HTML 5 web app:
localstorage
sessionstorage
appcache(to act like an installed app)
indexeddb(future)
localstorage stores only text only for one domain in a certain place. No browser will execute code from that localstorage so it is secure (supposedly.)
Htmlfivewow.com
Files, graphics, audio
Blob URL , blob builder,window.requestfilesystem()
Html5terminalshell
in svg an image has it's own Dom
even 3d support in webgl
Mobile
Common logic and contract to respond to user events for each device
Distinct form factors and distinct states are in common
Distinct states are defined in CSS
LESS is a framework (sort of like a CSS++)
html5historyapi to handle the back button for the user.
Window.pushstate()
Jquery, modernizr, formfactorjs, leviroutes
Closure Tools
Consist of library, templates, compiler (minifier and static checking, managing dependencies with script tags.)
Developing a Rich Internet Application (RIA) requires use of one of these:
1) java or flash plugin – hassle for user to download
2) GWT framework – proegrammer is too far from the metal
3) writing lots of JS - best
Closure is used to build Gmail, maps,docs, sites, books, reader, blogger, ....
Challenges of JS:
No namespaces, no visibility controls, no type system, no static checking, no built-in support for templates
Closure tools solve these.
$$escapeHtml() Stops js insertion. Templating does that automatically for you.
Closure templates include DOM, String and i18n utilities.
Chrome
Webgl. Frames per second is the way they measure performance
open web
Chrome web store, angry birds and other apps can work offline
Angry birds is made with GWT and hosted on App Engine
Ro.me "3 dreams of black"
Chromebook
instant on, 8 second boot, always connected. cr-48 pilot program resulted in the chromebook product.
Hardware software together will be leased:
For business: $28 per user per month
For education: $20 per user per month
Google.com/chromebook
Hybrid App
Native app loads the browser which runs the web page
gives you compass, accelerometer, camera
But you can use the js api for the map features.
There's an article on this in code.google.com called
"hybrid android/js api"
Google Apps Script
It is a javascript engine in the cloud, lets you access various Google APIs in an easy way,
-access other apis like Twitter too
-no prob with authentication
-google's goal: anyone can script
-you can expose a script through a web app, when the user invokes a url.
-different triggers determine when a script gets executed.
-apps script has its own editor
To learn Google APIs:
code.google.com/apis/explorer
1) look at docs, 2) use api explorer, 3) experiment
Maps API's
4 choices of API:
Google Maps API
Google Maps on iPhone (doesn't have much)
Google Maps on Android
Static Maps API v3
can be run by any browser, lightweight and fast, fewer features
one long URL where you send in a bunch of parameters
New Google Consumer Products
Market.android.com has movie rental now
Music beta stores your music in the cloud, so there is no synching
Caches music you recently play so you can listen offline
Add up to 20,000 songs you own to your library for free right now
Music.google.com
ADK and android open accessories is based on arduino
Accessories.android.com
android at home
Tungsten speakers that can play music directly from the cloud
Miscellaneous
Google fusion tables
AppLaud tutorial
mobiledevelopersolutions.com
Get Google maps on jquery mobile doesn't work very well,
need jquery google maps plugin
appmobi.com
"code search data api" looks for open source functions
Oauth 2 makes it so user doesn't have to login
REST 101 is a collection of resources
Mod_pagespeed to automatically make websites faster, download to apache server
Alexa 1000 is the list of top 1000 websites
androidacademy.com
pubsubhubub - server to server publish/subscribe protocol
Programming well with others (Ben & Fitz show)
Think about how you work with a team, not how brilliant you are alone
High risk to working alone for too long becuase you might be on the wrong track
Leader instead of manager?
Dan Pink: autonomy, mastery, purpose
"Don't feed the energy creature" usenet addage meaning don't respond to flames.
Perception is 9/10 of the law
Q & A:
Question: How does the data in a db (like Zappos) get indexed by Google?
Answer: Google crawlers interact with the website to pull all the data out of it. Also, many websites provide an API to make this more possible.
Web developers should use microdata in their sites to provide Google the ability to find rich snippets from these sites to display as search results.
Sitemap also helps Google find rich snippets
Google.com/webmasters/tools
Question: Is there a rule of thumb about whether to use JS or CSS for behaviors and effects?
Answer: User interaction -> js
Presentation-> css
Title attribute for tool tips -> html
Question: Which is better: Eclipse or Chrome web tools?
Answer : Chrome web inspector : temporary way to debug, not save.
Firefox has firebug that works as well as chrome.
But chrome has better security and updates.
Chromium
Eclipse is good as the editor
1 Comments:
http://www.youtube.com/user/GoogleDevelopers has the official Google I/O videos --- just like being there!
Les Faby
Post a Comment
<< Home