Wellington, New Zealand
Maz Hermon is a front-end dev at Trade Me in New Zealand currently working with a great team on an epic responsive rebuild of a large and well-loved NZ e-commerce site. Maz has a passion for scalable CSS, UI component libraries and living style guides, accessibility and all things web. When not doing these things Maz enjoys time with his young family, drawing funny characters and music making.
Do you need help convincing your team or wider company they’d benefit from creating a living style guide and UI component library? Or getting buy in on why the one you’ve started is a good idea? Let’s run through a fun analogy comparing how having a design system and building a front-end component library is like the essential afternoon preparation session in a high performing kitchen known as ‘Mise en place’. You’ll learn how to explain how having this in place seperates the amatures from the professionals in kitchens around the world, and will ensure that by the time users walk in the virtual door, the dev kitchen is operating at high speed with grace, and no one’s left waiting, grumpily staring down the wait-staff with their best evil-eyes.
This talk will benefit you regardless of what level you're at. You’ll come away with a new way to explain to your technical and non-technical stakeholders why you and your team should be given the go ahead to support the successful fast paced delivery of features and products for your users. Don’t sit back and say ‘I told you so’ when things slow to crawl and you're all tangled in legacy code and specifity wars with your heavy CSS. Instead, come and learn a new way to frame the argument to ensure you’ve given everyone the best chance to realise what you already know to be true, before it’s too late.
Jeremy is an environmentalist turned programmer focused on using software to solve sustainability challenges. He's more than a little obsessed with checklists and automated tests.
Code without tests is code that is going to sneak up behind you while you’re texting on your phone, put glue in your hair and steal your lucky horseshoe from your bag. Evil! But how can you find those dastardly lines? Traditionally we’ve used test coverage metrics (e.g. Istanbul) to track down those villains but coverage has a lot of gaps. A test can execute 100% of code without performing any assertions, giving you a false sense of security.
What's the solution then? Fight back against those villains by unleashing mutants! Don't worry, you don't have to drink radioactive coolaid, we're talking about mutation testing. It involves using a tool like StrykerJS to programatically insert bugs (mutants) into your code and check whether the tests catch them. Having 100% test coverage is a noble goal but ultimately not very useful as it says nothing about the test suite's ability to catch bugs. On the other hand, having a 100% mutant kill score is a big deal. It means that your assertions can effectively pick up most potential bugs.
Next time your manager asks for a risk analysis of the company's test suite, you'll know what to do: call in the mutants!
Wellington, New Zealand
Juliet Brown is an artist, a programmer, and a maker, all of which she believes require inspiration, creativity, thoughtfulness, dedication and skill. She is interested in shaping code into works of art that can stand the test of time and wants to push the boundaries of how we see technology.
Programmers are artists. I am a web animator, developer, and artist. I come from A Fine Arts background, and a question I often get asked is how and why did you become a developer if you come from an arts background? For me, programming is creative, and I would like to share my journey with you. How I brought my diverse background to the developer community and what I am doing with that now. How I relate to technology with its subject matter, medium, and process. Using coding as an artistic medium references and also pushes the boundaries of what art is and can do. Painting and drawing come with such a historical background.
Common themes I explore in my art practice is popular culture, and the real and the imaginary. Recently, I have been working at converting my practice (painting, drawings) into a large human sized 3D animation world.
By combing Art and technology together, challenges the notions of the digital world and also how we perceive art and the 'artist'
Rob is the technical lead for APIs at Bankwest and has read more RFCs than he cares to admit. Rob is passionate about crafting distributed systems that perform at scale. Originally from Ireland, Rob now calls Perth home after taking quite a few detours along the way.
Users expect real-time data. They want their banking transaction notifications now. Their order confirmed now. They want their user experience to feel—connected. The world has moved to push and users are waiting for the data-driven experiences we create on the web to catch up.
GraphQL is Facebook’s response to this challenge and it is quickly proving itself as an exciting alternative to RESTful APIs for a wide range of contexts. GraphQL is a query language that provides a clean and simple syntax for consumers to interrogate your APIs. These queries are strongly typed, hierarchical and enable clients to retrieve only the data they need.
In addition to the familiar pull based request-response pattern, GraphQL provides a mechanism for clients to subscribe to real-time updates in the form of Subscriptions. Subscriptions are exciting as they represent the core ability we need to satisfy the connected push based experience that our users demand.
Ben is a software developer and interface designer with a passion for building usable edtech. In his holidays he teaches coding to high school students and in his spare time he studies and researches learning & technology at university.
Jess loves to get deep into the nitty gritty of a software project, especially if it involves designing elegant APIs or complicated algorithms. When not making software, she spends her energy doing creative things - sewing, weaving, and making pillow forts with the kids.
We’re all buzzing about Headless Chrome and how we can automate our testing, but what if we go one step further and try automated marking of… untrusted student code?
Imagine the sort of code you first wrote — full of syntax errors and infinite loops — now load that code on to a server and click ‘Test’. What happens? Did you crash the page? Did it do anything?
Let’s ditch to-do list tutorials and make something better!
Jason recently joined Culture Amp as a specialist in front-end developer tools. He wants software engineers to enjoy their jobs and so rages against technical debt, slow iteration cycles and lousy error messages.
To our wonderful users the web-app looked fine. It had a nice UI, a tonne of useful features, and mostly seemed to work. But our team of two engineers knew the truth - the app was a mess. Bug fixes that should be simple eluded us. Features that should have taken 2 weeks took 2 months. And users started telling us the app was crashing their browser (it turns out we were leaking memory and the tab was using over 2GB!). This talk shares the story of how I joined a start-up that in its 3 short years had already accumulated a tonne of technical debt - and how my fellow engineer and I took a 50,000 line code base of unstructured jQuery, untyped Angular, and a bunch of scary Grunt tasks, and turned it into a well structured React App, using Webpack to handle our assets and split our bundle, MobX to simplify our page interactions, Flow to add type safety to our code piece by piece, and Jest to test it all. And also how we dealt with those nasty memory leaks using Chrome dev tools so the app stopped crashing. Just as importantly - I’ll share the secrets of how we convinced the non-technical management team that this massive investment was worth it, and had them excited about paying down technical debt. If you have a codebase you’re ashamed to let other engineers look at, if you’re looking at a code-cleanup that feels like it’ll be an insurmountable task, if you are sick of dealing with code that has names like “AbstractModuleDataStrategy” that don’t mean anything, and maybe don’t even do anything, and you’re not even sure anymore, then this is the talk for you. We will map a path out of the spaghetti. Or if you have it all together and always write beautiful, maintainable, well structured code and would like to come and laugh at me and my horror stories, this may also be the talk for you.
Wellington, New Zealand
With a background spanning product development, operations and project delivery, Jess has developed a zealous focus on the quality and maintainability of software. While she can happily work across the full stack, Jess has a passion for all things frontend, and is always looking for ways to leverage new technologies to craft digital experiences.
Kylie is a startup founder, collaboration expert and restless creative. She has an unflinching belief in people’s ability to be experts of their own lives and much of her professional life has involved creating platforms for marginalised people and voices to be heard. She’s curious about the direction of technology and the role it might play in unfolding participative societies.
So much is expected of our designers and developers. They need to know myriad programming languages and other technical competencies, they must keep abreast of emerging trends and; contribute to the broader community through meetups and online peer learning platforms.
Often, our designers and developers also work in non-hierarchical organisations, multidisciplinary teams or as freelancers. With organisations like Spotify, Valve & Culture Amp we’re feeling inspired to organise differently, to 'swarm' as fit for purpose teams; to collaborate and lead from anywhere despite role or rank.
But this scenario is not without its challenges. A couple of years ago, the Inspire9 team started to hear some grumbling from the community. Things like "My colleague won’t listen to me. I have this great idea and we’re supposed to collaborate, but he just does whatever he wants" and "I don’t know what to do when there is conflict, I just freeze".
They noticed that while their community was technically brilliant, they were struggling with some of the 'human dynamics' of their work. They decided to do something about it and invited me in to run a leadership program "Leading in Networks" with the community which I'll share about in my presentation.
A very practical talk, full of the tools and tricks I shared with the I9 community. Hear about the insights we gained through our leadership journey, and what changed for participants as they attained deeper insights into their approach and practice as collaborators in multidisciplinary team environments. Hear about the tools and tricks they found most useful and take away your own insights to grow your collaborative practice.
We acknowledge the Wurundjeri people of the Kulin nations, the traditional owners of the land on which we gather. We pay our respects to their Elders: past, present and future.
We firmly believe in diversity, inclusion and equality.