# C++ Developer Roadmap

## Additional languages: [Русский](Russian/README.md)

C++ is still one of the [most popular development languages](https://insights.stackoverflow.com/survey/2021#technology-most-popular-technologies). There are quite a number of people that want to start learning it and become a C++ developer. They face with the questions: "Where should I start? What and in what order should I study? What books should I read?"

We tried to answer these questions in the presented roadmap. The map focuses on general competencies and skills that could be found in most projects. It is designed to help those who are just starting their education or have little experience. You can create a more productive learning plan without being distracted by side information if you study the set of listed materials. It will help you to master C++ at the level that is used in many commercial projects.

Before you start exploring the map, it's recommended to read the articles listed below.


# Articles

1. [Why and what for the roadmap has been created?](English/Rationale.md)
1. [Are you sure that you need C++?](English/SelfIdentification.md)
1. [C++ - It's Not Rocket Science](English/FunCpp.md)
1. [Application areas of C++](English/AreasOfApplication.md)
1. [Myths and Legends of C++](English/Mythbusters.md)
1. [Developers grading](English/Grades/Overview.md)
1. [How to study?](English/HowToStudy.md)
1. [Books and other resources about C++](English/Books/Overview.md)
1. [Pet-project ideas](English/PetProjects.md)
1. [Language toolkit](English/Tooling.md)
1. [More resources about C++: documentation, community links, etc.](English/CommunitySources.md)


# Roadmap

* [Miro - C++ Developer Roadmap](https://miro.com/app/board/o9J_lpap34Q=/)
* [GraphML - C++ Developer Roadmap](English/Graph/roadmap.svg)

# License and conditions
The roadmap is published under the license **CC BY-NC-SA 4.0**: [RUS](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.ru) || [ENG](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.en). In a nutshell:

- You can share, adopt or copy any chunk of the presented materials only in case you share a link to the original sources
- It's **PROHIBITED** to use any chunk of the materials with any commercial reason.


# Feedback and communication

In case of any remarks, proposals or ideas don't hesitate to contact us. We really appreciate your support :)

Please use one of the following paths via Github:
- In case of any proposal or modification in the **repository** content - create a new PR in [Pull Requests](https://github.com/salmer/CppDeveloperRoadmap/pulls)
- In case of any proposal or modification in the **repository** content - submit a new Issue in [Issues](https://github.com/salmer/CppDeveloperRoadmap/issues) (Unfortunately, the Miro framework doesn't support a history tracker and the access to the roadmap is limited. We add all changes manually after their review and acceptance)


# Contacts

Creators:
- [Evgenii Melnikov](https://github.com/salmer),
- [Dmitriy Dmitriev](https://github.com/DmitrievDmitriyA),
- [Dmitriy Savin](https://github.com/SD57)

Reviewers:
- [Sergey Tyulenev](https://github.com/marleeeeeey),
- [Konstantin Komarov](https://github.com/MolinRE),
- [Sergey Skliar](https://github.com/SergeiSkliar)
- Community :)
