Analysis updated 2026-06-24
Use as a self-study guide for junior programmer soft skills
Run a book club for a new engineering team
Find frameworks for estimating tasks and giving feedback
Translate or contribute new chapters to the guide
| braydie/howtobeaprogrammer | faviovazquez/ds-cheatsheets | leandromoreira/digital_video_introduction | |
|---|---|---|---|
| Stars | 16,217 | 16,218 | 16,211 |
| Language | — | — | Jupyter Notebook |
| Setup difficulty | easy | easy | moderate |
| Complexity | 1/5 | 1/5 | 2/5 |
| Audience | developer | data | developer |
Figures from each repo's GitHub metadata at analysis time.
This is a free, community-maintained guide to the craft of professional programming, originally written by Robert L. Read in 2002 and updated with community contributions. It is not a coding tutorial, it does not teach you how to write programs. Instead, it covers the harder, less-talked-about side of working as a programmer: how to deal with other people, manage your time, earn trust, and make good technical decisions. The guide is organized into three skill levels: Beginner, Intermediate, and Advanced. Each level covers two areas, personal skills and team skills. Personal skills include practical topics like how to debug problems, understand performance issues, manage memory, and learn new skills. Team skills cover things like estimating how long work will take, communicating the right amount, working with difficult people, and handling consultants or outside vendors. At the advanced level, it goes into judgment calls, like when to apply complex solutions, how to build a culture on a team, and how to manage your own career growth. The guide reads like a long essay, written from lived experience rather than academic theory. It is available to read online for free, and also exists as a printed book. Translations are available in Chinese, Japanese, Spanish, and Russian. This is for anyone who has learned to write code but is struggling with the professional realities, the meetings, the miscommunications, the deadlines, and the expectations that come with working on software in the real world. It is especially useful for beginners who want a map of what the job actually looks like beyond the code itself.
Free community guide to the human side of being a programmer: debugging, estimation, teamwork, communication, and career growth across Beginner, Intermediate, Advanced levels.
License terms are not clearly stated in the README so reuse rights are unclear.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.