To be a good programmer

http://www.trickjarrett.com/programmer/index.php/Main_Page

 

This is dedicated to updating the excellent resource by Robert L. Read.

The original version of this document was written by Robert L. Read without remuneration and dedicated to the programmers of Hire.com. - Read the Original

Contributors - Please feel free to add yourself here. Also police this page for spamming etc.

Main Goals of this Update:

  1. Add more Web Development based content
  2. Update and correct errors or factual mistakes
  3. Share our own knowledge for the betterment of other developers.


Index:

  1. Introduction
  2. Beginner
    1. Personal Skills
      1. Learn to Debug
      2. How to Debug by Splitting the Problem Space
      3. How to Remove an Error
      4. How to Debug Using a Log
      5. How to Understand Performance Problems
      6. How to Fix Performance Problems
      7. How to Optimize Loops
      8. How to Deal with I/O Expense
      9. How to Manage Memory
      10. How to Deal with Intermittent Bugs
      11. How to Learn Design Skills
      12. How to Conduct Experiments
    2. Team Skills
      1. Why Estimation is Important
      2. How to Estimate Programming Time
      3. How to Find Out Information
      4. How to Utilize People as Information Sources
      5. How to Document Wisely
      6. How to Work with Poor Code
      7. How to Use Source Code Control
      8. How to Unit Test
      9. Take Breaks when Stumped
      10. How to Recognize When to Go Home
      11. How to Deal with Difficult People
  3. Intermediate
    1. Personal Skills
      1. How to Stay Motivated
      2. How to be Widely Trusted
      3. How to Tradeoff Time vs. Space
      4. How to Stress Test
      5. How to Balance Brevity and Abstraction
      6. How to Learn New Skills
      7. Learn to Type
      8. How to Do Integration Testing
      9. Communication Languages
      10. Heavy Tools
      11. How to analyze data
    2. Team Skills
      1. How to Manage Development Time
      2. How to Manage Third-Party Software Risks
      3. How to Manage Consultants
      4. How to Communicate the Right Amount
      5. How to Disagree Honestly and Get Away with It
    3. Judgement
      1. How to Tradeoff Quality Against Development Time
      2. How to Manage Software System Dependence
      3. How to Decide if Software is Too Immature
      4. How to Make a Buy vs. Build Decision
      5. How to Grow Professionally
      6. How to Evaluate Interviewees
      7. How to Know When to Apply Fancy Computer Science
      8. How to Talk to Non-Engineers
  4. Advanced
    1. Technological Judgment
      1. How to Tell the Hard From the Impossible
      2. How to Utilize Embedded Languages
      3. Choosing Languages
    2. Compromising Wisely
      1. How to Fight Schedule Pressure
      2. How to Understand the User
      3. How to Get a Promotion
    3. Serving Your Team
      1. How to Develop Talent
      2. How to Choose What to Work On
      3. How to Get the Most From Your Teammates
      4. How to Divide Problems Up
      5. How to Handle Boring Tasks
      6. How to Gather Support for a Project
      7. How to Grow a System
      8. How to Communicate Well
      9. How to Tell People Things They Don't Want to Hear
      10. How to Deal with Managerial Myths
      11. How to Deal with Organizational Chaos
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值