I’m a Pragmatic Programmer

--Originally published at TI2011 – Project Evaluation and Management

Final review for The Pragmatic Programmer by Hunt, A. & Thomas, D.

Resultado de imagen

The book contains a quick reference guide with 70 tips using entertaining anecdores to explain the way the autors made his workflow more efficient and very productive.

So here is the review of all the 70 tips:

  1. Care about your craft – Why you soend your life developing software?
  2. Think! About your work – Take control, explain what can be done.
  3. Provide options, Don’t make LAME excuses 
  4. Don’t live with broken windows – Fix bad designs, wrong decisions and poor code
  5. Be a Catalyst for Change – Show how can it be and help in creating it.
  6. Remember the Big Picture – Check what’s happening around you.
  7. Make quality a requirements issue – involve users to determinate the real quality
  8. Invest regularly in your knowledge portafolio – make learning a habit
  9. Critically Analyze What you read and hear – analyze information in terms of you and your project
  10. It’s both what you say and the way you say it – Know how to communicate effectively your ideas
  11. DRY – DON’T REPEAT YOURSELF – Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
  12. Make it easy to reuse – it it’s easy to reuse, people will.
  13. Eliminate effects between unrelated things – Design components that are indepentedent and self-contained
  14. There are no final decisions – No decision is cast in STONE
  15. Use tracer bullets to find the target 
  16. Prototype to Learn – Prototyping is a learning experience
  17. Program Close to the Problem Domain – Design and code in your user’s language.
  18. Estimate to avoid surprises – Estimate before you start.
  19. Iterate the schedule with the code – Use experience you gain as you implement to refine the project.
  20. Keep Knowledge in Plain Text – It helps start your
    Continue reading "I’m a Pragmatic Programmer"

Pragmatic Projects – Tips

--Originally published at TI2011 – Project Evaluation and Management

Chapter 8 – Pragmatic Projects by Hunt, A. &Thomas, D.

Resultado de imagen para tips

So, as your projects gets under way, we need to move away from individual issues and code project-sized issues. We are not going to detail into specifics project managment, but talk about improve and work on critical areas that can make or break any project.

Stablish some ground rules

As you have more than one person working on a project, make clear and stablish some ground rules and delegate parts of the project. This is how a Team or Pragmatic Team should work.

Automate your procedures

This is one of the single most important factor in making project activities work consistently and reliably.

Test your code

Most developers hate testing. Finding bugs is like fishing with a net. We use fine, smal nets to catch minnows, and big, coarse nets (integration tests) to catch the killet sharks. So TEST EARLY, TEST OFTEN and TEST AUTOMATICALLY.

Documentation

It is clear that it is one of the most things that developers dislike. But keep in mind that it will help you and the user to have a better image and scope of the project.

Sign your work

Developers must rejoice in accepting challenges and if we are responsible for a design, or piece of code, then sign your work.