Your SlideShare is downloading. ×
Jonathon Rochelle @ FOWA Feb 07
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Jonathon Rochelle @ FOWA Feb 07

3,293
views

Published on

Jonathan Rochelle of Google speaking at Future of Web Apps in London, February 2007.

Jonathan Rochelle of Google speaking at Future of Web Apps in London, February 2007.

Published in: Technology, News & Politics

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,293
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
59
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. How and Why We Built Google Docs & Spreadsheets Jonathan Rochelle Product Manager Presenter Name 1 Title 1 Presenter Name 2 Title2 Google Confidential and Proprietary 1
  • 2. Agenda • Background, History, Key Feature Goals • Quick Demo • General Architecture • Decisions, Decisions • Lessons Learned Expect: Focus on Spreadsheets…. Product Manager view… Google Confidential and Proprietary 2
  • 3. “When will we….” “We have nothing to announce at this time” Google Confidential and Proprietary 3
  • 4. History – How it all began… • Step 1 of any good product: … Pick a killer cool name! “Google… d use onf …Docs… ill be c dy w obo …&… …and… n ast at le…Spreadsheets” !! … Google Confidential and Proprietary 4
  • 5. History of Google Docs & Spreadsheets • Who Cares?... It’s actually a Start-up Acquisition story… • 2005 – 2Web Technologies / XL2Web joins Google. • Mar 2006 – Upstartle / Writely joins Google. • Jun 2006 – Google Spreadsheets lauched in Labs • Aug 2006 – Writely Re-opens registration (mostly Googlised) • Oct 2006 – Google Docs & Spreadsheets Launched • Feb 2007 – 14 languages… Google Confidential and Proprietary 5
  • 6. Background: Why Google Docs & Spreadsheets • It actually fits well with our mission… • “Organize My Information… and… • Make it Accessible and Useful… • With whomever I choose (and nobody else, thanks)” • IOW…. • Do-it-yourself Content Creation • Accepted/Familiar Interface of Spreadsheets and Documents • Accessibility from anywhere (…connected) • Easy-to-use Collaboration • Do-it-yourself Community Creation • It’s not “On the web”… it “Is the web”… Google Confidential and Proprietary 6
  • 7. Key Target Features • Collaboration with others on the same document/spreadsheet • In Real-time... Without proliferation of versions / copies (email, etc) • Online Storage - Accessible “Anywhere”. • Publishing • People who already create content become publishers. • API for development of specific-use apps • The collaborative UI component of any product • To extend features offered • To integrate with 3rd party products • To offer new vertical applications Google Confidential and Proprietary 7
  • 8. One Overriding Product Goal… EASY TO USE be Google Confidential and Proprietary 8
  • 9. Quick Demo • Google Docs & Spreadsheets Google Confidential and Proprietary 9
  • 10. … a screen shot from the end of the last demo Google Confidential and Proprietary 10
  • 11. General Architecture • Server-side calculation engine – lighten the client… • Ajax client • Collaboration Layer • Storage Layer • Infrastructure & Shared Services (aka “everything else”) Google’s infrastructure provides “cheap scale”…. ….. just add water (machines)… The team stays focused on features and integration. Google Confidential and Proprietary 11
  • 12. Ajax Client • Well-defined communication protocol to server • Push calculation logic to the server side • Browser challenges… (heavy sigh) • Perceived speed – pay me now or pay me later… • Ajax stinks! • Ajax is great! • Event triggering hell… • Nice browser-based UI! • 300k web pages! • No Plug-ins! • Experimentation at best… • Multi-Platform via the Browser! Google Confidential and Proprietary 12
  • 13. Decisions, Decisions… • Who is our initial user? The Spreadsheet user or the person who could use spreadsheets but doesn’t yet know it? • What are the must have V1 features? • Collaboration features – rich conflict resolution or simple “trust me” collaboration • Integration Choices (which Google products, when?) • Technical Decisions: • Storage services… which fits best? • Stateful vs. stateless • “Homing” – how to split the load and give high resiliency. Google Confidential and Proprietary 13
  • 14. Feedback from the Users • Give us more specific features: • Freeze Columns, Drag&Drop, Range Names, Cross Spreadsheet links, Autofilter,Charting, etc… • Give us improvements to current features: • More sorting options, more edit controls, more ACL controls, easier inserting rows, Copy / Paste issues, group invitations, etc… • Give us integration with more Google (and non-google) services… • “…but, we’re not whining!... We love this product!” • “This product has changed our lives” • “we don’t know how we managed without the product” Google Confidential and Proprietary 14
  • 15. Lessons Learned (part 1) • Get UI help… and get it early • UI Innovation can make a stellar success (or failure) • Front-end code is very dependent on the desired UI behaviors • Users don’t enjoy guessing what icons mean. – PM’s do not make good icons. Choose a Font Wrap Text Share Clear Format Elevator Doors Closing / Opening Merge / Un-merge Cells Google Confidential and Proprietary 15
  • 16. Lessons Learned (part 2) • Test new ideas with users early… • Nobody cared to “Pan” their spreadsheet like a map. • Use Test Harnesses, Automation and Benchmarks - early • This works on the client side and server side. • Key for us in early Ajax experimentation, and re-testing • Speed is critical • Performance improvements can ALWAYS be made... – Hint: Get someone important to say “it’s too slow” • Compromise (i.e. kill) those cool, but un-used features… Google Confidential and Proprietary 16
  • 17. Lessons Learned (part 3) • The needs of the many outweigh the needs of the few… or the one… • …even if that “one” is currently signing your paycheck… • Get User Feedback… and Use it as a key input to feature plans • Sometimes insight does NOT come from the user • Our biggest example was immediate/Real-time collaboration • User Data is sacred. • Don’t ever give users a reason not to trust your product (even internal users) Google Confidential and Proprietary 17
  • 18. Lessons Learned (part 4) • Provide a very specific value that users can describe • “it’s amazing! I must be able to use this somewhere!” … …is very different than • “it’s amazing! This product will improve productivity by 80%!” • Focus on features which align with your product’s value • For example, collaboration and sharing are critical to Google Docs & Spreadsheets. • Talk to users… • Gather plenty from early users - if they represent your target • Look for new targets/angles/verticals as the product is used Google Confidential and Proprietary 18
  • 19. Final Lesson Learned • The team is the most important thing • Have partners • Pick the right partners – Shared vision – Complementary skills, covering all the necessary activities • Build a great team – Never compromise • Don’t hire for everything - Buy services – Don’t always assume you have to do it yourself. Google Confidential and Proprietary 19
  • 20. Q&A • Google Docs & Spreadsheets: •http://docs.google.com • Google APIs: •http://code.google.com • Spreadsheets API: •http://code.google.com/apis/spreadsheets/overview.html Google Confidential and Proprietary 20