Our goal is not to have the biggest list of everything available out there.
Our goal is to have a list of things that anybody would have to learn if they were to enter the field today.
* For the roadmaps, we encourage you to discuss and contribute with new roadmaps. For the existing ones, please note that our goal is to not have the biggest list of items. Our goal is to have a list of items or skills most relevant today.
* For the guides, please pick a topic, open an issue or reach out on twitter [@kamranahmese](https://twitter.com/kamranahmedse) to get the go-ahead and [start writing](./guide.md).
* For the resources, we are still preparing the contribution guidelines but submit them in an issue for now. Just note that the resources are *highly opinionated* and *curated*. Your opinion on value of any resource may not match the opinion of curator.
## Contributing
## Contributing
Your contributions to this repo are always welcome!
* [Submitting roadmaps](./roadmap.md)
Bear in mind, that this repo is *highly opinionated*, *unbiased* and *curated*.
* [Writing a Guide](./guide.md)
Your opinion on value of any resource may not match the opinion of curator.
* [Submitting resources](./resources.md)
**No PR will be discarded without explanations!**
**No PR will be discarded without explanations!**
## How are these roadmaps made?
> Roadmaps are made using [Balsamiq](https://balsamiq.com/download/)
* Clone the repository
* Open Balsamiq, click <kbd>Project > Import > Mockup JSON</kbd>,
* Copy and paste the JSON for the roadmap that you want to update
* Add your changes
* Export the JSON file <kbd>Project > Export > Mockup to JSON</kbd> and put it in the <kbd>project</kbd> directory
* Export the image <kbd>Project > Export > Current Mockup to PNG</kbd> and put it in the <kbd>images</kbd> directory
* Commits your changes and open a PR
## Guidelines
## Guidelines
- <p><strong>Adding everything available out there is not the goal!</strong><br/>
- <p><strong>Adding everything available out there is not the goal!</strong><br/>
The roadmaps represents the skillset most valuable today i.e. if you were to enter any of the listed fields today, what would you learn! There might be things that are of-course being used today but prioritize the things that are most in demand today e.g. agreed that lots of people are using angular.js today but you wouldn't want to learn that instead of React, Angular or Vue. Use your critical thinking to filter out non-essential stuff. Give honest arguments for why the resource should be included.</p>
The roadmaps represents the skillset most valuable today i.e. if you were to enter any of the listed fields today, what would you learn! There might be things that are of-course being used today but prioritize the things that are most in demand today e.g. agreed that lots of people are using angular.js today but you wouldn't want to learn that instead of React, Angular or Vue. Use your critical thinking to filter out non-essential stuff. Give honest arguments for why the resource should be included.</p>
- <p><strong>Do not add things you have not evaluated personally!</strong><br/>
Use your critical thinking to filter out non-essential stuff. Give honest arguments for why the resource should be included. Have you read this book? Can you give a short article?</p>
- <p><strong>One item per Pull Request</strong><br/>
- <p><strong>One item per Pull Request</strong><br/>
There may be a discussion related to an item you want to add. Adding just a single item per pull request makes it much easier for everyone involved.</p>
There may be a discussion related to an item you want to add. Adding just a single item per pull request makes it much easier for everyone involved.</p>
First of all thank you for considering to contribute to this project. It wouldn't have been possible for us to keep it live without your contributions 🙏
@ -11,13 +11,13 @@ First of all thank you for considering to contribute to this project. It wouldn'
* Put a profile picture in [authors directory](../public/authors) with the username
* Put a profile picture in [authors directory](../public/authors) with the username
* Create a new directory for the roadmap inside the [roadmaps directory](../content/roadmaps) by following the below steps:
* Create a new directory for the roadmap inside the [roadmaps directory](../content/roadmaps) by following the below steps:
* Directory name must be `kebab-cased` and prefixed with the incremental number e.g. `6-java-developer`
* Directory name must be `kebab-cased` and prefixed with the incremental number e.g. `6-java-developer`
* Create a markdown file `6-java-developer/0-About/0-Summary.md` inside this directory and write the article detailing the steps required for this path. It doesn't have to be graphic like the other roadmaps; just focus on writing a detailed but approachable textual guide.
* Create a markdown file `6-roadmap-name/0-About/0-Summary.md` inside this directory and write the article detailing the steps required for this path. It doesn't have to be graphic like the other roadmaps; just focus on writing a detailed but approachable textual guide.
* Create a file `meta.json` inside the roadmap directory with the content below:
* Create a file `meta.json` inside the roadmap directory with the content below:
```json
```json
{
{
"title": "Java Developer",
"title": "Roadmap Name",
"description": "Step by step guide to becoming a modern Java Developer",
"description": "Step by step guide to becoming a modern ***",
"featuredDescription": "Step by step guide to becoming a modern Java Developer in 2020",
"featuredDescription": "Step by step guide to becoming a modern ** in 2020",