Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

Re^5: Nobody Expects the Agile Imposition (Part VIII): Software Craftsmanship

by BrowserUk (Pope)
on Jun 12, 2015 at 00:44 UTC ( #1130124=note: print w/replies, xml ) Need Help??

in reply to Re^4: Nobody Expects the Agile Imposition (Part VIII): Software Craftsmanship
in thread Nobody Expects the Agile Imposition (Part VIII): Software Craftsmanship

And who are you? Nobody really.

Exactly. Just Another Programmer. An old-timer who's been there, done that and worn out several of the tee-shirts.

No axe to grind. No nothing to gain nor lose by what others do. Just a story to tell.

Make of it what you will.

I, against my better judgement, was enrolled on an SSADM course by the then holder of my contract.

The 2 week course was paid for; and the location was some 30 miles closer to my home than the work site. So, what the hay.

The course wasn't for programmers, it was aimed at project & team leaders -- I was neither of those; but my project leader (an employee) and I had a great working relationship that went back 2 1/2 years at that point. He was responsible for me being signed up to it. When I made a token protest; he said "Do it for me. I'll make it up to you.". How could I refuse.

I'll try to keep this short; but the basis of the course was a full database of a large scale (private sector for military) software project that had gone months and many millions over budget, that the company promoting the methodology had obtained (legally) from the government.

It included the full source control history (Perforce); documentation; meeting minutes; test suites; bug-track DB and logs; the whole kit&caboodle.

What they had done was feed all that data into their SSADM db; used it to identify various stages in the project where things had gone awry; shown how by using their system, these could have been identified earlier; and then projected an outcome that (they claimed) would have resulted from the use of their system on that project.

Which naturally showed that it came in on budget and ahead of schedule.

Of course: all the code was that produced by the original process; the final results were those from the original process. All they'd done was shrink the time frame, on the basis that their process would have gotten to the end sooner. But nothing in the source-tree had been produced by their process!

So, 4 days into the course and all we'd had was the sales pitch.

The Friday was reserved for taking us through some of the processes and reports showing us what they identified; how they identified; and the knock-on beneficial effect of using them.

One part involved a set of procedures that each programmer on the project would complete daily. From these the project leaders could produce a weekly report that took a few hours to run over the weekend; that he could then present to management on Monday morning.

For the course, the company had set up a small, dedicated token ring network of OS/2 based workstations talking to a dedicated server right there in the conference room where the course was held.

Whilst the presenters were taking my fellow presentees through the details of the programmer procedures and the database that was constructed from it; and the processing behind the report; I knocked up a short script (REXX) that ran through the Perforce logs and extracted the same information. It took an hour or so to run, but was completed by the time we returned from lunch.

When I saw the results; I laughed out loud. (Not AOL style, but really. Right there in the conference room.) Much to the consternation of the presenters.

When asked -- with more than a hint of derisory sarcasm; I'd already been identified as a skeptic -- what I found so funny; I told them:

That report that you produce over the weekends -- the one that relies on every programmer spending 20 minutes a day completing your on-line questionnaire -- can be produced in around an hour, directly from the Perforce DB, without any extra work for either the programmer or PL's at all. And without your expensive software and systems.

Oh. And by the way, Your results are wrong!

Story short. I was asked to leave. Which I did.

When returning to work the following Monday morning; I was expecting a rocket; or worse. I didn't come.

In fact, I barely saw hide or hair of my PL all day.

On Tuesday I arrived at my desk to find a sticky on my screen that read:

Be in Conference room A3 at 10:00am. Be smart. Keep your mouth firmly shut and let me do the talking. Until I ask you to speak. Then answer my questions truthfully. And don't hold back.

I was sent as his stand-in because he was having SSADM foisted upon him by management; and didn't want it.

His words (later): I knew you'd see through the bullshit!

The happy working relationship, and my contract, continued for another 2 years (6-months at a time) until he was promoted and I moved on.

There is little new in this world; just re-hashes of old ideas. And the same bad old ideas keep resurfacing -- with new acronyms and buzzwords -- about once every 10 years or so.

New eras; new terminology; new fools.

You can polish a turd; but it's still a turd.

The saying goes: you live and learn. My corollary is: There is much to be learnt that cannot be, until you have lived it.

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority". I'm with torvalds on this
In the absence of evidence, opinion is indistinguishable from prejudice. Agile (and TDD) debunked
  • Comment on Re^5: Nobody Expects the Agile Imposition (Part VIII): Software Craftsmanship

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1130124]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (2)
As of 2021-01-26 05:23 GMT
Find Nodes?
    Voting Booth?