Kathy Sierra’s new book, BADASS, has gotten me thinking differently about how I develop software and training classes.
And while I may have believed in making users awesome before reading the book, I didn’t have much of an idea of how to do it. How do you make your users awesome? And what does that even mean?
Let’s start with an example. When was the last time one of your friends said to you, “I wish I was awesome at using the Cannon EOS 70D”?
Nobody wants to be awesome at using a camera. They don’t want to be an amazing camera user – they want to be awesome at photography. They want to take amazing photos.
Similarly, nobody wants to be awesome at using your todo app. They want to be awesome at getting things done. So build your app, and your support, and your documentation, and everything – build it all around helping your users be better at getting things done.
So instead of focusing on making your software better, focus on making your users better at the thing they really want to do. For example:
- instead of just teaching them how to log exercise in your app, teach them how to create a habit of exercising every day
- instead of just tracking how long they sleep, give them tips for how to choose the right pillow, how to relax, and what foods to eat or avoid before bed
- instead of asking questions like “how can I get more followers/subscribers?” ask questions like “how can I help my users get more followers/subscribers?”
As a developer, you don’t need to worry about making better software. Just focus on making your users better at doing the thing they want to do with your software. Making better software is part of it, but it’s not the whole picture. Take a step back and look at what they actually want to do, and help them do that – both with your software, and without it.
What this looks like for me as I’m training developers
I’m going to be training a team in iOS development next month. Here are a few of the things I’m planning to do in training as a result of reading BADASS:
1. Expose them to lots and lots of good Swift code. One of the ways our brains learn is by Perceptual Exposure – or “high quantity, high quality examples of expertise.” I’m going to show them lots of small samples of good Swift code so they can discover and internalize the patterns. And they’ll be better Swift developers as a result.
2. Explain that iOS is hard and can feel overwhelming at first. There are dozens of frameworks, a new programming language, Auto Layout, view and app lifecycles to grok, and more. iOS is overwhelming for people who are just getting started. They’re a smart team, and they’ll be great iOS developers, but when they’re starting out, they’re going to struggle with creating table views and Auto Layout and knowing where to put code so it actually runs. If they know that it’s not just them – that everyone struggles with these things at first – they’ll have confidence and trust in themselves. Which is exactly what they need to keep going.
3. Show them their progress. I created a Performance Path Map (think: belt system in martial arts) that shows them where they are while they’re learning. So this “belt system for iOS development” will help them see where they are each step of the way – and what’s ahead. This will help them to stay motivated when they’re struggling, show them how much progress they’ve made, and show them what they need to be able to do to reach the next level.
4. Teach them where to look things up. No memorization required – they’ll be able to find everything they need in the documentation, so I’m not going to ask them to memorize anything. I’ll show them where to find both the official docs for iOS and Swift as well as the best unofficial docs.
5. Tell them to read BADASS. After they finish the training, I want them to build an amazing iOS app that makes their users awesome. I’ll teach them some of the concepts, but they’re going to learn even more if they read the book. (You should read it, too, dear reader, if you care about being a better developer.)
And I’ll do all of this in my future training, workshops and courses.
Where to go from here
I hope this gives you a few ideas to make your users awesome. But this isn’t enough. Go read BADASS. It’ll make you a better developer, and it’ll make your users’ lives better.
And keep getting better at iOS development with my weekly articles. Start by learning enough to build your first Swift app with the free 5-Part Guide, and then get an article every week just like this designed to make you a better iOS developer.