Modernization

Dick Burke rjburke at hal-pc.org
Fri Apr 28 09:44:07 PDT 2006


On Fri, 28 Apr 2006 11:50:11 -0400, Fairlight wrote:

>>From inside the gravity well of a singularity, GCC Consulting shouted:
>> As a developer, I do custom system mostly for niche markets.  My clients

>Keyword:  "I"

>> The presidents of the company asks the same question of each, if I need a
>> modification how long will it take?  They usually respond that they will
>> send of an analysis to review the requirements; then they will review it
>> with programming and then get back with a price.  Then it will be about xx
>> weeks before they can start and xx weeks to finish.  My client the asks,
>> what if I need it right away?  Sorry, that's our procedure.
>> 
>> How long does it take to get a new report?  The usual answer was 8 weeks.
>> Again they ask, what if I need it now?  8 weeks is the answer.
>> 
>> My client then usually says that my current developer will come in and get a
>> report done in less then 2 hours.  As for new programming that we need, it
>> takes him from 1 day to a few weeks from the time we ask him not months.

>Which is all fine and well.  However, besides using another language which
>adds complexity, these other companies, by the very verbiage you've used,
>are not only beaurocratic nightmares, they're using -teams- of developers.
>There's a huge difference in the paradigm.

>On your end, you wrote -all- the code.  You know where something is handled
>down to the table name, possibly even the rough line number if you're
>anything like I am.  You're very in touch with the code because you
>designed and wrote all of it, and you've been doing it for years and
>maintaining it.

>Company 'X' out there has a stock package.  They spent 'y' amount of time
>developing, 'z' time testing, and put it to market.  They have salespeople
>probably selling it that know next to nothing about the innards of the
>software.  The dev team works mostly on bug fixes and the next release.
>They do the occasional customization which by and large isn't needed
>because they tend to sell their software "as-is" at bigger houses, canned,
>and all but shrink-wrapped (and maybe even that).  The devs that actually
>wrote the code probably number 3-10, and that's on a smaller package.  Each
>probably knows one or two subsystems really well and only a smattering of
>how the others work.  They need to get together, coordinate, and come up
>with a consensus of what it will take to get it done.  Is 8 weeks extreme?
>Yes.  Is asking for a formal written spec and at least a few days' analysis
>time out of order?  Not at all.  Certainly not in a multi-person
>development model.  Even in a single-person model, I need time to look over
>my code and consider what will be required--or look over a spec, research
>any relevant technology I don't already know about, and get my house in
>order.

>Doing things without a written spec and off the cuff is THE fastest
>way to screw myself into the ground and get burned on an estimate (and
>historically, estimates aren't my strong point anyway).  If someone
>-really- wants to rush an estimate, let's just say it swings high if
>I don't have a chance to research it, knowing full well that I will
>inevitably have something creep up that requires more time than I'd
>otherwise expect.  Depending on the area involved (UI, networking, other
>subsystems), it can be anywhere from a 10% to a 50% bloat factor if
>I'm rushed into giving an estimate.  Networking and UI are both the
>worst, really.  Networking has added complexity, UI just needs tweaking
>seemingly forever--first by me to get what I envisioned at design and
>during discussions, and inevitably almost half that again to change it to
>whatever the latest bright idea they came up with while I was coding it
>the first time around.  If someone gives me ample time to make a proper
>analysis, they can save themselves on a quote.  If they want to rush, they
>can pay premium for doing so.  It's unrealistic to ask someone to modify
>certain things next to instantly, especially in systems of any complexity.
>And of -course- they want it live ASAP, without the proper testing period
>they should be giving it.  Thankfully I'm no stranger to multi-12hr-day
>internal beta's.

>I've seen places that won't give you enough details to even FORM a solid
>spec.  I turned down one place that couldn't even elucidate their business
>plan in finer detail than "change from Microsoft to Linux".  Those are time
>sinks one does -not- want to deal with.  It may look like you could retire
>off them, but in the end your tranquilizer prescription bill goes through
>the roof, you blow through your own estimates based on their really poor
>elucidation of what they -think- they want, which isn't really what they
>actually want (or -need-!), and you end up taking a loss--sometimes a
>sizeable one.

>Yes, fP makes writing a report in short order, or even changing some good
>deal of code very easy.  The problem is that (at least as it appears to be
>the case on this list) most fP shoppes -appear- to be 1-person endeavors,
>usually 2-person tops.  There are a few exceptions I can think of, but a
>lot of the developers run solo operations, and smaller operations would
>-seem- to be the norm.  That helps them keep all that red tape out of the
>picture.

>Red tape aside, you -can- get burned by rushing in.  I've done it.  I don't
>do it any more.  And if someone insists on forcing me to, they possibly pay
>more than they had to for having done so.

>Anything worth doing is doing right.  I've been taught this since I was
>a kid.  Doing things right, including testing, takes time.  If "Company
>A" didn't have a certain mechanism or system in place for 12 months or
>sometimes 12 years, there's a DAMNED good bet that they don't -NEED- (with
>seven capital N's) it in place overnight, much less the "last month" they
>tell you when they first drop it on your plate and tell you it came from
>on high that they needed this months ago, it's a rush job.  They simply
>-WANT- it that fast.  There are exceptions, especially if it will cost them
>business, and it really did creep up on them quickly and externally.  I can
>understand and try to accomodate that.  But when it's entirely internal and
>someone just hauls off and makes a decision, "Hey, we should be doing this,
>let's do it," and then it's a rush to get an estimate and the completed
>project by means of temporal displacement equipment--uh uh.  Not buying it,
>and I generally tend to take such "past deadlines" a lot less seriously,
>especially if it looks like nothing's been planned for at all and they
>just dreamed this up the night before.  They've lived without it for that
>long, taking the time to do it RIGHT and right the FIRST TIME is not out
>of order.  Doing things on a whim rarely gets anyone anywhere good very
>quickly.

>Into danger rusheth the unwise, at their own peril.

>There's still a huge difference between the beaurocratic and monolithic
>model of development in "heavier" environments, as opposed to the small and
>lightweight approach that a 4GL will afford you as a solo or small-shoppe
>developer.  And that may indeed play to filePro's strengths, and the
>strengths of those like you who adopted it and learned it inside and out.
>I don't belittle your skill, effort, or ethic one bit.  However, there's
>no reason to assume that because someone wants the time to do it right (as
>fits -their- business model and ethic for getting it done right the first
>time), that they're out to screw the customer.  That's just not a blanket
>assertion anyone can justifiably make, IMHO.  You didn't explicitly, but
>the implication seems to be there.  I'd take exception with that notion.

>mark->

It's getting harder and harder to read through your long answers and figure out "What's your point ?".

Dick Burke




More information about the Filepro-list mailing list