I write this because more and more I see companies that I work with and speak to suffering because someone has, for whatever reason, sought to solve a problem using a solution based entirely on another companies needs. The result has been costly in many of the cases that I have seen, and these include branching strategies that have caused severe project delays and complexity, architecture that has devalued a company, and test automation approaches that have crippled budgets and delayed projects.
A solution should be the result of thinking through your needs or problem domain, and providing what you deem to be the most apt way of solving those needs or problem.
Don't take the cheap quick route out, unless you are solving the same problem!
Use others solutions as ideas, or starting points for thinking, but always keep your own needs or problem domain at the forefront of your thinking.
Use others solutions as ideas, or starting points for thinking, but always keep your own needs or problem domain at the forefront of your thinking.