Free Republic
Browse · Search
Bloggers & Personal
Topics · Post Article

To: discostu

What did you think of my discussion of that issue in the article? And the description of the solution I’m pointing to?


9 posted on 09/20/2010 9:36:13 AM PDT by RogerFGay
[ Post Reply | Private Reply | To 6 | View Replies ]


To: RogerFGay
In my experience, time is always the biggest factor. "They" want it developed yesterday. So "they" turn to quick and dirty programmers who have no problem re-inventing the wheel in 6 weeks. A cultural change has to take place in a company for people to recognize the benefits, both short and long term, of reusable code.

It took me years to teach co-workers and management that if we write it once, we test it once. Quality Assurance was always the bottleneck to releasing new sftware. We had so much spaghetti code that had to be tested that it impacted our release date by months, not weeks, every single time.

The key to success in changing the culture at my (former) company was to implement a suite of software tesing tools. Once the testers realized they could build (write) a set of tests and run it against the code over and over to their hearts' content, I had an army on my side. They began asking for reusable code so they could reuse the test harnesses they had already built.

I prototyped examples for the application developers and encouraged them to expand upon the ideas. Even the "quick and dirty" programmers began to catch on. I added extensive comments to my prototypes always making an effort to explain why more than what. "The user documentation explains what it does," I would tell them. "Use your comments to tell the next programmer what you were thinking and why you decided to write it this way."

The time it took to test and release software updates that included the reusable code decreased exponentially. Management was so impressed by the "time factor" that they began allowing us to rewrite sections of the spaghetti code with each new update/release. And what programmer doesn't relish the idea of rewriting some piece of crap instead of fixing it over and over?

Convincing the software testers of the benefits of reusable code was where I started. It was a huge success in my particular experience because they had always been the bottleneck. Removing that obstacle enabled more software releases in less time, which made management and customers ecstatic.

31 posted on 09/20/2010 11:07:04 AM PDT by BuckeyeTexan (There are those that break and bend. I'm the other kind.)
[ Post Reply | Private Reply | To 9 | View Replies ]

To: RogerFGay

The “advertising” might work. The hard part is of course that the developer needs to know there’s an in house solution to Problem X before he realizes he has Problem X. Because developers tend to be natural problem solvers once they know they have Problem X their natural tendency is to tackle it, not to step back and wonder if somebody in the building has already solved it. And of course the other part of the problem is people tend to have tunnel vision, until they have to tackle Problem X most people don’t give a crap if anybody has a solution. So it all combines to put you in a position where you need to tell everybody you have that solution, knowing they don’t actually care, and hoping they remember when it matters.


55 posted on 09/20/2010 1:29:31 PM PDT by discostu (Keyser Soze lives)
[ Post Reply | Private Reply | To 9 | View Replies ]

Free Republic
Browse · Search
Bloggers & Personal
Topics · Post Article


FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson