A difficulty that I always have in my studies was to prioritize what I should study. The big questions have always been "Is this important?" "Is this difficult?" "Will this subject take me a long time?" These questions can be a fuel for procrastination.
To solve this problem, me and some friends created and organized a study guide. It consists of 3 levels and each level has a lot of tasks to be accomplished. All tasks are prioritized, from the most basic topic to the most advanced and most important to the least. The goal is for this guide to be a reference both for beginners and for those who already work professionally with software development.
Given the popularization of the Kanban boards, the study guide was created and organized in Trello, a kind of virtual Kanban. For those who do not know, Kanban is a scheme / framework to organize some tasks, and then execute. To use this board, you must follow some rules:
- Never skip a task, always take the first from top to bottom;
- Avoid jumping from levels (columns), advance only to the next level if you finished the previous one;
- When you begin to study a topic (card), move it to the Learning column;
- Have only one subject in the Learning column;
- Use the card description field to write down what you have learned about the topic;
- Use the links that are attached on the cards as a reference of content and add your own references on the card;
- Move to Done only when you are comfortable talking about the topic or applying what you have studied;
- Along with the above suggestion, create your own definition of done.
- Create a Trello account;
- Access https://trello.com/b/hLGyiEEE/swift-developer-roadmap-template;
- Click Show Menu;
- Click More;
- Click Copy Board;
- Define a title for your study guide;
- Click Create, and you are done.
If you missed something, with the board copied to your Trello, you can add as many topics as you like. But it is up to you to set a priority for the new items.
If you have any ideas for changing the guide, do not hesitate to share it with me. Send me a message on the telegram and then we can talk about board improvements.
I started creating this guide based on this Medium post and in this repository on Github. This work had contributions from: Eric Alve Britto, Francesco Perotti-Garcia, Judar Lima, Muriel Silveira, Thiago Holanda, Vitor Maraccini, Vinicius Andrade e Vinicius Carvalho. I thank you all!