Why was DoubleClick not built with Google Closure Library?

981 views
Skip to first unread message

August Lilleaas

unread,
Oct 4, 2012, 3:42:15 AM10/4/12
to closure-lib...@googlegroups.com
The new DoubleClick is built with AngularJS, not Google Closure Library. Does anyone (google employees or not) know why? I'm curious, since Google Closure Library seems to be used on almost all single page apps built by Google except DoubleClick.

Note: it seems DoubleClick uses the compiler and the dependency system from Google Closure Compiler. www.youtube.com/watch?v=OkCik7SE3po, but as far as I can tell, that's about it.

August Lilleaas

unread,
Oct 4, 2012, 3:53:51 AM10/4/12
to closure-lib...@googlegroups.com
A quick update as I'm watching the video: DoubleClick is using the Closure Library for support utilities (isNumber etc etc).

So my question really is: why isn't DoubleClick using AngularJS in place of goog.ui.Component and friends?

Nick Santos

unread,
Oct 4, 2012, 10:52:16 AM10/4/12
to closure-lib...@googlegroups.com
AFAIR, the DoubleClick folks like data binding, and AngularJS has a
nice data binding framework. There are other things they mention in
the video.

Some of the problems angularJS solves (dependency injection, data
binding) are problems that have historically been explicit non-goals
for closure library. They are orthogonal in many ways.

relatedly, I always laugh when the tech press makes a big fuss over
"Why did team X use technology Y?", and then extrapolate that Larry
Page / Bill Gates / Zuckerberg must have sat down with the team and
made this decision as part of some grand new technical roadmap. the
reality is usually much more mundane.

Johannes Nel

unread,
Oct 4, 2012, 11:05:33 AM10/4/12
to closure-lib...@googlegroups.com
I was even amazed how few people in the london goog office knew closure, I get the feeling it is very much dependent in which office you are working.
--
j:pn
\\no comment

August Lilleaas

unread,
Oct 4, 2012, 11:54:56 AM10/4/12
to closure-lib...@googlegroups.com
Thanks for the insights, folks :)

Rhys Brett-Bowen

unread,
Oct 4, 2012, 6:05:08 PM10/4/12
to closure-lib...@googlegroups.com
Listening a bit to the talk it sounds like it's because Closure doesn't really have widgets like you can get for jquery and they were using angular for stucture and bindings (which is missing from the core). I'm unsure why they were using underscore instead of building those functions on top of the closure utilities - I guess that their engineers were just used to jquery and underscore so decided to go with that. I'm hoping that these sorts of tools can be build on top of the closure library so that everything works well together. I've already started some at https://github.com/rhysbrettbowen including an MVC, functional, jquery like interface, widgets (just started) and othersand I'm hoping that going forward more people will open up their creations that will rival those that can't be compiled in advance mode.
Message has been deleted

Daniel Steigerwald

unread,
Oct 4, 2012, 8:49:15 PM10/4/12
to closure-lib...@googlegroups.com
I also made a framework based on Google Closure, except it's not just MVC framework but also full-fledged dev stack, with unit tests... and lot of more.

I am currently finishing TodoMVC example with a lot of nice features:

it's ready for touch devices (tap event)
clean design (no service locators, no global state etc., factories, DI)
nice event registration syntax, event delegation included
este.storage.Local with support for models and collections
common js promises pattern implemented via nice closure result interface
non destructive innerHTML update
validations on models

Reply all
Reply to author
Forward
0 new messages