Good Ingredients

What Makes an Ingredient "Good"

What Makes an Ingredient...

Its very easy to say one thing is better than something else because of this fact or that but the truth is that the "goodness" of a particular product depends on quite a few factors which all have to be evaluated:

  • Availability of resources the product requires
  • Appropriateness of the knowledge of the people who will use it
  • Availability of skills elsewhere
  • Quality of the documentation related to the task you wish the product to perform
  • Ability of the product to perform its desired role
  • Ability to change the product so it does perform its desired role
  • Ability to afford the product and its ongoing cost

From the items above it should be pretty clear that what the product actually does is just one of the factors that will make it good. For example, if you are a small team of developers with limited resources, a Windows based platform would not be good because you might not be able to afford the license fees. If you were a multi-billion pound oil company, that might be less of an issue.

What is interesting is that a particular product or set of products can become good even if they aren't particularly good to start with. If a group of people form a community around a product there is suddenly availability of skills, if those people write documentation about how to use a product in a particular way, avoiding its pitfalls, it can suddenly perform its desired role. If people read that documentation, the product then becomes appropriate to their knowledge and they can use it effectively. If they join the community, the cycle can community.

A big problem in the open source community at the moment is choice. That might sound an odd thing to say, but in order for choice to be a benefit you have to know enough about all the available choices and about how they reflect your needs. A lot of the time you just want one sensible choice which works well rather than a myriad of choices where you won't know if they will work well until you've tried them. Ruby on Rails was built on the principles of "Convention over configuration" and "Constraints are Liberating". Good Ingredients are built on the same principle. By using the default Good Ingredients configurations as your starting point you will have gone a long way to sovling your problems without requireing years of experience and years of failures along the way.

(view source)