How Steem Changes the Game for Open Source Software

in #github8 years ago (edited)

Before I get into my article, I'd first like to say a few things.

  1. I'm not a writer. I don't see myself as a writer, but I believe it's a good practice for me to work on my grammar skills.
  2. If you see something grammatically wrong, please point it out to me.
  3. I'm a little nervous putting my voice out there. By nature, I am an introvert until I become comfortable with myself and the person(s) I'm around. That whole process usually repeats when I see the person(s) next time, as well.

Now, onto the article.

It's All About The B̶e̶n̶j̶a̶m̶i̶n̶s̶ Steemjamins

Steem launched just a couple of months ago. For those of you who don't know, Steem is "A blockchain-based social media platform where anyone can earn rewards". The basics of how it works is this, content creators post new content: articles, images, videos, audio, etc. and content curators up-vote that content if they believe it's of quality. Both creators and curators get paid for their involvement. Creators are paid when their content gets up-voted by the community and curators get paid by curating good content. There are a few other ways to get paid as well, like mining for instance and there are algorithms in place to prevent gaming the system. Read all about it at https://steem.io. I suggest reading the whitepaper, if you find yourself really really interested.

A few days ago, I read an interesting article about "How Steemit Could Revolutionize The Music Industry". While I believe there are more points the author could add to his/her article, nonetheless, it was interesting. After I read the article, I immediately began to consider how many other industries could profit from Steem. The first thing I thought about, was the companies, and more so, the community of developers who create and maintain open source software (OSS).

Types Of Open Source Maintainers

Typically you have a few different types of OSS maintainers.

Just a real quick side note, breadwallet is one of my personal favorite open source projects. If you're into bitcoin, check it out. IMO, It's the best bitcoin wallet out there for iOS.

*Or, at least who appear to be small or single developer teams.

Time Is On Your Side

Yeah, NOT! One of the interesting things about software development is that rarely do developers have enough time. It's always something: pressure from upper management, sales promising invisible features, sales promising a sooner estimated delivery date, poor estimation of development time, poor time management, too many bugs to fix, too many issues to troubleshoot, etc. That's also not even mentioning that most developers do way more than write and maintain code.

Often times developers are considered "The IT Guy". Being "The IT Guy" means they change the batteries from your mouse when it's "broken", they add ink to printer when it's "broken", they add the shortcut of your web browser back onto the desktop when "the internet disappears", they remove trojans from your computer when you installed that "new dropbox" to get the "files" you never needed in the first place. I think one can see the theme here. :)

When developers maintain software in a small or single developer team, outside of their full time job, you can see where time becomes an issue. OSS foundations also have unique needs in managing the non-profit for their foundation. Eg: accounting, meetings, fundraising, etc. These items also take away time from developers, particularly when developers participate in the nitty gritty of the non-profit.

Why Open Source Has A Financial Need

Interesting Facts


Black Duck's 2016 - The Future of Open Source survey, shows that greater than 65% of companies leverage OSS. That is a 5% increase from the previous year. While some OSS was created and is predominately maintained by companies, not all OSS is fortunate to have companies funding it. Now don't get me wrong, I know lots of projects generate money in the form of donations, premium support, and yes, even financial support from companies. However, when these projects make more money, everyone who utilizes them potentially benefits too. When projects make more money, we will see more features, quicker bug fixes, and more secure software.

Don't Panic

As an example, let me take you back to April 7, 2014, the day the internet nearly bleed to death. Okay, not really, but it did bleed pretty badly and was a major wakeup call for anyone who uses OSS. On April 7, 2014 the world experienced what was dubbed, The Heartbleed Bug. Heartbleed was a bug in the OpenSSL library that allowed an attacker view communications from servers after OpenSSL had decrypted the communication. When the bug is exploited, it would allow attackers to view passwords, credit card numbers, crypto keys, etc. Sounds bad, right? It was. Fortunately, OpenSSL was able to release a patch the same day the bug was publicly reported and everyone was able to move on, though, it did take a bit of work to get everything sorted out.

After the Heartbleed bug, a few interesting facts popped up on the internet.

  • At the time, OpenSSL was believed that half a million of the internet's secure web servers, certified by trusted authorities, were believed to be vulnerable to the attack, including major websites like Google, Yahoo, Instagram & Netflix, to name a few. [1] [2]
  • OpenSSL received only ~$2000 in donations per year. [3]
  • The bug was simple to fix, once discovered. [4]
  • Heartbleed bug snuck into the code on December 31, 2011. It was there a whole TWO YEARS! [5]
  • The Electronic Frontier Foundation, Ars Technica, and Bruce Schneier all deemed the Heartbleed bug "catastrophic". [6]

