Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Say you were hired to create education software that will be sold to students of a particular academic institution. You are the only developer working on this project and have written all of the code. An open source alternative to the project has the potential of benefiting underprivileged students from around the world. In short, a free alternative would contribute to the greater good of humanity. Would it be "OK" to create an open source alternative to the software that you are being paid to develop?

P.S. The software will only be used by the students of the institution. There are no plans to distribute it commercially. The application does not make use of other people's intellectual property.

share|improve this question
3  
Elephant in the room: Creating and distributing a free competing version of the product that your current (or recent) employer is paying you to create would almost certainly be shooting your future job prospects in the foot. Prospective future employers will see that you've done this in the past, and will be (rightly) concerned that you might do it to them as well, if they hired you. –  Trevor Powell Oct 27 '11 at 21:23
1  
why not suggest this to them? that they release it as freeware with their name all over it. Positive publicity and public goodwill have value, after all. –  Andrew Heath Oct 28 '11 at 8:54
add comment

4 Answers

up vote 15 down vote accepted

Ethical?

Many times over yes. In the same way it's ethical for you to take the skills you learn at the current employer and use them at your next job, it's ethical to use your skills in your free time, however you want to

Legal?

Maybe. While it's not up to the company to control what you do with your free time, it's standard for the company to have NDA and non competition agreements as part of your contract. You also will likely not be allowed to use any kind of proprietary information and patents etc... developed and owned by your current company in your work, as well as, very obviously, you'd have to start from scratch when writing the code. It's neither ethical, nor legal, to steal from your current employer.

Notes

  • I am not a lawyer. Ask a lawyer for advice regarding your contract.
  • I assume you're a regular employee. A shareholder or co-owner of the company has other obligations
  • This may not be obvious, but working on the OSS alternative while working for your current employer is a bad idea. I assume you're talking of developing it after the end of your employment
  • How you do it is just as important as what you end up doing. The professional way to do this is to do it openly - to let your current employer know what you're doing.
share|improve this answer
4  
+1 For the legality part, it's quite common to have non compete clause in contract. –  HoLyVieR Aug 28 '11 at 0:04
    
I heard that in the United States, some states don't allow non-compete clauses. Sometimes depends on the industry too. –  omouse Aug 28 '11 at 3:55
8  
If you did this AFTER LEAVING and any no-compete has expired, I think it would be borderline. If you did this while still employed it would not be ethically or morally right. –  quickly_now Aug 28 '11 at 9:32
2  
Why not ask your employer for permission? Maybe a licensing model for the original software is possible that would yield your intended benefit without hurting sales? –  tdammers Aug 28 '11 at 11:54
1  
@quickly_now It's heavily in your employers' interests to convince you that is true. The truth of the matter is, as long as you are not stealing from your employer, there are no ethical or moral obligations to keep you from working on any other projects. It's actually quite the opposite; in some jurisdictions it's even entirely illegal for the employer to include clauses in their contract preventing you from competing, and in many others the clauses, while legal, are not enforceable (again, IANAL, check with a lawyer before making a local legal call) –  blueberryfields Aug 29 '11 at 0:29
show 5 more comments

In your situation, I'd take your question to the people who hired you, and see what their views on the matter are first. The big question of ethics is that of conflicts of interest, when you have two different interests or requirements pulling you in two different directions. One of them is your obligation to the client here, and if the client doesn't mind you building an open-source project on this idea, then their interests are not in conflict with yours.

share|improve this answer
    
Sound advice. Thanks. –  Ijichi Aug 28 '11 at 3:24
add comment

Ethical? Maybe, ethics are a personal decision. Legal? Possibly, depending on your contract with the company. Smart? Heck no, when future employers see you as their competitor, your resume will go in the trash can.

share|improve this answer
add comment
  1. If you take up actual code and some critical design which is already developed in your paid project - copying that and giving in Open Source - that is Un-ethical and Illegal.

  2. Even if your code is fresh - if yo are taking away any Intellectual property it is Un-ethical and illegal.

  3. If you use time or other resources of the company for what you are paid to use that towards open source project instead of contributing to your real project - that is Un-ethical (and might become illegal if you are caught).

The balance seems to be governed by natural laws of competition in the society.

Dipan.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.