Good Coding Practices and the reason why we don’t fix 3rd party systems.
My Two Cents: Over the years of coding I have learned a lot, and I continue to learn, which makes coding a lot of fun and challenging. Some of the major problems I have come across is bad code, from bad or lazy coding and the lack of documentation. I currently write code using Visual Studio 2010 SP1. I write in order: Visual Basic, Visual C#, along with asp, and php. I design relational databases in Microsoft SQL Server 2008 R2. Our company policy is NOT to fix 3rd party source code. I have seen some pretty horrible stuff from 3rd party systems. One of the biggest problems is no error handling. This just amazes me. How hard is it to put a try and catch statements in your sub routines and functions? If I see any more sql statements in a web.config file I will scream. How stupid can these coders be? I also hate seeing purchased 3rd party controls with copywrite rules in some of these 3rd party systems I have looked at, especially when the copyright is for non-commercial purposes. This is just a few of the reasons why we do not fix or take over 3rd party code. It is faster to development a new scope of work and write the systems from scratch.
Over a short time the system will run better, faster, the cost of ownership will decrease, and you don’t have to worry about the legal ramifications of using bad code too.