Imagine you're a developer and you've just developed an awesome new JavaScript library and you decide to open-source it. Soon, a lot of people start seeing value on it and even start using it in their websites, apps, platforms or wherever they want. Look how this is awesome: you can share your work and help people build better software through reusability at the same time that you help them to avoid "reinventing the wheel".
This anarchic movement called open-source is revolutionizing all the technology industry. From linux to firefox, every day thousands of libraries, projects and platforms are created and backed by a huge community of developers, companies and all kinds of stakeholders.
This creates new opportunities for developers, who can live to code what they most like, without depend on salaries. But how can they make money from it?
To understand that, I'm going to explain, in a very simple way, the steps to publish an open-source library, using the steemjs-lib created by svk31 as an example.
Let's say you're JavaScript developer and you put all your efforts in developing a library to interact with Steem using JavaScript. Boom! Your new baby is born. Now, you want to spread to the world that you've created the most amazing thing and you want that everyone starts using it. So your next step will be publish it online. Without any doubts, the best place to publish it nowadays is on GitHub] (take a look at these stats from 2014 and imagine that they've been growing since then).
In a nutshell, you will upload your code to their servers. Then, it will become public available in a page linked to your profile. Like this:
And people will be able to clone it in their computers to use it.
git clone https://github.com/svk31/steemjs-lib.git
Simple, no? But very powerful!
Once it's public available, you need to make money. Now it's time to be creative: you can sell stickers or t-shirts, write a blog, do some standup comedy, whatever...
Jokes aside, there's a few common ways to earn cash with your project:
There are many successful cases, but at the same time, we can see a lot of problems in theses "business models":
I met Steem and Steemit yesterday and I thought "Holy shit, this can be used everywhere". So I imagined it:
put this awesome reward system in the open-source community and Boom! again. We can have more motivated developers producing awesome code, being curated by an awesome community. In other words: bring GitHub + Steemit together and let's blow this world up.
The cool part is that GitHub already has a "curation" system, which is the star button. You can star projects that you like and the most starred ones will be trending.
But I don't believe that a move like adding some reward system would be taken by the GitHub team. At least in the next few years. So, maybe the community could post their projects here and get rewarded for it, like @svk did with steemjs-lib (https://steemit.com/steem/@svk/ann-steemjs-steemjs-lib). Would this be cool? What do you think?