I had the opportunity to speak and attend FullStack 2015 organised by Skills Matter and hosted at their CodeNode location in central London. It was a great experience and it’s clear that JavaScript is everywhere and permeating every aspect of technology today! It was no surprise that ES6/ES2015 and TypeScript were popping up in every conversation. Even at a full-stack conference, the front-end seemed to get a lot of focus, most likely because everyone is challenged with improving the web experience.

The keynote speaker on Day One was Remy Sharp who discussed the challenges he has faced with JSBin, something he created as a side project. To be honest, it was a somewhat depressing talk on how something you create and feel passionate about can turn against you and be an anchor around your neck. Other takeaways were that family changes a lot for engineers and it’s imperative to know your limits and where you need help and assistance. I found the talk very engaging and took a lot away from it on a personal level.

The second talk I attended was titled New Generation of Front End Architectures by Luca Mezzalira. He went through a brief history of MVC, MVP, MVVM, DCI, Flux and then touched on what he was calling MVI or multi-view intent. He indicated that the core of it was communicating sequential processes (CSP) along with transducers. Both Go and Clojure have native implementations of CSP, which have provided the reference to js-csp. Essentially, it feels like a pattern for using ES6 Generators (and in fact, js-csp requires support for Generators in some fashion to run). While it is an interesting pattern, I think it is just one tool in what might be part of a larger application pattern and needs more time in the oven to be fully baked.

The Day Two keynote was by Addy Osmani, the well known engineer from Google who works on open web tooling. Addy gave a Chrome DevTools Deep Dive. I was wholly impressed and hadn’t fully appreciated how far dev tooling has come. I learned a huge amount about how tooling can really help pinpoint the performance challenges for your applications. I think any self-respecting, front-end engineer needs to have a good grasp on performance tooling that can be had with Chrome and should watch this presentation.

I then attended Jack Franklin’s talk on writing ES6 applications today. Given where our focus is at SitePen, I didn’t learn anything new, but it did help me clarify some thoughts about an approach to educating others on the benefits and usage of ES6.

Then came the big moment and it was time to give my talk! The concept of a “caveman coder” had been bouncing around my head for a while, the mode when software engineers are the most dangerous to an organisation. I believe we can take steps as individuals and as teams to help defend us against the “bash on the code and commit” mentality we sometimes fall into. My talk was well-received so hopefully people were able to take away a few things that will benefit themselves and their team. The full video of the presentation is available:

Again, I was surprised at the greater focus on the front-end this year. I wonder if this is because so much is changing or if we over-indexed on server-side JavaScript, as a community, for the past couple of years to the neglect of the front-end. The conference had a really good vibe and, of course, CodeNode has a great, new facility for SkillsMatter events. When in London, you should really check out an event at their location.

Overall, the conference validated that several areas where we have been helping our customers overcome challenges of the changing web landscape are primary concerns for many. In particular, ES6/ES2015 and TypeScript can deliver significant upsides however, getting off on the right foot and adopting it in an effective way makes all the difference. Along with ES6 and TypeScript, we provide consulting and commercial support on a wide range of JavaScript technologies and can share applicable knowledge and expertise to ensure the success of your upcoming web initiatives. Feel free to contact us to discuss how we can help!