1. About
  2. Features
  3. Explore

I am a computer science freelancer who takes on medium-sized projects I can complete in a month or less. I was approached by someone who wanted a set of 12 tutorials at least 500 words each about certain programming topics with code examples and workouts. We talked payment and I accepted this project and got to work. I have been using GitHub to write the pieces and publish them privately on my account.

Here's where things get tricky. After I had completed the tutorials, but before I sent them to him, he disclosed to me his full name and the institution that he attends. It turns out that this was his honors project for an undergraduate major in Computer Science. He has already paid me.

My dilemma is this: I would like to return his money and not send him the tutorials and have him fail his school project. However, I have worked on this for 3 weeks, and I obviously need the money.

In our original conversation, he made no such mentions of secrecy, so at the very least I could make the GitHub repository public and still accept his payment.

My question is this: What is my best course of action? I don't want him to submit that work as his own. However, I still would like to get paid as he did not confine to me he was planning on plagiarism until the very end.

1 Answer 1

I think this is one of the more interesting ethical questions I've ever seen on this site. The answer is really not clear to me!

I think this depends upon the ethical principles on which your business is based. Why are you freelancing medium sized CS projects for pay? Because you need or want the money? To improve your skills? To build your reputation as a programmer? To help the world? These are all reasonable answers, but the amount of weight you give them should inform your response.

Here's where things get tricky. After I had completed the tutorials, but before I sent them to him, he disclosed to me his full name and the institution that he attends. It turns out that this was his honors project for an undergraduate major in Computer Science. He has already paid me.

First of all, I think there's a lesson here about doing business for pseudonymous clients. Many mainstream businesses require identifying personal information from their clients. Some don't, but one presumes they are founded on different ethical principles than the ones that do. If you have any qualms at all about how your product will be used, you should exercise some due diligence in finding out who your clients are and how your work would be used. In this case: what did you think the work would be used for? Did you ask? I think that matters: if your client actively was dishonest or misleading with you, then he is behaving unethically even in his transaction with you. However, if you never asked then -- given that you actually care -- it seems that you have made a mistake.

My dilemma is this: I would like to return his money and not send him the tutorials and have him fail his school project. However, I have worked on this for 3 weeks, and I obviously need the money.

Maybe you need the money, but it's not obvious. Just because you've worked on something for three weeks doesn't make it ethically justified to take the paycheck. Clearly one can imagine conditions under which upon learning the purpose of the work, the only ethical action would be to not provide the product and take the loss of pay. On the other hand, if you would suffer sufficiently dire consequences from not receiving the money -- e.g. being evicted from your home or being unable to provide food and clothing to yourself or your dependents -- then in this case taking the money becomes the lesser evil.

I would like to say that you are only ethically justified in taking the money and turning the student in if (i) you need the money for serious reasons as above and (ii) the student was deceptive in his dealings with you, as above. Absent these two conditions, it looks to me like you are not dealing in good faith with someone who is paying you. The fact that the product is allowing a student to gain a degree dishonestly is definitely an ethical concern (to me, in particular) but it is not clear that it outweighs the other ethical concerns so as to allow you to "turn the tables" on the student after payment.

One should also point out that the ethical obligation not to commit academic dishonesty lies with the student; although it hurts me a bit to say so, I don't think that the rest of the world is ethically obligated to refrain from helping students cheat. I admire you for wanting to refrain from doing this, but I think that if you are really serious about this then you should seriously entertain not accepting the payment.

Added: Some others have suggested that the OP has an ethical obligation to complete the business transaction with his client. @Mehrdad says in a commment:

Food for thought: if you refused to give the code and refunded him but he sued you for damages (because of, say, a broken contract + lost time/opportunities), do you think you would win the case? I don't know about you, but if I were the judge, I would likely rule against you.

I am not a businessman, lawyer or judge but I find the prospect of a lawsuit extremely far-fetched, and even the underlying principle seems suspect. A business contract is, in my understanding, an agreement to receive payment for certain services rendered. In all of my experience, a willingness to forego the payment releases the business from the obligation to perform the services: in other words, the contract is probably not being broken. (In the TV show Catch a contractor -- a reality show that enacts sting operations for shady contractors -- when the contractor is "caught" they are presented with three options: completing the work, giving the money back, or being sued. They never give the money back.) In terms of suing for lost time and opportunities: the business has lost the time and opportunities as well. In this case the business would be refusing service for a clear ethical reason so public exposure would make the OP look much worse than the business...in my opinion, of course.

Further Added: I seem to have missed the part where the OP said he has already been paid. In that case I agree that it is likely that according to the contract, the OP has a legal obligation to provide the services. He could still feel personally that his ethical obligation to not be part of academic dishonesty is higher than his legal obligation...in which case he should be prepared to weather some loss on the legal/business side. I am not counseling him to do so, of course.

Another option is for the OP to confront his client and say that he believes his services have been contracted for academically dishonest reasons. Perhaps he is wrong about that and his client can set him straight. If not, then he and the client may well agree that the best thing is to dissolve the contract and stop the mutually known instance of academic dishonesty from taking place. From a purely ethical standpoint, this seems like a better outcome than taking the money and wondering whether to turn the tables on the client.