All Projects → braydie → Howtobeaprogrammer

braydie / Howtobeaprogrammer

A guide on how to be a Programmer - originally published by Robert L Read

Projects that are alternatives of or similar to Howtobeaprogrammer

Resources I Like
📚💯 Collection of learning resources i like
Stars: ✭ 280 (-98.12%)
Mutual labels:  learning, programming
Learn Python for free using open-source notebooks in Hebrew.
Stars: ✭ 877 (-94.12%)
Mutual labels:  learning, programming
Learn Vim
Learning Vim and Vimscript doesn't have to be hard. This is the guide that you're looking for.
Stars: ✭ 7,221 (-51.58%)
Mutual labels:  programming, learning
The coding projects which have been covered in the YouTube videos
Stars: ✭ 21 (-99.86%)
Mutual labels:  learning, programming
Письма к студентам курса
Stars: ✭ 107 (-99.28%)
Mutual labels:  learning, programming
<<Rust语言圣经(Book & Course)>>对Rust语言进行全面且深入的讲解,书中辅以生动的示例和习题,带你攻克从入门学习到实践应用的各种难关。 我们的目标是做一门优秀的开源Rust教程(课程)——学Rust就上。
Stars: ✭ 2,739 (-81.63%)
Mutual labels:  learning, programming
Python examples
Learn Python by Examples.
Stars: ✭ 20 (-99.87%)
Mutual labels:  learning, programming
Learn X By Doing Y
🛠️ Learn a technology X by doing a project - Search engine of project-based learning
Stars: ✭ 242 (-98.38%)
Mutual labels:  learning, programming
📗 A course to teach non-technical team members what developers do 📗
Stars: ✭ 73 (-99.51%)
Mutual labels:  learning, programming
Learn Vim
Vim 实操教程(Learning Vim)Vim practical tutorial.
Stars: ✭ 1,166 (-92.18%)
Mutual labels:  learning, programming
Colección de libros recomendados en formato PDF que he realizado para ti y así puedas mejorar tus habilidades como programador. Recuerda, siempre disfruta del aprendizaje.
Stars: ✭ 89 (-99.4%)
Mutual labels:  learning, programming
Software Engineer Interview Questions
A lot of questions and links to prepare yourself for an interview.
Stars: ✭ 176 (-98.82%)
Mutual labels:  learning, programming
Just a place where I can store demo projects for my technical articles.
Stars: ✭ 28 (-99.81%)
Mutual labels:  learning, programming
The content behind Elixir School
Stars: ✭ 3,171 (-78.74%)
Mutual labels:  learning, programming
Free Programming Resources
💎 免费的编程资源大全,持续更新!🔥 覆盖各种语言和方向(Java \ Python \ C++ \ JavaScript \ Golang \ 前端 \ 后端等)的学习路线、贴心教程、项目实战、编程书籍、面试合集、实用资源等,对程序员非常有帮助!
Stars: ✭ 225 (-98.49%)
Mutual labels:  learning, programming
Abstraction Layers
Stars: ✭ 16 (-99.89%)
Mutual labels:  learning, programming
📚📝 Notes on the journey
Stars: ✭ 234 (-98.43%)
Mutual labels:  learning, programming
Estrutura De Dados Em Java
Repositório do Material Estrutura de Dados em Java, contendo os principais tópicos de disciplinas sobre Estrutura de Dados. CURSO SOBRE ED:
Stars: ✭ 58 (-99.61%)
Mutual labels:  learning, programming
V by example
Learn V by Example
Stars: ✭ 131 (-99.12%)
Mutual labels:  learning, programming
Learning Go
Source code repository for my book "Learning Go Programming"
Stars: ✭ 194 (-98.7%)
Mutual labels:  learning, programming

How to be a Programmer: Community Version

Robert L. Read with Community

Copyright 2002, 2003, 2016 Robert L. Read

Licensed under Creative Commons Attribution-ShareAlike 4.0 International License.

Available on gitbook to read

Available to buy as a hardcover book (cost covers production & shipping only) - Edition 1, published 04/01/16


To be a good programmer is difficult and noble. The hardest part of making real a collective vision of a software project is dealing with one's coworkers and customers. Writing computer programs is important and takes great intelligence and skill. But it is really child's play compared to everything else that a good programmer must do to make a software system that succeeds for both the customer and myriad colleagues for whom he or she is partially responsible. In this essay I attempt to summarize as concisely as possible those things that I wish someone had explained to me when I was twenty-one.

This is very subjective and, therefore, this essay is doomed to be personal and somewhat opinionated. I confine myself to problems that a programmer is very likely to have to face in her work. Many of these problems and their solutions are so general to the human condition that I will probably seem preachy. I hope in spite of this that this essay will be useful.

Computer programming is taught in courses. The excellent books: The Pragmatic Programmer [Prag99], Code Complete [CodeC93], Rapid Development [RDev96], and Extreme Programming Explained [XP99] all teach computer programming and the larger issues of being a good programmer. The essays of Paul Graham [PGSite] and Eric Raymond [Hacker] should certainly be read before or along with this article. This essay differs from those excellent works by emphasizing social problems and comprehensively summarizing the entire set of necessary skills as I see them.

In this essay the term boss is used to refer to whomever gives you projects to do. I use the words business, company, and tribe, synonymously except that business connotes moneymaking, company connotes the modern workplace and tribe is generally the people you share loyalty with.

Welcome to the tribe.


Also available in Chinese and Japanese

  1. Beginner
  2. Intermediate
  3. Advanced
  4. Glossary
  5. Appendix A - Bibliography/Websiteography
  6. Appendix B - History (As of January 2016)
  7. Appendix C - Contributions (As of January 2016)

Creative Commons License
How To Be A Programmer: Community Version by Robert L. Read with Community is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].