Some time ago I had an opportunity to watch how a couple of devs were doing their pet-projects. Both of them made same mistakes. Moreover I did these mistakes too for a while. They are not critical but may cost you a ton of time.
The goal of this article is to help you save your time.
Let's see what I have for you.
First of all you should clearly understand the real goal of your project. Ask yourself several questions:
- Why am I doing this project?
- What is the idea of the project?
- Who will see this project?
- Is it necessary to do it now?
- What is the priority of the project compared to others?
These questions are necessary to understand if you really have this project in your mind and if you need to do it right now. If you can easily answer these questions - proceed to the next step.
If you will start building something bigger than a To Do app, you will probably start thinking about the name for your app and, of course, it's logo. Sometimes this process can take hours if not days.
And it's a big problem because you're spending a lot of time for nothing. It's always hard to find a good name and in most cases it came itself.
Don't waste your time. Skip this step.
What will you choose?
- An app without a name.
- A name without an app. It's obvious. Let's move forward.
Designers understand this step clearly but many developers not.
You need to create a color palette before starting your project.
There are many rules in design but you can take the most important parts from it. Start with a few main colors:
- The background
- Main color
- Contrast (secondary) color This will be enough for a start but I prefer to add more colors like:
- lighter and darker version of main and contrast colors
- proper colors for "disabled", "warning", "attention", "confirmation" things
Skipping this step has a few problems:
- You will need to go web to copy the colors you like and insert to your project every time or look for this colors through all of your code.
- You may forgot about colors you already used before. So you will copy another shades of the same colors and you app will look not that good in the end.
This is probably one of the biggest problems you may face. Having an idea for a project, many devs immediately open code editor and starting coding.
And it's super wrong.
Think about your project globally.
- What functions it will have?
- How many pages you need for it?
- What will be the layouе and the design of these pages?
Currently I'm using Miro (mindmap app) to create the overall project structure. When the structure is ready I use Figma to visualize the pages or windows I will need.
Now you have everything to start. Right? No.
It looks like you already have a plan after all previous steps but it's just an illusion. You have all the parts but the instruction is missing. You need to create it. Just like in LEGO.
Task managers are perfect for it. I use ClickUp but you can take any other. Divide everything into small tasks and categorize them with priorities.
Many devs are jumping from task to task when they don't have a strict plan. And the goal of this step is to make everything clear.
Try to make at least one project with this approach and you will definitely see its benefits.