Recorded – watch the full episode on YouTube.
What do you need to make a great side project? What goes into it do you think?
Kaya Thomas: That's a good question. I think there's a lot I think that goes into making a good side project. I think scope is really important. So before you jump in to start coding or anything, there needs to be a lot of thinking time and you can't neglect that thinking and planning time. So you need to take time to think about audience – who is this app for? Who do you want to be using the app? What are the positive ways you're going to impact the audience who is using the app.
And then scope: what's the smallest amount of features that you think would make this a good app? Smallest amount not the largest amount. You could list all the features that you would want to build in the future, but realistically scoping, okay, maybe I can start out with two or maybe I can start out with three max or something.
“So before you jump in to start coding or anything, there needs to be a lot of thinking time and you can't neglect that thinking and planning time.”
And then thinking about how you can make those pitches to the best of ability. And then wire framing, you mentioned Keynote, that's a great way to start, right? Putting things together on Keynote and playing around with it and then showing it to people. I think that's a scary thing, right? To show your wireframes or things to people, but show it to people – see what they think, right? And not necessarily taking people's opinions as everything, you can take them with a grain of salt, but getting feedback I think is important.
For any developer, especially working solo, it can sometimes be a really lonely experience. So you want to make sure that you are asking your friends or other developers, what they're thinking, getting feedback and then once you figure those things out and you really have thought it all out, then started working on the implementation.
“Then don't try to perfect it before launching it. I think that's the thing is like, it's not going to be perfect. You have something that's working, you're getting some good feedback, launch it, just go for it, just go for it. And don't hold back.”
And I think if you get that first working MVP, that minimum viable product, then go on TestFight, right? Putting your app on test flight and then asking either friends or other developers to give you feedback on what the beginning experience is like. Then don't try to perfect it before launching it. I think that's the thing: it's not going to be perfect. You have something that's working, you're getting some good feedback, launch it! Just go for it, and don't hold back. I think those are kind of the steps when you're launching. And then once you have launched it, make sure you're being realistic on how much time that you can actually spend on it. And so it's not like taking over your life or anything, but you're still putting in the amount that you feel proud of or that you feel good about.
“Really stay focused on singular goals I think is important.”
And then making sure you're still staying and focusing on one or two features at a time and not trying to build all these things at once. Really stay focused on singular goals I think is important.
Paul Hudson: Gosh, there was a lot of packed information packed in there, but it really sounds like getting your MMMVP initially is critical, then staying focused on that MVP it's writing chunk by chunk by chunk is a really key thing here.
There's a brilliant book which I expect you've read or definitely want to read, The Mythical Man-Month by Fred Brooks, where it talks about the second system effect. And it's the idea that you build version one of something and you make it ship and it gets out the door and it was hard work, but it shipped eventually. And when it ships, you think, okay, it's time to plan version two. And you think, right, all those things, we catch they're everywhere around, every story. And it goes to version two and it just ends up being a difficult overwhelming overburdening nightmare. And of course, no one wants that, not even in a side project.
Kaya Thomas: Exactly. I think that the incremental part of it is super important and not trying to do too much at once.
This transcript was recorded as part of Swiftly Speaking. You can watch the full original episode on YouTube, or subscribe to the audio version on Apple Podcasts.
SPONSORED Let’s face it, SwiftUI previews are limited, slow, and painful. Judo takes a different approach to building visually—think Interface Builder for SwiftUI. Build your interface in a completely visual canvas, then drag and drop into your Xcode project and wire up button clicks to custom code. Download the Mac App and start your free trial today!
Link copied to your pasteboard.