The 2-Day Weekend Project Plan: Make Your Ideas Thrive
Recently, I’ve talked to a couple of aspiring app developers. I’ve made a habit out of asking people what challenges they’ve been struggling with lately. Surprisingly, most aspiring app makers say this:
- I want to create feature X, or component Y. How do I pick the right tool for the job?
- I’m stuck with programming – it is so hard! How do I move forward?
- I know how to code with Swift, but how do I get to actually making my own apps?
Making your own apps is a challenge. Often, aspiring coders make the mistake of not planning properly. They get caught up in the high of a great idea, but that motivation quickly burns out by the time they’re facing the first real challenge.
Perhaps you’ve experienced this too. That’s okay! It happened to me, and sometimes I still get all excited for a seemingly great idea, only to burn out some time later when I’m reaching problems that are hard to tackle.
It’s said that when you fail often, you learn from your mistakes. You could call it failing up, because you accept temporary failure and realize you can change it for the better by learning from it.
The Weekend Project Plan
From building a few dozen apps, and a few dozen more that failed, I’ve learned and gained experience. Based on that experience, I came up with a systematized approach to building great ideas. The key component is trying, and giving yourself a time constraint. You try out a project for a limited period of time, a period that is optimized to go between “giving up too early” and “flogging a dead horse”.
Step 1: Great Ideas Are (Made) Abundant
First, let’s state what a great idea is:
- No one knowns which ideas are great and which aren’t. You can only find out by testing the ideas.
- Great ideas don’t need to be unique, special, or remarkable (although it helps).
- Great ideas don’t necessarily have to be new. Sometimes, innovations are made in the oldest and dullest of markets.
- All great ideas solve a problem someone has.
In the book Choose Yourself, author James Altucher advises the reader to come up with at least 10 ideas a day. I think it’s good advice, although you can also just start with one. For the next 10 days, try to come up with one good idea a day.
Step 2: Block Your Calendar
Then, pick a free weekend from your calendar. The sooner the better, and it can also be 3 mid-week days – that’s fine. And… we all know that saying “I don’t have time” actually means “I don’t make time”, so make sure you make your weekend project a priority.
See, the Great Idea Weekend Plan is in fact a bootcamp, a hackaton. You can do it with a team, some friends, or just one. As long as it’s fun, and a learning experience: you’ll get to try your great idea!
Step 3: Make And Execute The Plan
OK, now it’s time to plan the actual weekend. Here’s my rough schedule, you can adopt that if you want or come up with your own.
It’s from Friday afternoon, till Sunday afternoon (roughly 55 hours). You can of course sleep, pause, eat and have fun, but it’s key that you stick to the project as much as possible.
- Friday afternoon
When you start your weekend project, you may already have a great idea. If you don’t, now’s the time to do some brainstorming. You’ll come up with an idea for an app and you think the entire idea through. If you had an idea before, now’s the time to think it over: what does it look like? What’s the main benefit for a user? How does it work? All you need here is pen and paper – one piece of paper is enough to write down what your idea is about.
- Friday evening
In the evening of the first day, Friday evening, you create a mockup of the app. You’ve just ideated the project, and now is the time to make it tangible. It’s the actual deliverable of today, a tangible app mockup you can feel good about! There’s plenty of tools to make a mockup with, I suggest you use Balsamiq Mockups. Making a mockup isn’t hard, you just lay out all the interfaces and UI components of the app. How does the user flow from one screen to another?
- Saturday morning
On the morning of day 2 you’re fresh and ready to start anew. First, you’ll do some research. When you were designing the app on Friday, you may have had some thoughts about the technical implementation of the app. Now’s the time where you test those ideas. You’ll look for systems, products, libraries, frameworks and assets you can use to realize your app idea. Maybe you need Xcode and Swift, or a library to do that one special thing. Use your time to find out how you’re going to build this app.
- Saturday afternoon
It’s finally time to code something! Start with the main interface of the app, and work your way to one or two other UI screens. Don’t spend too much time on fixing bugs, the goal of your weekend project is to make a working prototype, not to win a beauty pageant. Code, code, code!
- Saturday evening
In the evening of Saturday you evaluate what you’ve done so far. How did it go? You don’t have to spend the entire evening on this question, but make it a priority. Are you satisfied with your progress? When you’re done, feel free to code some more, or have a party, or just call it a day.
- Sunday morning
When everyone’s still sleeping on their day off, you’re making a dent in the world! Rise and shine, because Sunday morning is programming time. Finish what you were working on yesterday, and see if you can cram another feature in the little time you have. Perhaps it’s good to focus: what’s the main problem your app solves? Apply your time and resources there.
- Sundary afternoon
Alright! You made it to the end of the weekend project. Good work! You can be proud of yourself. But the question remains: the app you’ve been building, is it worthwhile to continue on? Do you need another hackaton to see if it’s a valid project, or do you call it quits? Take your time to figure it out, and feel free to spend some more time on any of the topics you covered earlier: ideation, designing, doing research, coding, or evaluating. Then, call it a day.
Is This A Million Dollar Idea?
What’s the goal of this weekend project plan? It’s simple:
- Establish a baseline idea, feature set, and design. You’re controling your creative thoughts by working towards a tangible goal, and overcome idea paralysis: not knowing how to go from idea to exection (the key is taking action).
- Instead of jumping to conclusions and working on the code straightaway, you’re spending time on planning and research. Often, we forget to look into a particular aspect of our project. Then, it’ll surprise you much later in the process, which can have unwanted consequences. How many times have we thought of something great, only to find out too late someone’s already working on it?
- Evaluating our steps. Asking: Does it make sense what we’re doing? It’s happened to me a lot before: I’m a happy coder, so I like it when I’m coding. And I lose sight of the bigger picture, the coding becomes the goal, and not the project itself. It can be the same with design, or ideation. Sometimes we get so caught up in the middle of things, and then fatigue and frustration kicks in, and we give up!
I hope this project plan will give your next great idea some structure. It’d be awful if you had a good idea, but never went ahead with it. Likewise, it would be unfortunate if you spent a lot of time on a project, only to discover it wasn’t a great one.
Either way, this project plan will help you out. It sure did for me! Got a great app you’re working on? Let me know, I’d love to chat!
Learn how to code iOS apps with me. We'll focus on app architecture, best practices and fundamental topics.
Become an insider. Get access to our members-only courses and private community. » Learn more
Most Popular Content
- How To Make An App (In 9 Steps)
- How To Develop iOS Apps On A Windows PC
- How To: Pass Data Between View Controllers In Swift (Extended)
- Creating A Simple iOS Game With Swift In Xcode
- How To: Build A Real-Time Chat App With Firebase And Swift
- How To: Random Numbers in Swift
- Understanding The "Use of Unresolved Identifier" Error In Xcode
- Understanding The «Unexpectedly found nil while unwrapping an Optional value» Error
Comments & Questions
Got a comment or question? Let me know! I read and respond to every one. Thanks!