Skip to main content

Why Google should give Google Phones to unemployed


As an act of unprecedented generosity (or desperation) Google decided to give gPhone to every attendee of Google IO conference. While I can certainly applaud Google for the move (as a direct benefactors, of casue) a few red lights start to flash on my technology-navigation dashboard:
1. Does gPhone lost so much ground to iPhone (in terms of applications) that desperate and costly measures are required?
2. If (1) is true, users will flock to iPhone and whatever Google trying to do to mitigate the situation will fail – iPhone will remain dominate cell phone technology(like Windows in consumer OS market) for a long while
3. If (2) is true, open source approach once again has to yield to commercial interests

Regardless of the Google motivating factors, the decision to give gPhones to Google conference attendees is flawed for a bunch reasons:
- Google IO attendees are Google fans already, they know about gPhone platform
- Conference attendees either write gPhone apps already or do not have interest in them – phone will not convert them
- Companies who pay conference registration fee, hotel and airfare can afford an unlock phone for developers

What they should do: Give it to unemployed!

How:
Engage government and EDD to reach unemployed software developers and give them the gPhone!

Why:
It will create a nice media complain and developers (with time on hands and a gPhone) will develop a number of applications to populate app directory. That, in turn, will translate to phone end-users experience and (with a short) time lag will be translating to new users on the platform.

Why 2:
Why did’t Google ask me? Hope they will do next time




And here are my (unedited and unorganized) notes from the conference sessions

Open Social Containers from Google:
- iGoogle (in home view, w. sandbox for developers)
- Gmail (nav view, provided as Lab feature at the moment)
- Calendars (in preview mode, nav+canvas view+ custom APi ext like google.calendar.showEvents)
- Wave (check it out!)

Sample: Quatermile gadget -> think about calories/food watchers

What makes gadget social:
· Leveraging social graph osaoi.people.get()
· Quick data entry using AJAX/Server communication with osapi.http.post[Google Visualization API + GWT]
· Dashboard View
· Container-specific extensions (opt)

How to grow/advertise social gadget:
· Container directory (iGoogle)
· Organic (share app/join team/use updates)
· Cross promote
· Adverte in other apps, etc
· Take to all Open Social Sites
· Create Mobile App that use the same data

Google App Engine (+ Java now!)
Container platform as services
HW/SW update
Scalable services via familiar/portable API
Get charge for what used – no dedicated hardware
Buildt-in App console
HTTP request limited to 30 sec, no server push
Request are run in sandbox environment
Jetty and Jasper(adapter to serv 2.5 API) on top of Google stack
Web.XML + Additional conf file
Optional SSL and Sessions

Google Services available for Google Web engine apps :
· Authentication-> Google Accts
· Data->Bigtable
· Caching->memcacheg
· Email->Gmail gateway
· Com.google.appengine.api
Demo:
http://java-demo.appspot.com/
Coming:
· Task queues
· Text search
· Incoming emails
· XMPP
· Large files


gMap Optimizations
Maps 3.0 – redesign with perf in mind
Use overlays instead of markers to show > 1000 markers (subclass GOverlay() class and draw inside it, use single CSS sprites!:)
Alt. solution – flash
Alt solution (>1000 overlays) clustering (to show size/loc of clusters). Use MarketClaster do clustering in JavaScript
http://code.google.com/qualify/ - take the test

