Yesterday I was at DotJS with some Nuxeo folks because, you know, JavaScript is the new shit. So we need to stay up to date and we could also get some ideas for blog posts. It was quite interesting.

You were thrown off guard right at the beginning when Sylvain Zimmer, who was our MC for the day, asked us to introduce ourselves to our neighbors. They do this at every dot conference and it's actually quite cool. It sets everybody in the right mood.

Addy Osmani had the difficult task to open the conference. He talked about JS tooling, Web Components, Polymer, about building big applications in HTML. One of the first things he showed was complex tags. Basically you hide complexity in a single HTML tag. Funny how it feels like JSF, only closer to the browser.

He also talked about the modern front end developer workflow, about the Grunt, Bower, Yeoman triptych. We started using it at Nuxeo and it does makes life easier. We actually plan to build a Yeoman generator for several basic JavaScript Nuxeo applications.

The Nuxeo Crew The Nuxeo Crew

I think my favorite talk of the day was given by Guillermo Rauch. I strongly recommend that you go through his slidedeck, it's already online. The title speaks for itself: The need for speed - Single-page apps. Optimistic UIs. Reactivity.

It's about the benefits you'll gain from building applications closer to the browser, using the browser as a platform. And it's also about the perception of speed. Changing the layout of your page when the users starts an action will give an impression of speed. He took the Google landing page as an example. When you start typing something in the search box, the layout changes immediately, even if the search query is not over. This still gives an impression of speed, and you don't have to display a lousy spinner or hourglass.. Seriously, go through his slidedeck, it's great.

As a more general feeling, many speakers talked about the JavaScript tooling, to make JS easier to work with, easier to learn. Some went further and used languages that compile to JS. It feels like everybody wants to use the the browser as a platform, but are stuck with the native, cross-browser language that is JS. And everybody is trying to change that, whether by enhancing tooling, creating new web languages or enhancing JS virtual machines. Let's just hope every browser vendor will find some common ground!