Google reveals a few secrets powering Google+

Earlier in the week we promised more technical info on Google+ as we got it – and some of the developers working on the project have been talking about the technology stack and development processes that went into the product.

Development work started over a year ago now at the start of 2010. It has been cited that a highly agile and flexible approach to development has been taken throughout the entire project, with Googlers getting their hands on early builds soon after it started taking shape. This also explains why features and updates have been appearing on a nearly daily basis since the public announcement was made and the first people got in.

On the server side, as you may expect, Google+ is all Java. It uses a lot of libraries that Google developed and open sourced over the past few years, including many that were used in Google Wave, the now-defunct realtime app that nobody really knew what to do with. These libraries include Guice, a code cleanup tool designed to make writing Java easier; and GWT (Google Web Toolkit), another tool to ease writing Java web apps again open-sourced by Google.

On the client side, the HTML 5 history API is exploited to give cleaner URLs when using AJAX page navigation (a pleasing alternative to the dubious at best hash-bang approach commonly adopted). Closure is also widely used; it provides JavaScript optimisation, a JavaScript library for dealing with all kinds of common tasks in an optimal manner; a Java + JavaScript templating language which allows templates to be compiled either on the server or the client (great for highly interactive web pages), and styling guidelines.

Read more from one of the developers on Google+1 here.

You might also like...



Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“If debugging is the process of removing software bugs, then programming must be the process of putting them in.” - Edsger Dijkstra