Google Chrome Design Principles

Many of you would have read the Google Chrome comic-strip and also would have test driven the browser. I have been following few blog posts...

Many of you would have read the Google Chrome comic-strip and also would have test driven the browser. I have been following few blog posts that have been discussing the technical and business impact but let's take a moment and look at some of the fundamental architectural design principles behind this browser and its impact on the ecosystem of web developers.
  • Embrace uncertainty and chaos: Google does not expect people to play nice. There are billions of pages with unique code and rendering all of them perfectly is not what Google is after. Instead Chrome puts people in charge of shutting down pages (applications) that do not behave. Empowering people to pick what they want and allow them to filter out the bad experience is a great design approach.
  • Support the journey from pages to applications to the cloud: Google embraced the fact that the web is transitioning from pages to applications. Google took an application-centric approach to design the core architecture of Chrome and turned it into a gateway to the cloud and yet maintained the tab metaphor to help users transition through this journey.
  • Scale through parallelism: Chrome's architecture makes each application a separate process. This architecture would allow Chrome to better tap into the multi-core architecture if it gets enough help from an underlying operating system. Not choosing a multi-threaded architecture reinforces the fact that parallelism on the multi-core is the only way to scale. I see an opportunity in designing a multi-core adaptation layer for Chrome to improve process-context switching since it still relies on a scheduler to get access to a CPU core.
  • Don't change developers' behavior: JavaScript still dominates the web design. Instead of asking developers to code differently Google actually accelerated Javascript via their V8 virtual machine. One of the major adoption challenges of parallel computing is to compose applications to utilize the multi-core architecture. This composition requires developers to acquire and apply new skill set to write code differently.
  • Practice traditional wisdom: Java introduced a really good garbage collector that was part of the core language from day one and did not require developers to explicitly manage memory. Java also had a sandbox model for the Applets (client-side runtime) that made Applets secured. Google recognized this traditional wisdom and applied the same concepts to Javascript to make Chrome secured and memory-efficient.
  • Growing up as an organization: The Chrome team collaborated with Android to pick up webkit and did not build one on their own (actually this is not a common thing at Google). They used their existing search infrastructure to find the most relevant pages and tested Chrome against them. This makes it a good 80-20 browser (80% of the people always visit the same 20% of the pages). This approach demonstrates a high degree of cross-pollination. Google is growing up as an organization!

COMMENTS

Name

3D,1,acquisition,3,agile,2,algorithms,2,Amazon,4,analytics,6,Apple,3,architecture,5,augmented reality,2,behavioral economics,1,BI,6,big data,29,Black Swan,1,books,1,bottom of the pyramid,3,branding,1,brazil,1,channels,1,cloud,68,Cloud Computing,7,cognitive psychology,2,collaboration,3,collaborative filtering,5,conference,3,creativity,3,CRM,2,crowdsourcing,2,data centers,3,data science,9,database,5,design,13,design thinking,17,dropbox,1,education,2,enterprise software,26,entrepreneurs,12,eula,1,experience design,3,facebook,1,freemium,1,gamification,3,Google,7,hadoop,3,healthcare,1,hiring,1,Iaas,3,india,1,innovation,16,intellectual property,1,interaction design,2,IoT,1,machine learning,2,management,9,marketing,1,meetings,1,microblogging,1,Microsoft,2,millenial,1,mobile,9,music,1,network effect,5,NewSQL,1,nosql,9,OEM,1,open source,3,outsourcing,1,paas,9,parallel computing,2,platform,4,polygot,1,power laws,1,privacy,1,private cloud,1,product management,5,prototyping,2,psychology,2,public policy,1,RDBMS,1,recommendation systems,2,REST,2,retail,1,RIM,1,SaaS,24,sales,4,security,4,SOA,2,social,25,sports,1,strategy,21,sustainability,8,talent,2,telcos,4,tos,1,Twitter,5,usability,1,user experience,3,virtualization,5,voting machine,2,web 2.0,1,
ltr
item
Cloud Computing: Google Chrome Design Principles
Google Chrome Design Principles
Cloud Computing
https://hereiscloudcomputing.blogspot.com/2008/09/google-chrome-design-principles.html
https://hereiscloudcomputing.blogspot.com/
http://hereiscloudcomputing.blogspot.com/
http://hereiscloudcomputing.blogspot.com/2008/09/google-chrome-design-principles.html
true
4467119141698964002
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS CONTENT IS PREMIUM Please share to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy