Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^2: "Bah! Scrumbug!" (Lessons from the scrap-bin)

by sundialsvc4 (Abbot)
on Dec 15, 2010 at 17:58 UTC ( [id://877329]=note: print w/replies, xml ) Need Help??


in reply to Re: "Bah! Scrumbug!" (Lessons from the scrap-bin)
in thread "Bah! Scrumbug!" (Lessons from the scrap-bin)

Bits aren't a precious commodity. Code is cheap. It doesn't involve tons of rock and dirt to be moved and crushed to extract a few fragments of ore. A small error doesn't mean a days work is scrapped and we'll have to start all over again. Even code that is written, tested, and then discarded has value: we have learned something (this feature isn't "working" - where "working" typically means "making money for the company")

It is truly impossible for me to dis-agree with that comment more vociferously than I do.   “Bits,” as you call them, are in fact one of the most-expensive work products that exist.   And sloppy business practices are one of the big reasons why.

What would you think about a building contractor who showed up with his crew and started furiously cutting boards and nailing them up and, about half an hour later, the foreman walked over to you and said, “now, what exactly do you want to build here?”

Let’s say that you do not grab the nearest two-by-four and club the guy, as he so richly deserves to be clubbed.   Let’s say, instead, that you play along (“he’s an expert, after all”), and so you tell him.   And so he tells his men to rip down all the stuff they’re building and to put up something else, instead.   Which they promptly do, with just as much energy as before.   The foreman points at the pile of broken wood and says, “but it has value.   It was a good learning experience.   My boys just learned something...”

You suddenly put two-and-two together.   He’s expecting you to pay for all of that wasted wood!

Are you grabbing for that two-by-four now?   You should be.   And yet, here we are, telling upper management types that they should be paying whatever bill we send them, “because we are obviously so busy.”

I can tell you a business practice that works, because I have done it for years:

  • You will start by signing an eight-page contract.
  • Everything that is done, is done under the auspices of a “task order” which is part of the contract.
  • “Task #1” consists of “creating Tasks #2-n.”   You will pay for this service.   In fact, you should not be alarmed if several specification-tasks are conducted, possibly consuming one-third to one-half of the project’s contemplated costs, before any code is written by anyone anywhere.
  • A definite price will be attached to each task-order; 50% down, 50% on completion.   Acceptance of one task order does not obligate acceptance of any other.   The terms must be mutually acceptable to both parties.
  • If you change your mind ... that’s a new task-order that amends the first, and we don’t have to consent to it.
  • You are interested in the results obtained, not where the work is done or exactly how the work is done.   “Results will be obtained” only after (you pay for...) a very rigorous definition of what those “results” shall be.   And you will do that, and we will compel you to do that, because . . .
  • The completed work is guaranteed against defects in workmanship for a period of 30 days following delivery.   If any defect against the stated task-order specifications is found, you do not pay for the direct costs of the remedy.

I contract for all sorts of services under similar terms put forth by the professionals that I deal with.   In fact, I really do not choose to deal with anyone who does not pursue their business with such rigor.   I have waited in line for weeks to have work done by those trustworthy contractors, and I will continue to do so.   I have a careful file of business cards, and plenty of extras.

The expectations of internal and external business customers are no different.   A single computer programmer, within a team of dozens, might represent a capital outlay of several thousand US Dollars a week, as that person pursues a mission critical undertaking.   “Code is cheap?!?!”

Replies are listed 'Best First'.
Re^3: "Bah! Scrumbug!" (Lessons from the scrap-bin)
by chromatic (Archbishop) on Dec 15, 2010 at 19:13 UTC
    What would you think about a building contractor...

    Having worked in both construction and software, I can tell you that construction is more like software than software should be like some mythical view of construction that doesn't actually work in practice, either.

    Q: What do you call a construction project where the crew shows up on the first Monday morning at 7 am to a two-inch pile of change requests? A: Normal.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (4)
As of 2024-04-19 21:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found