The performer’s myth (1) Scamped code

You’re reading my first article on why the performer is a myth in the web development universe, one which negatively impacts developers and projects.

When scamping becomes the norm

For a long time, I believed that scamped development, at a Services Center, was only the logical result of low costs against high expectations, which forced developers into acting quickly without time to design before doing, thin periods of testing, and skimpy to zero documentation on what was done. May it be from-scratch projects which fill everybody’s hearts with hope – at first – or that painful website maintaining since 200X, what I see is : how it begins and how it ends. Because the faults which secretly lies at the beginning, really shows on the long run.

Experience taught me something I would have never expected, after hearing so many developers complaining about scamped code and how doing things right would turn a nightmare into that job they used to love : deep down, they’re driven to scamp, until they consciouly want to. They publicly hate it, disparage it, mock it – but accept to deal with it on a daily basis, even admitting they’re regularly scamping themselves. Are they happy with it, you ask ? As much as happiness may matter where they work, productivity goes first when it comes to be proud of their tangible, calculable results in front of executives.

pexels-photo-47444

It’s results over humans

Low costs versus high expectations do put a high pressure on the worker, and it can worsen when the obligation of result is in the contract. As a human, the developer should only be able to endure a limited amount of pressure before breaking down. Reality proves many of us accept high amounts of pressure on a daily basis, until it becomes that routine nobody’s still surprised about. Nervous breakdown may be now well known, but the phenomenon can’t be cured in a society that moved all its value into intellectual productivity – value reads here with two weights, as moral value as well as economical value.

I’m not going to explain the economical value, as I think you already guess why a cheap but shiny product is what the typical company needs on today’s market, to make money in a competitive world. But it seems that, the global, economical logic pervaded into the workers mind. The typical manager lives the schizophrenia of upholding his team while challenging their human imperfections daily until they match the economical goal.

What a developer needs to do a good job and what everybody else on the project needs are many times two different worlds. While managers play up on the importance of clean, painstaking and stable code, they add on the productive’s workload many meetings and reporting tasks they need while the developer looses hours of coding to the befenit of an endless work of reinsurance for every non-developer on the project.

And scamping saves the day

In the end to split the difference, developers wouldn’t be surviving the modern pressure their jobs carries within, if they didn’t scamp their code when necessary. Clients ask for results : the developer code remains functional. Managers ask for reporting : the developer actions are dully noted on five different boards, and commented everyday.

At the end of the day, developers only want food on the table and maybe a beer, even if they have to market themselves as available and open enthusiasts which value code poetry over code spaghettis.

Developers simply won’t be guardians of the Clean Code at the same time you implicitly ask them to be cold-blooded ninjas that will use any means necessary to do the job. And scamping saves the day, until that very bug that makes the client wonder what is the exact quality of what they buyed. Because of course, the guy from the marketing didn’t sold it by saying “Rest assured our developers always scamp their code to match your pace”.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s