views:

111

answers:

1

As a software engineer/programmer myself, I love the possibility to download the code and learn from it. However building software is what brings food to my table. I have doubts regarding the type of license I should use for my own personal projects or when picking up one project to learn from.

There are already many questions about licenses on Stackoverflow, but I would like to make this one much more specific. If your main profession and way of living is building software:

which type of license do you find more useful for you?

And I mean, the license that can benefit you most as a professional because it gives you more freedom to reuse the experience you gain.

GPL is a great license to build communities because it forces you to give back your work. However I like BSD licenses because of their extra freedom. I know that if the code I am exploring is BSD licensed, I might be able to expand not only my skills, but also my programmer toolbox. Whenever I am working for a company, I might recall that something similar was done in another project and I will be able to copy or imitate certain part of the code.

I know that there are religious wars regarding GPL vs BSD and it is not my intention to start one. Probably many companies already take snipsets from GPL projects anyway. I just want to insist in the factor of professional enrichment. I do not intend to discriminate any license. I said I prefer BSD licenses but I also use Linux because the user base is bigger and also the market demand.

+3  A: 

For career growth I'd suggest a non-free license. And showing your employer how many items you sold is (IMHO) more impressing (to the employer) then showing that you know how to give away your source for free. If you are the head of a big open source project, then of course the opposite is true.

That said I don't like the GPL a lot, although I have released several software under its terms. It really depends on what type of software you distribute. The next big thing I release will be under the GPL (as well) with the ability to dual license the software. That way I can refrain my competitors to sell my software as theirs (not totally true, of course). But most of the software I release now is MIT license.

Patrick
Your answer goes against my idea. I do believe in free licenses because they encourage programmers to work together. If I use a non-free license no one will join my projects and I will be missing the opportunity to grow working with them. When I say "career growth" I meant a better skilled programmer, not a more wealthy one. GPL is great because it has more power to build communities. But with BSD you can copy and build a toolset of resources for your next projects
Francisco Garcia
OK, then I misunderstood career growth :-)
Patrick