Macy's Brand to replace Filenes [www.businessweek.com]
09:03 PM, 28 Jul 2005 by Mark Aufflick Permalink | Comments (0)
Lars Rasmussen - Google Maps
Google maps came from a startup acquisition where Lars worked with his brother and two other developers. They were developing a native windows map navigation application and had been looking for funding. There is an interesting story about how they ended up being acquired by Google rather than recieving wad loads of VC funding, but I will wait for Lars' approval before I post that one.
The thing is, Google is a web company so Larry Page (Google co-founder) asked what they could do with mapping on the web. In a way perhaps not dissimilar to "sound by monday", they had to come up with something fast. Split into two teams of two, while one pair investigated a plugin route, Lars and his brother investigated what could be done using DHTML and javascript. That prototype became Google maps as we know it today.
Out of that history, Lars has an interesting viewpoint on the difference between producing a native application versus a rich web application. Here are some bullet points paraphrased from his slides and talk:
- Consider integration between native app and web app to deliver both convenience and richness
- The native sexiness not available to web apps will shrink
- Explosive growth in 1 day is unlikely for downloadable applications
- Google: The only thing that is required is that something is useful to users
- If you can attract large numbers of users, there will always be a way to monetise it
- End user is royalty
- Go beyond the browser Lowest common denominator - the functionality and implementation doesn't have to be the same for all browsers
- eg: overlay direction lines: in firefox is a generated at the backend as a transparent png; in IE it is done with vml
- Do what it takes! Harness the power of optimism. If you're not crashing the browser, you're not pushing it hard enough.
- Launch early & often; harness the power of your users to get attention and market feedback - Google maps got around 5,000 emails a day when it launched
- Web applications allow rapid fault resolution
- The pain of cross platform/browser web development is still far less than the pain of cross platform native application development
- Web deployment allows rapid deployment of bug fixes which in turn allows earlier (ie. riskier) releases
Lars then gave us a short insight into some of the implementation details including the map tiling and hidden iframe based navigation.
- A problem is that you are doing things beyond the design intentions of the browser eg. forward/back/print buttons
- When you are implementing application sexiness, you need to be careful not to break the simplicity of the browsing experience.
- Harness/Link the forward and back buttons to what the user would expect - try it in IE/google maps. Removes the need for popups
- Google implementation: content navigation happens in an iframe - the iframe browsing history are recorded within the IE history, as does the content of edit fields (not true in all browsers)
- attached an event handler to the iframe, when it changes, put that content into the main page, hide the iframe (I assume the link still needs to target the iframe), also need handler to copy the input field from the copy back into the iframe
- when copying the content, the urls are rewritten to target the iframe
Lars also spoke about the rise of google map hacks, the problems that lead to with their content providers and, as we know, the happy ending that is the google map API. There are some interesting outcomes of public access to your code (which is unavoidable with a jaascript based product).
- www.busmonster.com
- bloggers will describe your design more accurately than your design document
- you WILL be reverse engineered - design your models and publish an API to avoid the pain & encoourage a community to build around you [Mark's thought, not from Lars' slides]
- rss feed to code.google.com featured project link
- after 3 weeks of the api being published, there are 2,500 developers in the discussion group
Future Gazing
Short term
- renewed interest in AJAX
Long term
- increased access to host machine resources
- better development tools
- secure 'greasemonkey' like extensions (loaded javascript has the same access as the viewed page eg. cookies) - the browser needs a richer security model
- need more flexibility to control the behaviour of the next/back/print/save buttons etc.
- But: need to maintain the simplicity of 'surfing' experience
- Choose a development model that suits your application
- demo's have a much bigger impact within google that requirements document
- the process becomes more formal as the product becomes more mature (& therefore has more to protect)
- Google mission statement: organising information.
Sorry for the unstructured nature of these notes - they are a copy/paste from my outliner - I will try to improve them soon!.
Update: CNet have posted an article on Lars' keynote ( Google mapper: Take browsers to the limit). It reads nicer, just like a real journalist wrote it (as opposed to me!). It always astounds me though, just how innacurate an image you can get of someone's message when it is wrapped with hyperbole like "As such, Rasmussen remains disappointed with Google Earth" (which he is not) and inserted words like "Google is looking for Web mapping experts to beef up its Sydney office" (all he said during the keynote is that they are hiring, and actually they are looking for machine learning and data mining experts).
05:15 PM, 28 Jul 2005 by Mark Aufflick Permalink | Comments (0)
Archive
| July 2005 | ||||||
| S | M | T | W | T | F | S |
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 | ||||||
March 2012
February 2012
November 2011
October 2011
April 2011
March 2011
January 2011
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
February 2009
January 2009
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
March 2008
February 2008
January 2008
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
January 2004
December 2003
November 2003
October 2003
September 2003
August 2003
Blog Categories
software (40)..cocoa (21)
..heads up 'tunes (5)
..ruby (6)
..lisp (4)
..perl (4)
..openacs (1)
mac (21)
embedded (2)
..microprocessor (2)
..avr (1)
electronics (3)
design (1)
photography (26)
..black and white (6)
..A day in Sydney (18)
..The Daily Shoot (6)
food (2)
Book Review (2)
Notifications
Request notifications






