For various reasons I’ve found myself with some spare time on my hands and decided it would be a good time to read up on and practice my data structures. My last job (JS SWE @ NDS [♥ acronyms]) sadly included little practice with advanced data structures, so I was kind of out of practice. Thinking in a testable mindset (which is something I should do while coding, btw) I decided to practice it in Java. Sadly, both my own Java skills and the language itself make that an annoying experience with frustrating debuggers, slow response, and lots of boilerplate oh no that’s not the proper way to instantiate a non-Generic abstract type — curmudgeons, we’re not here to practice syntax, we’re here to practice theory! This is why I fell in love with JS in the first place. It took me a while to break a surprising mental barrier and decide to just get on with it and implement it in JS anyway. It would be faster, funner development iteration doing it, and I might as well just focus on JS anyway, seeing as I would probably not be looking for Java work anytime soon.
I was/am amazed at the folks at Google continuously raising the bar. I do need to point out this project seems on the lower end of Google’s what-we-care-about ladder; the documentation contains some typos and the demos (or perhaps the library itself!) contained some easy-to-spot bugs. Well, this less-than-complete-perfection is only noteworthy by Google’s standards anyway, I guess.
I was also happy/impressed to see JS getting some full-fledged 3rd-party support for major operations. A decent 3rd-party implementation for data structures and major operable classes (including UI widgets, as JS is heavily used in View context) was to be expected, and I’m surprised I haven’t heard of it before. (Wikipedia says Closure is around since 2009, which isn’t that long ago, but isn’t exactly yesterday either). Perhaps I’m the only one new to the game, and these are my standard first steps in entering the web development world.
Via: Closure Tools — Google Developers.