I am a Pragmatic Programmer Part 1

This is Part 1 of 7 part series inspired from the book Pragmatic Programmer:

  1. Care About Your Craft: Why spend your life developing software unless you care about doing it well?
  2. Provide Options, Don’t Make Lame Excuses: Instead of excuses, provide options. Don’t say it can’t be done; explain what can be done.
  3. Be a Catalyst for Change: You can’t force change on people. Instead, show them how the future might be and help them participate in creating it.
  4. Make Quality a Requirements Issue: Involve your users in determining the project’s real quality requirements. Critically Analyze What You Read and Hear Don’t be swayed by vendors, media hype, or dogma. Analyze information in terms of you and your project.
  5. DRY—Don’t Repeat Yourself: Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
  6. Eliminate Effects Between Unrelated Things: Design components that are self-contained, independent, and have a single, well-defined purpose.
  7. Use Tracer Bullets to Find the Target: Tracer bullets let you home in on your target by trying things and seeing how close they land.
  8. Program Close to the Problem Domain: Design and code in your user’s language.
  9. Iterate the Schedule with the Code: Use experience you gain as you implement to refine the project time scales.
  10. Use the Power of Command Shells: Use the shell when graphical user interfaces don’t cut it.

Please read part 2 of 7 part series inspired from the book Pragmatic Programmer here.

Advertisements

One thought on “I am a Pragmatic Programmer Part 1

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s