97 Things Every Programmer Should Know

Act with Prudence

Apply Functional Programming Principles

Ask, “What Would the User Do?” (You Are Not the User)

Automate Your Coding Standard

Beauty Is in Simplicity

Before You Refactor

Beware the Share

Check Your Code First Before Looking to Blame Others

Choose Your Tools with Care

Code in the Language of the Domain

Code Is Design

Code Layout Matters

Code Reviews

Coding with Reason

A Comment on Comments

Comment Only What the Code Cannot Say

Continuous Learning

Convenience Is Not an -ility

Deploy Early and Often

Distinguish Business Exceptions from Technical

Do Lots of Deliberate Practice

Domain-Specific Languages

Don’t Be Afraid to Break Things

Don’t Be Cute with Your Test Data

Don’t Ignore That Error!

Don’t Just Learn the Language, Understand Its Culture

Don’t Nail Your Program into the Upright Position

Don’t Rely on “Magic Happens Here”

Don’t Repeat Yourself

Don’t Touch That Code!

Encapsulate Behavior, Not Just State

Floating-Point Numbers Aren’t Real

Fulfill Your Ambitions with Open Source

The Golden Rule of API Design

The Guru Myth

Hard Work Does Not Pay Off

How to Use a Bug Tracker

Improve Code by Removing It

Install Me

Interprocess Communication Affects Application Response Time

Keep the Build Clean

Know How to Use Command-Line Tools

Know Well More Than Two Programming Languages

Know Your IDE

Know Your Limits

Know Your Next Commit

Large, Interconnected Data Belongs to a Database

Learn Foreign Languages

Learn to Estimate

Learn to Say, “Hello, World”

Let Your Project Speak for Itself

The Linker Is Not a Magical Program

The Longevity of Interim Solutions

Make Interfaces Easy to Use Correctly and Hard to Use Incorrectly

Make the Invisible More Visible

Message Passing Leads to Better Scalability in Parallel Systems

A Message to the Future

Missing Opportunities for Polymorphism

News of the Weird: Testers Are Your Friends

One Binary

Only the Code Tells the Truth

Own (and Refactor) the Build

Pair Program and Feel the Flow

Prefer Domain-Specific Types to Primitive Types

Prevent Errors

The Professional Programmer

Put Everything Under Version Control

Put the Mouse Down and Step Away from the Keyboard

Read Code

Read the Humanities

Reinvent the Wheel Often

Resist the Temptation of the Singleton Pattern

The Road to Performance Is Littered with Dirty Code Bombs

Simplicity Comes from Reduction

The Single Responsibility Principle

Start from Yes

Step Back and Automate, Automate, Automate

Take Advantage of Code Analysis Tools

Test for Required Behavior, Not Incidental Behavior

Test Precisely and Concretely

Test While You Sleep (and over Weekends)

Testing Is the Engineering Rigor of Software Development

Thinking in States

Two Heads Are Often Better Than One

Two Wrongs Can Make a Right (and Are Difficult to Fix)

Ubuntu Coding for Your Friends

The Unix Tools Are Your Friends

Use the Right Algorithm and Data Structure

Verbose Logging Will Disturb Your Sleep

WET Dilutes Performance Bottlenecks

When Programmers and Testers Collaborate

Write Code As If You Had to Support It for the Rest of Your Life

Write Small Functions Using Examples

Write Tests for People

You Gotta Care About the Code

Your Customers Do Not Mean What They Say

posted @ 2020-09-23 08:50  xiuzhublog  阅读(131)  评论(0编辑  收藏  举报