Things are different for open source software. You’re free to charge money, but what’s to stop someone from taking the source code and releasing an alternative?

Selling applications, physical products, and online services is also how the big guys make their money. Apple and Microsoft want you to use their programs on their machines. So if you’re an employee producing code to run on a commercial operating system, your employer is likely in the business of selling software.

A few services take the opposite approach. Rather than being places to ask users for money, these sites provide a way for people to send tips to services they enjoy. Examples include Tip the Web and Gratipay.

2. Working for a Company

Many developers earn their monthly income creating Linux code. They work for companies that, for one reason or another, have determined that supporting the Linux ecosystem is good for business.

Some are “open source” companies. Making free software is a key part of what they do. Red Hat is the largest example of this. Canonical, who makes Ubuntu, is another prominent one. Both make money by establishing support contracts with companies that use their products.

3. Going Independent as a Consultant or Contractor

A developer can make decent money going independent. Rather than join a company, they take their skills and work as a consultant. Many organizations need help starting an open source project, and a consultant can help them get off the ground. Others find that keeping a project going is even harder and turn to a consultant for help.

Many companies need help building or maintaining a Linux server but don’t want to hire someone for a full-time position. An independent contractor with Linux expertise can come in and take care of the job.

This work doesn’t always provide the steady paycheck that being an employee does, but it provide more reliable income than donations. It gives someone with plenty of Linux-related skills a way to subsidize all of the programming they’ve done for free.

4. Hunting Bounties

One innovative approach to paying developers is actually rather old school. Name a job you want done and put up a bounty. Whoever does the deed takes home the reward.

Bountysource is a website where users can contribute money towards these bounties. The reward doesn’t have to come from one source. Many people can toss $5 toward a project in hopes that if enough people jump in, a developer will find the reward enticing.

Unfortunately, the prize money doesn’t always match the task. The Elementary Project has embraced Bountysource as a way to attract help, but even with additional contributions from users, most jobs will net a developer $100 or less. That’s pennies compared to the money a programmer makes in the private sector.

Why Do They Do It?

Motivations vary from one person to the next. Many developers have an ideological belief that software should be free and open source5 Reasons Why Software Should Be Free and Open Source5 Reasons Why Software Should Be Free and Open SourceFree software doesn't just mean you get to use the app or game without paying. It's about longevity and much more -- in fact, all software should be free and open source!Read More. Or, at the very least, they believe that creating such software benefits the world. Other developers feel that they wouldn’t have success trying to sell their software, so they might as well open source it. Some come from the opposite angle — they see no reason not to open source their project. Tossing code on GitHub invites others to help out and make an application better than it would otherwise be.

Some are happy to use their skills creating software they enjoy after spending hours on less interesting projects for their day job. Others are students flexing their muscles for the first time.

At the end of the day, “free” labor isn’t free. Volunteers have to make money somehow. And while much of the software in your distro’s repos come from developers who work for free, many people are still paid to contribute to the open source ecosystem.

Do you get paid to work on Linux? Do you create applications? Work on servers? Produce the tools that run the web? What’s the money like? Share your experience with us in the comments!

Bertel both earned a college degree (in the humanities) and built a career using Linux-powered laptops. Now he uses his education and life experience to question the ethical decisions behind today's technology. He advocates the use of free software and believes computing should be accessible to all regardless of economic…