Exploitation Driven Software Development
Posted: Monday, March 8, 2010 by Ric inJoin me in a quick journey into the world of Exploitation Driven Software Development (EDSD) methodologies.
The word criminal may pop up, here and there, as I describe my personal experience in the world of software development in a company that had no sense of smell, when handling the developers they had and their customer base
What is EDSD? When a company doesn't respect its workers and customers, its exploiting them, unfortunately, this still happens in this day and age...
When I say exploitation, sadly in this case, I don’t just mean the hiring of cheap labor and have them work over 20 hours a day, which unfortunately I did see happen at a previous company (more about it below), but I want to focus on the exploitation of both the work force and the good will of the customers.
In order to have a sustainable, maintainable business, and not have both your employees (the ones good enough to be able to go somewhere else) and customers, not stop renewing their contracts, first treat them both.. with respect. (Should be obvious, no?)
Respect goes far beyond the niceties of saying hello and please, I talk of respecting the work people do, to you, as an employer, and the work you present to a buyer, as a retailer.
Work right(s)
Something that is very well established in developed countries (at least legally) is:
- People work for you, the work they do, should be based on what they have specialized themselves in.
- Work should be done to meet a requirement, this requirement is to be detailed, specified
- The results of their work are to be measured against clearly marked deliverables
- The deliverables are to be measured with real metrics, (something besides pub talk).
Take all that away, and we're all back to slave camps, where people just do as they are told and only stop working when they are "sent" home.
After what should have been considered to be a full 9 to 5 work day (one that ends up going into the late evening hours), calling an employee at around 3 am (without prior consent) is not only unprofessional, its disrespectful and criminal.
When the only objective of the management team is to have the customer buy something rushed into existence without any thought of quality, usability or general presentation, with no regards to coherence and competence, the end result is a work force made of bad apples (spoiled by the abuse) and a very disgruntled customer base.
Always take a step back to remember: as important as shipping is;
Shipping should never be the ONLY factor to consider.
- Ship now
- Develop the product later at the customer's expense
- Have the same customer pay for all the work done
- Rinse & repeat
The EDSD process detailed above, may work once or twice, but its criminal and obviously not a long term, sustainable business plan:
How to have your application developed with EDSD:
- Pay the development of the software completely at the customer’s expense, by selling vaporware
- Have the same customer find
all of the bugs while using the product in production- Have the customer report these bugs in detail, because you never even tested the thing in the first place, so you really need some pointers
- Get the customer to pay (extra on top of support) for fixing these bugs.
This is not only a recipe for disaster; it is also to be considered as a criminal offense to the customer in question and the community at large.
Not to mention the damage this does to all software companies and professionals all around the world.
So I am honestly and naively amazed at having seen this as common practice at a previous work place.
An S.A.P. derived startup delving into the world of “real” software development, thinks:
Software development is easy, because with Visual Studio you can have a lemming program just about anything in under 5 minutes.
You may be a good salesman, but there are limits to how far you can get away with this kind of abuse, so sure enough, the ONE paying customer this sad company had, stopped renewing the contract that was paying for this madness.
It’s almost laughable to remember the management team, at the time the contract was cancelled, wondering why the customer drops them like a sack of rotten potatoes after the third run of the same EDSD process.
Quite frankly they dumped them once they had a good hard look at the source code, some of which, the developers had to key in, by having a non developer management person dictate insanely non engineered code sitting behind them. Yes, Wimp management and EDSD go together hand in hand.
Sadly, there was logic to their madness (via a complete lack of ethics) as that company now intends to re-sell the same product developed with EDSD methodologies to other customers for a reduced price. (after simply changing variable names, since the IP rights actually are supposed to belong to the previous customer…)
I wonder how many such cases exist, of parasitical survival, due to this kind of immoral corruption of the theory of evolution in business. (Plenty, I would imagine).
As successful as the companies using this kind of work practices may be, I am just happy to have the luxury to keep my moral high ground and back away to do something else with my time.
Please don't get me wrong, I like the business world, look around, everything we see, seems to have the purpose of making us buy something else.
Also I send my sympathies to everyone and anyone who "doesn't have a choice" and keeps having to put up with working in a place they don’t feel happy in, but here I have to make the argument for refusing to work for the "wrong people"