[thelist] What's a Programmer To Do?

Martin Burns martin at easyweb.co.uk
Sun Apr 5 16:08:15 CDT 2009


On 4 Apr 2009, at 18:58, Hassan Schroeder wrote:

>> Unless you can convince me that custom coding is faster/cheaper than
>> configuring a CMS
>
> What? No convincing needed -- a client comes to me with a use case:
> "I want to be able to update my site myself".
>
> The details of that requirement, as well as the best solution, are up
> to me to propose.

Yes, true. But are you telling me that you're not going to give me the  
option? Are you relying on my inexperience to not call you out on it?  
"Dear client: I'm billing you more because I want to have fun, but you  
don't realise it, and I'm not telling"

> And I'd say there's a place for the TDD concept of "the least amount
> of code that will make the test pass": simple, lean, focused. Fewer
> moving parts to break.

I'm the client: the least amount of *money* that will make the test  
pass, if you please.

> And speaking of tests...
>
>> All you'll leave me with is a less maintainable, less
>> tested site where time has been wasted re-solving standard problems.
>
> "Popular" or "widely deployed" doesn't to my mind mean "tested".  :-)

Not axiomatically, true, but it does mean that I have a wider choice  
of people I can go to to take it on. If you severely screw up at some  
point in the future, I will retain the choice to fire you, and still  
have someone that can take on the site. Clients really, really, really  
hate lock-in.

And even without systematic testing, bet you a tenner that any real  
issue with the codebase will have been hit by other people in  
production use. Any major security holes will have been suffered  
already by *other* people.

> If the CMS in question doesn't have a comprehensive set of unit tests,
> and setting it up involves substantial tinkering and customization,

Agreed for new functionality, but surprisingly few clients actually  
need custom functionality - the vast majority of use cases are common.

And unless you're unit testing every single thing, from the server's  
bare metal up, then you're relying on trust at some level already.

Cheers
Martin


--
 > Spammers: Send me email -> yumyum at easyweb.co.uk to train my filter
 > http://dspam.nuclearelephant.com/








More information about the thelist mailing list