Jump to content

Ethics, Charge premium rate for working on bad code?


Recommended Posts

When in the Navy I used to play chess with a guy who ws rated. After some time he said to me "Ben I have to stop playing chess with you, I am getting dumber."

In the same way that we gather together (virtually) to learn from those better than us gather only with those behind us can retard us.

I have seen developers pick-up bad habits after spending time maintaning bad code developed by others. I have also known one developer that had trouble re-certifying since it was soooo long since he worked on good code. SO the idea hit me that this situation should warrent "battle pay".

So the question I lay before you is;

Is it ethical to charge a premium to work on bad code?

Note:

I don't control such things where I work so it will never happen here but I am still interested in hearing how other react to such an idea.

Thank you,

Ben

PS If I rented mules for a living and one customer always brought them back beaten, I'd would be concidering the same.

Link to comment
Is it ethical to charge a premium to work on bad code?

Yes, unless it's your [company's] code!

I don't think the reason for charging a premium, or even that a premium is involved, is important. It might, however, come up in the discussion after the customer receives your quote. ;)

  • Like 1
Link to comment

When in the Navy I used to play chess with a guy who ws rated. After some time he said to me "Ben I have to stop playing chess with you, I am getting dumber."

In the same way that we gather together (virtually) to learn from those better than us gather only with those behind us can retard us.

I have seen developers pick-up bad habits after spending time maintaning bad code developed by others. I have also known one developer that had trouble re-certifying since it was soooo long since he worked on good code. SO the idea hit me that this situation should warrent "battle pay".

So the question I lay before you is;

Is it ethical to charge a premium to work on bad code?

Note:

I don't control such things where I work so it will never happen here but I am still interested in hearing how other react to such an idea.

Thank you,

Ben

PS If I rented mules for a living and one customer always brought them back beaten, I'd would be concidering the same.

I'm reminded of the saying...

Software is like a fart. Yours is OK. But everyone else's stinks. wink.gif

Charge more because it stinks so badly I can taste it? That's a contractor question but my view would be the same. I wouldn't charge more.

If I think software is too bad, I would decline the contract because you can't sit there and whine after you've taken responsibility for it. You've been contracted to do software!

If I really must work with it. then I'll re-code it. I'd just escalate the time-scale to account for the "learning curve" and "recoding". Then they can either accept or decline.

  • Like 2
Link to comment

II wouldn't charge more.

[...]

I'd just escalate the time-scale to account for the "learning curve" and "recoding".

That sounds like you would charge more. Not as a penalty for foul-smelling code, but because you're being realistic in that you'd have to include the learning curve or the time to rewrite it.

My take on the question was that Ben was asking was whether it would be ethical to charge above your standard rate to extend a particularly odoriferous project (after accounting for the things you mentioned) simply because the work involved is so distasteful?

  • Like 1
Link to comment

That sounds like you would charge more. Not as a penalty for foul-smelling code, but because you're being realistic in that you'd have to include the learning curve or the time to rewrite it.

My take on the question was that Ben was asking was whether it would be ethical to charge above your standard rate to extend a particularly odoriferous project (after accounting for the things you mentioned) simply because the work involved is so distasteful?

I think your being a bit pedantic. I too agree with your take. But I wouldn't charge a premium rate. It would be my standard rate. Software is software. Like I said. Its a contractor question. Contractors are valued by their time on a specific task. Employees are valued by contributions (not only time) on various goals.

Link to comment
Is it ethical to charge a premium to work on bad code?

Depends on your point of view - if it's as the developer and you find working on something you don't want to is worth more, then sure. If you're the customer then you may not care if the code is bad, so it comes down to what value you put on the work. It's a lovely example of capatilism at work - charge alignment with customer's perceived value. Trying to charge a premium just because the code is poor will be more difficult to defend to the customer (unless, of course, they're a LabVIEW programmer and they, in turn, recognize that the code's poor and feel your pain).

Software is like a fart. Yours is OK. But everyone else's stinks. wink.gif

Your anal-ogy fails in that you should be able to recognise when others' code is far sweeter smelling than your own :P

Link to comment

You can charge whatever rate your customer is willing to pay, but that's just the flaming capitalist in me talking.

I doubt I could charge a higher rate to work on crappy code. To me that sounds too much like punishing the customer for the sins of the previous developer. Writing code is writing code and I would bill accordingly.

I have seen developers pick-up bad habits after spending time maintaning bad code developed by others. I have also known one developer that had trouble re-certifying since it was soooo long since he worked on good code. SO the idea hit me that this situation should warrent "battle pay".

That is a serious and legitimate concern. I worked with bad code long enough to get pretty good at deciding when it is better to scrap the crap and start a re-write. Life is too short to work with crappy code. And the customer must be led to understand that it really is better and it will go faster starting from scratch than working with code loaded with stacked sequences, 2000 x 2000 block diagrams, hundreds of locals, etc. etc. I would like to think I have become quite the expert at making these determinations.

  • Like 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.