At SimpleClick, we encourage our team to visit industry-related conferences that take their fancy. In December, Matt and Tyler hopped on the Eurostar to attend the dotJS conference in Paris! Tyler Marshall tells us about their trip and what he took away.
Here’s a summary of some of my favourite talks from the two days I spent there:
Chris Heilmann spoke about developers who are tool builders and how they should try to improve developer experience, like hinting that a particular method is deprecated, or suggesting a simpler way to write a line of code. He was arguing the fact that developers used to be the geeks who got picked on, then we were the rockstars people admired, and now we’re the people others get angry at and blame when their lightning fast app stops working. He made a statement saying we’ve become fullstack overflow developers; when something doesn’t work, we often copy a solution from stack overflow and sometimes don’t even modify it for our needs. This is when he emphasized that our development tools should come in to play here to make suggestions and notify us that the code we have ‘written’, isn’t secure/efficient/valid/etc.
If you’re familiar with Angular 1 and Angular 2, you’ll know that there was uproar when Google released Angular 2. So many companies, projects and developers were using Angular 1 that when Angular 2 came out, everyone was expecting to just upgrade their version without any problems. However, Angular 2 is actually a complete rewrite and works entirely differently. People had to either fully re-write their code base to now use Angular 2, or stick with Angular 1 and suffer the inevitable lack of long-term support coming their way. Igor Minar is the lead engineer on the Angular project at Google and had to suffer the blowback from the community as a result. He then made it his mission to ensure that Angular 2 would be an evergreen library, where upgrading would be as seamless as possible and older, deprecated versions would be supported whilst providing the developer with the new replaced solution and the reasons for doing so. He said that he felt that they had really made progress with Angular 2, and that it took a company called KSM 30 working days to upgrade their Angular 1 code, whereas it only took them 1 day to fully update their entire Angular 2 codebase to the latest version.
Phil Hawksworth from Netlify gave an interesting talk about serverless and static sites. These are websites that, unlike dynamic sites, are pre-built and delivered without changes being made on the server. That doesn’t mean they cannot have dynamic capabilities, it just means that the website is made up of a set of pre-built files that are directly served on request. However, anytime content needs to be updated, the website will need to be ‘rebuilt’ which is when a new, automated deployment will run, containing the new content for the site. Phil’s talk really interested me. I’d heard of static and serverless sites before but never looked into it much until now. It’s something that isn’t perfect for every use case, but when it is appropriate, it is a very powerful tool that comes with some serious benefits like lightning fast load times.
Probably one of the most thought-provoking talks during the conference was given by Asim Hussain from Microsoft about how we can reduce our carbon emission by reducing how much electricity we waste. He told us how electricity consumption is obviously a huge contribution to climate change, and that wasting electricity emits carbon with absolutely no benefit. Idle servers alone waste approximately 650kg of carbon a year, just sitting there doing nothing. The ideal scenario would be to run these servers at 100%, and that’s exactly what companies like Microsoft and Google among others allow you to do with serverless hosting. These companies can run their servers at 100% with multiple customers’ applications running simultaneously, and only running when they are actively being used. This means if no one is on your site or interacting with your app, your functions will not be running and will not be wasting electricity on an idle server. In addition to this, many of these serverless hosts are carbon neutral, so the energy that is used will be offset by renewable energy! After hearing about carbon neutral hosts, I did some research and found that some hosts even offer a 300% energy offset. This is definitely appealing for anyone who is looking to do their bit for the environment.
Vladimir is the creator of Leaflet.js, a hugely popular library for building interactive maps. Just about any map you’ve used on the Internet will use leaflet.js, or so was his claim. Vladimir’s talk was on algorithms and improving their performance. He dove straight in, labelling algorithms as either “good”, “suspicious”, “bad – rewrite it” or “horrific – scrap it”. He listed off example after example of programs and functions that he’d delved into to reduce their execution times drastically - 150 times faster in some cases! He explained that his method of refactoring a program to be more efficient was, at the core, very simple by targeting loops and rewriting the logic to use less of them. He made me think of snippets of my own code, and specific code I’ve come across and how I could refactor it to be even more efficient. This was definitely a talk that I really enjoyed, and one that made me want to look into writing better performing algorithms.
Overall, the dotJS conference was a fantastic event. Just simply being there, amongst other developers from around the world, was a great experience in itself. You were able to gauge the community’s opinion on different technology, ideas and processes by watching how they reacted during the talks, hearing what they thought of the demos and chatting during the coffee breaks. It’s given me several topics I want to go and research further, with the goal of bringing value to SimpleClick and improving the code I write in the future.