As is my habit when looking for inspiration for a new blog entry, I recently came across a question on Programmers.SE which seemed at first to be asking one question, but was really about something else. In this case the poster seemed to be asking about trying to understand something about the SCRUM methodology, but was really asking about how to convince his company to abandon development on a failing project, and redesigning the product as a new green field project. Naturally I weighed into the debate with my own lengthy answer about this, but it has since had me thinking about the question of when - if ever - it might be appropriate to actually push for a redesign.
I've now worked with my present employer for 9½ years. In that time, I have redesigned a flagship product twice. For my previous employer, I worked there for only 1½ years and I convinced the company to redesign their flagship product. Did I make the right decisions, and were these decisions made for the right reasons?
A place for me to vent my spleen about processes, methodologies, philosophies, mythologies, tools, and systems which relate to the engineering of software.
Showing posts with label maintainability. Show all posts
Showing posts with label maintainability. Show all posts
Thursday, 12 April 2012
Wednesday, 15 February 2012
Defining code as "maintainable" is just plain dumb!
There... I said it... and I've done it again, I've made another big-assed bold statement that I am sure will get flamed in some small corder of the universe. Thankfully, I'll be too busy with my head somewhere else trying to unlock the mysteries of why people think the way the do about code maintainability. Which means I'll be writing this blog article and totally oblivious to the little flame war that I expect will erupt and threaten to eventually engulf the entire universe if I don't manage to quell the flame with a good well reasoned commentary! (Phew!! The universe really dodged a bullet there, let me tell you!!)... Where was I?
So the issue (oh yes, I have SO many) is that I really dislike hearing people say things like:
"...this is good maintainable code..."
or even worse:
"...this code is Un-Maintainable!!..."
I happen to be a believer that thanks to the almighty Uncle Bob and others who brought into the light Agile and Refactoring and all that really wonderful stuff, we can maintain ALL code. Yes, I have found my true coder's calling and decided to preach to the unwashed masses that you who are the unbelieving lost binary souls can also learn that you don't have to throw out your code, just because someone has been spreading such a heathenous word as "Un...Maintainable..." (you may hiss and jeeer every time you hear that word spoken!).
So the issue (oh yes, I have SO many) is that I really dislike hearing people say things like:
"...this is good maintainable code..."
or even worse:
"...this code is Un-Maintainable!!..."
I happen to be a believer that thanks to the almighty Uncle Bob and others who brought into the light Agile and Refactoring and all that really wonderful stuff, we can maintain ALL code. Yes, I have found my true coder's calling and decided to preach to the unwashed masses that you who are the unbelieving lost binary souls can also learn that you don't have to throw out your code, just because someone has been spreading such a heathenous word as "Un...Maintainable..." (you may hiss and jeeer every time you hear that word spoken!).
Subscribe to:
Posts (Atom)