Wow, now that is crazy! Perhaps with more funding, a project like this would have been able to have more developers to pay to maintain the project. Since Heartbleed, OpenSSL has considerably more funding. Unfortunately, we had to experience mass panic in the IT world before OpenSSL got the funding they needed. Take a look below at a few of the most critical bugs found in highly popular OSS within recent years.

Bug NameInfected Software / ProjectDate Publicly Reported
GnuTLS - Incorrect Cert VerificationGnuTLSMar 03, 2014
HeartbleedOpenSSLApr 07, 2014
ShellshockBashSep 24, 2014
POODLESSL Protocol 3.0*Oct 14, 2014

*SSL Protocol 3.0 is merely a protocol. It is not software in and of itself but the protocol is implemented in software for secure communications. All implementations of SSLv3 were infected.

But Wait, There's More

So, I know I've been mumbling on about critical security bugs. Let's not forget all the non-critical bugs that exist and should be fixed as well as the massive amount of feature requests out there. These types of issues deserve some love too.

I believe that the single developers, small developer teams, and foundations are the maintainers who can benefit the most from Steem. Most developers and foundations who maintain code, do so because they believe in the cause related to the problem their code solves. While, I'm not saying that developers at companies do not believe in their cause, I will say that companies have a lot to gain financially from producing OSS (this is a talk for another time). And that's not a knock to businesses either. I'm very grateful for the contributions of open source from big dog companies.

Implementing Open Source Software With Steem

Sounds great, but what does implementation look like?

Current Implementations Methods

Here are some ways you can join in and begin generating money as a developer.

  • By posting releases and/or release notes on Steem.
  • By posting merges to master/stable, depending on the project, on Steem.
  • By posting feature requests on Steem to gauge community interest.
  • By accepting donations on the Steem platform, which can then be exchanged for USD or BTC.

My personal favorite for implementing Steem, with its current features, is by posting release notes.

Pro-tip: Make sure you alert all of your followers that they can support you on Steem and that creating an account is free.

Potential Implementations In The Future

Some of these implementations would include the Steem Team integrating these features into the Steem platforms. Others could be developed on the current platform.

  • Github and Bitbucket Integration
    • Auto post new commits, new releases, pull requests, feature requests, etc.
    • Feature suggestions could be up-voted to earn money for developing said feature.
    • Rewards can be given by starring a repo.
    • Other developers/people can receive rewards too.
      • Receive rewards when you suggest a new feature that the community up-votes.
      • Receive rewards by submitting pull requests with new features and bug fixes.

Credit to @lukestokes for these next few ideas, he posted in the comments.

I hope I have you thinking. What are your thoughts? Do you have any ideas on how developers can implement Steem now, or in the future, with their open source softwares? Did I miss something or get it wrong? Speak up in the comments.

One thing I know for sure, is that developers need to hope on board soon, if they want features prioritized for their needs. The Steem train is picking up speed quickly.

Steem is here, it's free, and you can generate money right now! What are you waiting for? SIGN UP NOW!

Sort:  

Great post, Ben! Man, you knocked this one out of the park! I love it. So many great ideas here. One thought I keep having is how the blockchain database could have any "skin" we want on it. (For example: http://steempress.io/@benslayton ). I could see someone building a github clone of sorts which would have the features you mentioned built right into their specific market vertical, using the blockchain database for storage. Pretty amazing opportunities here. Can you imagine how much involvement would go up if people got financially rewarded for well documented pull requests? That could be a game changer.

Thanks for your encouragement and additions, Luke! The skin example, is a really great example. I may have to steal that example when I attempt to explain Steemit to my friends and family.

I also envisioned either a clone or integrations built on top of Steem and potentially putting code on the blockchain. I guess I can form a better opinion of possible architecture when I understand more about Steem and future plans of steem. I would like to see git's model of keeping only minimal code changes, and storing that on the blockchain. What's nice about putting code on the blockchain is that no one can steal it from us. You can't censor code on the blockchain.

Rewards for well documented pull requests is a great example as well. I will definitely add that to the article and credit you. :)

nice blog! About the possibilities on top of the Steem Blockchain a wrote an article here: https://steemit.com/steemit/@yonuts/extending-steem-and-steemit-into-the-real-world let me know what you think!

Hey, can you pay it forward and add a post entry to the #bitcoinpizza challenge? I'd love to hear your thoughts on this from someone who got such a large payout and the conversations you started having with your friends and family about it. Your recent proof is in the pudding post is close to what I'm looking for, though I think the focus of that is on the open source possibilities. Thanks!

Steem and potentially putting code on the blockchain. I guess I can form a better opinion of possible architecture when I understand more about Steem and future plans of steem.

