A collection of (mostly) technical things every software developer should know about
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.9 KiB

The Goal

Our goal is not to have the biggest list of stuff. Our goal is to have a comprehensible list of most valuable things any programmer should know about.


Your contributions to this repo are always welcome! Bear in mind, that this repo is highly opinionated and curated. Your opinion on value of any resource may not match the opinion of curator.

No PR will be discarded without explanations!

Core Values

Values are clickable

Less is more! 💪

We simplicity.
We essential stuff.
We strive to have a smaller list of more valuable resources, quality over quantity.

We widely applicable knowledge/skills.

The world is not static. Everything changes.
This is why we prioritize strategically valuable skills/knowledge.
This is why there are so many philosophical resources in that list.

We do not add to stress/hype level

There are enough stress sources in everybody's lifes.
We strive to be helpful without adding to the stress and creating hype.
Most endless stream resources (forums, newsletters, blogs, communities) are noisy and create questionable value.
Be mindful of that fact when adding resources.

Technology is always about human beings 👨 👩 👶.

We do not code in sake of coding. We code to solve other people's problems.
This is why resources on soft skills are an essential part of that list.


Guidelines are clickable

Do not add things you have not evaluated personally!

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?

Use reasoning based on our values.

Before adding any resource, answer this questions to yourself:

  • Will it make every programmer a better human being?
  • Will it change the quality of programmer's work?
  • Will it change the quality of programmer's life?
  • Would you personally recommend this resource to your friend, starting on software development career?

One item per Pull Request.

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.

Do not open issues with resources, create a Pull Request instead!

It is just easier to discuss and decide on a resource within a Pull Request.

Use consistent set of resource type emoji

🎥 - Video/Talk 📖 - Book 📄 - Online article 📜 - Paper/Document - Checklist