I believe humans have an innate urge to create things. We like being creative and making things like books, paintings or clothes. It is quite a shame, then, that people often have a rough time getting started with such a creative project. Procrastination is quite easy, and one large part in this is that it takes time before a project actually becomes fun to work on. It doesn’t help that the start of a project is usually the time when you are most overwhelmed with options. Because of this, it can take a lot of effort to even get started with a project, let alone finish it. I have reflected on this quite a bit and would like to share some of my findings.
Let me introduce you to a term often used in software engineering: the Minimal Viable Product. This is usually defined as a product that has just enough features to be usable and testable by customers. You want to create an MVP as soon as possible, as this allows you to show your idea to others and to get feedback on it. The philosophy of the MVP is that if you can create a working product as soon as possible, you can use that as a working stepping stone from which all future features will be implemented. You can then test each feature as it is added and compare it against the whole.
In writing a book, for example, this can be seen as starting with a storyboard, which is an MVP in the sense that it tells the entire story while leaving out a LOT of detail. From this, you can start adding scenes and characters and plot points to your liking, but you will always be able to compare it against the entire storyboard you have already made. If you were instead to start writing on the first page, you would only know if your story will be satisfying once all of it has been written, and it becomes a lot harder to gather feedback about your story if you don’t even know how it will end.
Another example could be in making a game. If your levels are not playable while you are working on other things, you won’t be able to test the graphics, enemy behaviors, physics and animations of your games for quite a while. Then, most of your work will be done on blind faith, and things could get messy if you have to mesh everything together only at the end of your project. Besides this, your features and adjustments would not feel tangible until your full game is finished, which could make you less motivated to actually finish the game.
Because of this, it can be quite important to get an MVP going as soon as possible when you are creating something. MVPs help test and guide your project, and building something without it would be like running with your eyes closed. However, I think that this doesn’t actually solve the entire problem of getting started. Firstly, building the MVP can still be quite the step to take, as you often don’t even know what that MVP should look like yet and as perfectionism may stand in the way. Secondly, MVP’s may not always be suitable for your project. This could be because the scope isn’t large enough to warrant one, or the Thing you are creating does not lend itself well to an MVP. Therefore, I’d like to offer an alternative.
I have found that a lot of my projects become easier the more I get going. This is not because the puzzles I am solving become easier, but because I enjoy working on those puzzles more. At some point in the project, there is a transition from tedium to enjoyment, and I believe that it is this point we need to reach as soon as possible. I call it the Minimal Fun Product (MFP). Instead of focusing on creating a presentable product, I try to focus on getting my project to the point at which I can have fun tinkering with it. At this point, motivation will follow, and it becomes easier to enter a flow state where you can make serious progress. The MFP and MVP may be the same point, for example if you would only enjoy working on your game once you have something playable. It can also be entirely different, like if you get to a point in a book where you can start tinkering with the characters you have created and how they interact with eachother.
When I start a project, I always ask myself what I need to achieve in order to start having the most fun with this project. For my blog, it was the point at which I could tinker with the way my pages look and feel. At work, where I build dashboards for clients, it is the point where I have the layout planned so that I can focus entirely on what visuals to include and how the business logic works. The main difference between the MVP and the MFP is that different people usually come to the same conclusion about what the MVP should be, while the MFP is entirely up to preference.
For me, the MFP solves the problem of being overwhelmed at the start of a project, as I only need to focus on making the project fun at first. Once it is fun, the overwhelming aspects become easier to manage, as I enjoy diving deeper into the project at that point. Usually, I still use an MVP as well, and try to go for an MVP once the MFP is done. These terms are not mutually exclusive.
One extra thing I do in order to not get overwhelmed (specifically when coding) is to not plan ahead more than necessary. Whenever I think of something that needs to be done in a project, I write a little TODO comment about it and forget about it. Then, I try to only think about one day at a time. I have tasks I want to get done every day, and everything else would then be a bonus. My philosophy has always been to live in the present, and as such, I try not to think any further ahead.
It looks something like this:
That’s it, no more, no less.
So, that’s all I wanted to share today about working on projects. I hope this may help you as it has helped me. I know the feeling of getting stuck in a project because the idea of working on it can sometimes be more fun than actually working on it, but keeping the idea of an MFP in mind has helped me stick with my projects for far longer. In the last year, I have been able to develop my blog and write quite a lot of articles, and this method has helped me quite a bit when it comes to that. If you have any methods you’d like to share yourself, feel free to reach out on my socials or send me an email.
Signing off, have a lovely day!