The first speaker was Sarah Mei, an all around awesome dev and human. Sarah’s talk was, “Is your code too SOLID?” (I will post a link to all talk slides as soon as they’re up). She discussed how large, unwieldy codebases are incredibly common these days and companies/developers are trying to figure out ways to clean them up and make them better. They often turn to ideas like SOLID and design patterns as a cure-all solution. I have read about SOLID – the five basic principles of object-oriented design – a bit since becoming a dev, but truthfully I’ve found the concepts hard to remember beyond the S – Single Responsibility. They’re academic, and some are a bit hard to know exactly how to apply to a regular project. Either way, they’re not the most accessible concept(s) for a newbie, in particular, and, according to Sarah, they’re too abstract and not useful for refactoring code. Instead, she said, we need concrete strategies and tactics. And she proposed a new, inherently useful acronym (which I love, in case you can’t tell): STABLE. Smell your code, Tiny problems first, Augment your tests, Back up (as in, take a step back, undo things, when useful), Leave it better than you found it, Expect good reasons (from the original dev, for writing it that way in the first place). Beautiful. THIS I can get behind. I can understand it, it makes sense to me and I know how to apply it to my own code. And what a wonderful thing that is. Sarah didn’t advise against SOLID absolutely, but instead said “If you work on making your code STABLE, it will eventually be SOLID”. It was a great talk, and I was really happy to have had the chance to hear it.
Some of the talks throughout the day were very technical and fast-paced and soared above my current level of understanding. I realise that it’s not possible or perhaps even fair to expect every talk to be accessible to juniors but I certainly appreciated and got so much from those that were. And if Sarah, who is a very, very experienced developer, was able to present her talk in a way that all in the industry could benefit from, it might just be possible for others to do the same. Just a thought. 🙂 I’m not going to mention every talk I saw during WDCNZ. If you’d like to see the full programme, please visit the WDCNZ website – linked above. They will be releasing videos of all of the talks sometime in the near future, so keep an eye on their Twitter account to find out when those are available (as will I – I want to watch a bunch of them again, as well as see the ones I missed!). I’ll just discuss the ones that I enjoyed most and got the most from. James MacFie’s talk, “Automating the real world: an evolution in web development” was also really great. I have not yet dabbled in hardware, but have heard a lot about the “Internet of Things” of late. Also, a group of my fellow EDA students were really into controlling every electrical thing in their houses from their computer. It all seemed a bit beyond me, to be honest. As in, there is no way I could do that kind of stuff myself, WAY beyond my level of programming skill. After watching James’ talk, I think I was wrong. He was another of the speakers who made his talk accessible to those of varying skill levels, and made it seem like it was possible for anyone to learn how to turn on a light in their laundry through their computer. “If you can build something useful for the web, you can build something useful for the real world.” It seemed to boil down to just a few steps: get a Tessel 2 (not expensive!), install a couple of things on your computer, write 3 lines of code and boom! (I am oversimplifying a bit – there were a few more steps than that, but not too many.) As James said, “The jump from software to hardware keeps getting smaller” and that is a very cool thing indeed. Later that afternoon, I had the pleasure of attending a talk by my Rabid colleague, Megan Bowra-Dean. Megan’s talk was, “Revenge of the ORMs: why SQL skills matter in 2015.” It was exciting to see someone I know and get to work with take the stage, and she did a fantastic job. She talked about understanding your ORM – what it does well, what it does poorly and how to use it to its full potential. It was an interesting talk that recalled some of my EDA training about databases, particularly making requests to and dealing with the data from a database. I appreciated the refresher of some things and the introduction to others. “Databases are your friend” – they sure are!
Carina Zona was the second to last speaker. She spoke at a few events I attended in the week leading up to the conference, and I was looking forward to hearing her WDCNZ talk, “Consequences of an Insightful Algorithm.” This was a fantastic, thought-provoking talk about the inherent bias of some algorithms meant to predict our habits, celebrate our landmarks or identify our appearances. She cited examples where programs set up to do these things failed miserably and left very real, human consequences in their wake – often exemplifying the biases of the society they were created to monitor (read about one example here and here). She suggested that some of these consequences could be avoided if the teams who create the programs were truly diverse; “anticipate diverse ways to screw up,” which can only be done with a range of people representing the diversity of the users. This talk got a lot of chatter on Twitter and seemed to really resonate with the audience. Which is great; diversity is important and the more we have of it in all areas, the better our society will be.
Finally, the last talk of the day was given by the dynamo Monica Dinculescu, a Canadian working at Google in San Francisco. Her talk, “Push notifications for fun and profit (if by profit you mean cats)” was a great end to the day. She talked about how, rather than using/building native mobile apps, you could build something called a Service Worker which would allow you to send push notifications from a web app. As with all of the other speakers I’ve mentioned, Monica also delivered her talk in a way that was accessible across skill levels – she made it easy to understand what she meant, how it would work and gave enough information to point you in the direction of learning how to build it. As well as this pearl of wisdom: “UIs are like Canadians … so polite.” So true. Her talk also included lots of the Internet’s favourite subject, cats, so it was a fun way to end the day after we’d crammed our heads full of all of the awesome stuff all day. And with that, we drank. The rightful end to any good conference. So, my takeaways/favourite things/highlights of WDCNZ (aside from those listed above):
- there are lots of cool things … and Safari supports none of them. (Just jokes … or is it?)
- I was REALLY impressed by the near 50/50 gender balance of the speakers. Really great work on the part of the organisers, and shows a dedication to making this so. Also, all of the women speakers were on the main stage. Not to say that the other room was less than the main or the talks that happened in it were less than, but again, it seemed like real effort was made to not fall into the subtle and ever so present habit of placing men above women. I noticed and appreciated it.
- On that note, WDCNZ also had a Code of Conduct to ensure that their event was a harassment-free space and safe for all attendees. This is becoming more and more common at conferences, I believe, and is a really great thing. Even better, I didn’t see or hear about any instances of conference organisers having to enforce it at WDCNZ.
- I was lucky to have the chance to chat with a number of the speakers during the breaks and at the drinks after the conference. It was particularly cool to talk to the international, kick-ass lady speakers of the conference: Sarah, Estelle Weyl, Carina and Monica. They are leaders in the field and really inspirational, and as a junior it was great to get some of their insight into the industry. Thank you to all!
So, my first web developers conference is done and dusted, and was a great experience. Did you also attend and have anything you want to add, debate or question? Please do so below. Thanks for reading!