12 Things Every Programmer Should Know

 

12 Things Every Programmer Should Know


Programmers are a subset of creators have the responsibility to shape the new world


1.Be passionate

Love what you are doing

Be creative

Want to do it best

Better than yesterday

2.Love Your Codes

Write codes for hunman,but dad programmers write codes for machine

Every programmer loves to work with Clean Code

3.Version Control

Backup your codes

Tracking changes(Who,what,when)

Work in parallel

Commit often

Never commit when you build fail

4.Read Codes

Before you become a good writer,you have to be a good reader

Day and day programmers working hours:70% reading and 30% writing

Take notes on ideas or tricks of the author

5.Practice,Practice,Practice

Small exercises,isolated problems

Practice on outside company projects

Do your best as you can(no pressure)

Practice to become a master

Fixing bugs in an OSS that you are using

6.Refactoring

Improve quality of your codes, Without changing system behavior

Make it easy to understand, maintain and extend

Always check a module in cleaner than when you checked it out

Intension-Revealing Names, Small Method, Compose Method

7.Follow patterns and Best Practices

Object Oriented Design Principles

SOLID

GRASP

DRY

KISS

Don't Tell Us

Design Patterns

8.TDD/BDD

Tests are specifications what the system does

Tests are your first user

Short development iteration

Is a design process

Write just enough codes to pass the tests

9.Automation

Make your manual tasks are automatable

Command line are you friend

Make a shortcut of your repeated tasks

Continuous Integration

Automation Deployment

10.Understand Your Domain

Domain-specific won't be outdate soon, but technologies will

You can't creatively help a business until you know how it works

11.Continuous Learning

You need to keep learning to stay marketable

Be the worst

Read books, blogs, Twitters feeds, and websites

Listen to podcasts

Sharpening your tools

12.Participate in Communities

A good way to learn something is to teach or speak about it

Join or start a study group or a local user group for a  language, technology, or discipline you are interested in

Contribute to OSS

 

英文原文: http://www.slideshare.net/samnang.chhun/12-things-every-programmer-should-know

中文翻译: http://news.cnblogs.com/n/76372/

你可能感兴趣的:(now)