Great !
Yesterday is history, tomorrow is a mystery, but today is a gift. Gift Blockchain......The second gift - Steemit!

Welcome to Steemit

Here is some interesting info that will help you create amazing content.

How to Create Successful Steemit Content:
Why Steemwhales are upvoting Crap instead of Your Masterpiece - And why you should be Happy About it
How I Earned $100,000 With Steemit
Foolproof Formula for a Successful Post on Steemit: 7 Ingredients for Success
The Secret Formula to a Successful "IntroduceYourself" Post...And The #1 Mistake to Avoid
I Lost Over $124,768 On Steemit In My First Month(Why I'm Kicking Myself In The Balls For Not Powering Up)
How to Properly Format your Steemit Posts
These are just some of the posts that once understood, will give the reader a SIGNIFICANT advantage on steemit.

Everyone is rooting for you!
Good Luck!,
Weenis

Similar to SP, SMD tokens cannot be purchased directly on an external exchange. SMD are primarily earned through contributing but can be purchased by converting STEEM tokens to SMD tokens.

Actually Steem Dollars can now purchased on external exchanges !
https://poloniex.com/exchange#btc_sbd
https://bittrex.com/Market/Index?MarketName=BTC-SBD

PS Abbreviation of SBD = Steem Backed Dollars
or just SD = Steem Dollars (not SMD please edit)

You nailed it!

Welcome and it's awesome you did come out of our comfort zone and created this masterpiece. There are so many more possibilities for devs to earn decent salaries with using STEEM and STEEMIT.

*To name a few :):

  • Tutorials
  • How-To's
  • AMAs
  • Crowdfunding (when something to show --> prototype)

Even good network opportunities could pay of for collaborations and much more..

so many great ideas here. One thought I keep having is how the blockchain database could have any "skin" we want on it. (For example: http://steempress.io/@benslayton ).

@lukestokes

Ding Ding Ding - so with steempress.io we would directly have kinda github-pages counterpart, dang…

... my brain seems exploding right now :)

I couldn't agree more! Kickstarter better watch out. How awesome is it that projects can be crowdfunded and earn interest on the Steem platform!

I really don't think we've even began to think about the massive reach Steem will have in the world.

As an open source developer, steemit has really been a boon to help fund all of my entrepreneurial ideas and projects. It's crazy to think that steemit is still in its early stages and it has gotten to this extent. As the developer community grows, I am going to be extremely interested in seeing what the community will put out next. I personally would like to see steemit get more involved in streaming and podcast stuff a lot more, I think there is a lot of opportunity there. Thanks for the awesome post!

What a great idea, I think this post will have lot of software devs thinking. You nailed it. I wish Steemit has a better way of discovering interesting posts like this. Power of blockchain and bitshares.

Great post man! You might have just changed by belief system about open source software. Never took OSS seriously before! Thanks a lot :)

And ONLY since you asked in the article about grammatical errors, I am reporting one:

"At the time, OpenSSL was believed that half a million of the internet's secure web servers, certified by trusted authorities, were believed to be vulnerable to the attack,..."
It should be:
"At the time, OpenSSL believed that half a million of the internet's secure web servers, certified by trusted authorities, were vulnerable to the attack,...."

Your article looks related at least to the one I wrote a while back: https://steemit.com/steem/@dana-edwards/using-steemit-to-fund-development-through-voting-up-code-snippets-and-algorithms

I think there is a lot we can do with Steem.

Awesome post. Quick grammar update as requeseted.

Second to last paragraph. Change hope to hop.

Cheers.

"Potential Implementations In The Future"

...one of the things desperately needed is a proper, cross-platform, usable, GUI wallet.

Thanks for your encouragement and additions, Luke!

Excellent share!

I'm not much of a techie and don't know too much about coding, though I think some of the most interesting applications may come when there's a gap bridged between open-source coding such as that seemingly done on github & overstock, and the monetary infrastructure on Steem's blockchain...

or worded differently - when Steem's financial infrastructure and cryptocurrency may be leveraged and integrated into open-source projects, utilized as a component for new developments.

I'm still fairly new to the whole crypto-world, so trying to wrap my head around the basics before grasping the possibilities & implications. but I can tell you see the possibilities and have some proper knowledge & experience that you've got some great contributions to make to the community and are likely to succeed with multiple collaborations.

i'll have to keep an eye out for more of your posts. keep up the good work... :-)

Thank you. I appreciate your encouragement!

I hope to produce more in the near future. :)

Coin Marketplace

STEEM 0.25
TRX 0.20
JST 0.038
BTC 95561.42
ETH 3560.31
USDT 1.00
SBD 3.76