Want me to present at your conference? Get in touch.
Optional has been part of Swift since the start, but often we see it misunderstood, misapplied, or just plain ignored. How often have you had to use a bevy of nil-coalescing operators just to make your code compile, only to find your UI filled with placeholder strings? Or had a crash in production when some API goes down?
Optionals aren’t bad by themselves, but you need to apply them with care. Let’s look at some simple hygiene tips for mastering the
Optional, to make your code safer and easier to understand.
Slides available here.
“We live in a society” (BCS SPA Conference 2021)
As practitioners of software, the overwhelming majority of us build software that becomes part of the fabric of our society - be that a simple CRUD hotel booking application, or some cutting-edge machine learning recommendations algorithm. All of these things have effects and consequences on our communities.
In recent months we have seen a number of technology firms ban discussions of a political or societal nature at work. However, there is no such thing as a discussion that is not political or societal when we are humans that operate in a society. How can we make sure that, as technologists, we aren’t simply codifying existing social injustices, and instead working to build a fairer society?
“We Have The Power” (SBB DevDay 2019, morning keynote)
We live in a world that is re-shaping itself around software. That’s exciting! It’s also scary. The world is a terrifying place right now. The problems we face are so large, it’s natural to feel as if we don’t have any control over them. But we’re software developers. The stuff we write can have a massive effect—even if we don’t mean it to. That means we have an immense amount of power, and with that comes an enormous responsibility. How can we make a difference, be ethical programmers, and make sure we leave the world a better place than we found it?
“So you can sleep at night—ethics in software engineering”, with Steve Freeman (GOTO Amsterdam 2017 et seq.)
A very popular talk about the moral implications of being a software developer in a world where we entrust our identities to faceless advertising corporations, and badly-tested software literally kills people.
a.k.a. “Actually, it’s about ethics in software development”
“Sausages, Antennagate, and Brexit: an introduction to building accessible apps” (2017 et seq.)
A primer on the social model of disability, and how this turns most of our ideas about designing and building for accessibility on their heads.
a.k.a. “Accessibility is usability, usability is accessibility”; “accessibility: the developer’s misunderstood responsibility”