SEO
- Use geo-targeting (note that .fr will not work for us users)
- Web server (IP) in location where it will serve users
- Shared hosting is OK
- Godaddy automatically link to web master tools (from API)
- New: crawler data will be available via API
- Content – good quality for users
- Navigation – search box, logical category navigation, how to get to home page, show what already visited or
- Shareable urls
- Describable file names
- Low-case urls
- Robots are case-sensitive
- Separate adult site content
- Important pages should be linked from home page
- Sitemaps
- Disallow login page/shopping cards, test from webamaster’s tools
- Create easily understood dynamically link structure (*ex: category=mobile, id=…) Google find ways to index only most relevant
- No session ID in the middle of the path! (it’s infinite for Google)
- No marks for what is expended on the page in URL!
- Descriptive name for links
- Do ajax, javascript on TOP of HTML
- Google will process OnClick content from now-on (but only if JavaScript is on the same page – not in the linked file!)
- If AJAX is used - create static link in addition!
- Text in Flash is visible and searchable but flash should be embedded in standard ways
- FRAMES and IFRAMES are interpreting within parent page (IFRAMES are treated as separate URLs thou)
- should include title, “descriptive” metadescription
- Title contains keyword
- No title duplication
- Keywords are important, adopt language of users
- For image search – text surrounding image, quality of images is important, ALT is very important as well as file names hyphen-separated, underscores will not be seen as word separated
- Video – static html, titles, popularity, comments, related, create video that is compelling to users. Uptime for site is important for video
- HTTP Response codes (404 when 404, 301 is OK too and keeps popularity). When site is down – use 503
- Webmaster tools, crawl errors
- Use custom 404 with link to search, home page, suggested pages
- Tweets – no ping service – should be linked to (unlike blogs) from other sites
- Reviews/comments – keep reviews on the same page as product
- Rich snippets marked in RDF – as microformat – to mark reviews http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html, http://www.google.com/support/webmasters/bin/answer.py?answer=146645


Google Waves (http://wave.google.com/)
Look at twave J
What is available?
- Protocol (described in white papers)
- API (code.google.com/apis/wave)
- Open Source/ref implementation that could be placed on top of DB
- Demo
- Platform (waveprotoclol.org)
Sounds like open-source SharePoint competitor… Especially when it will be possible to effectively integrate into company workflow

Comments

Popular posts from this blog

Facebook Friends Connect

Is a way to extend external sites to provide: FB identity FB friends (relationship) Feed to FB   Demo app at http://www.somethingtoputhere.com/therunaround User experience: login: js login method requiresession(): detects state of usr-FB relationship, log-in into FB if needed. If user has not authorised app - present app auth dialog. If already has session - just go init JS, require session   access FB data: - FBML on external site - use JS FBML parser and replace in browser DOM with FB data - JS based API to get FB data, REST API on the server site. Sessions work accross any API - only small subset of FBML us supported at the moment   adding social content: - use access API   Connections: app developers can suggest connections (using e-mail hash) user get connect request on FB Move content from external sites to FB app can register feed template (3 types of stories) call JS "showfeeddialog" to request user to confirm data sharing on FB. privacy protection: app ca

Posting to FaceBook feed using Graph API

Graph API was announced at F8 with a promise to dramatically simplify the FB API. I checked the read access over the new interface during the presentations and to my big surprise it worked flawlessly and from the first time. When I tried https://graph.facebook.com/facebook , JSON-formatted info about the FaceBook page was returned (as expected). Then I tried OAuth 2.0 way of accessing the API to post a message to the feed. And to my even bigger surprise it worked too! Here is what you need to do to access Graph API over OAuth: 1. Create a FB app, store app properties to a file: $appkey = '7925873fbfb5347e571744515a9d2804' ; $appsecret = 'THE SECRET' ; $canvas = 'http://apps.facebook.com/graphapi/' ; 2. Create a page that will prompt user the access permission (I am prompting for the publish_stream and offline_access permissions at the same time) //http://apps.facebook.com/graphapi/ require 'settings.php' ; $url = "https://graph.face

Ripple Baby Steps

Ripple and XPR What is Ripple for people in business and finance? Ripple is a currency exchange and payment settlement platform built using blockchain technology. Unlike Ethereum that is a more universal distributed application platform, Ripple solves a more narrow set of problems such as sending payments (similar to Bitcoin), currency remittance, payments for invoices, as well as number of other use cases related to payment in different currencies between parties that may or may not trust each other. Ripple is fast, scalable, and provides number of functions needed to support different payment scenarios. XPR is a native Ripple currency with a fixed and limited supply coins. 100 Billion XPR cryptocoins are in circulation today and the same number will be in circulation tomorrow.  What is Ripple for a software engineer?  For a software developer, Ripple is distributed ledger platform accessible trough API. There are number of libraries to accommodate different developers&#