85% of tokens will be distributed for free among GitHub users, who put a star in this repository — turned out users are not allowed put such descriptions in a GitHub repository.

Introduction

Genesis is an open-source blockchain platform, which I started developing back in 2011. Everything was written completely from scratch. At present, the product is almost 100% ready. Over 15 top-tier developers are working on the project. We weren’t able to launch an ICO for GenesisCommunity because of issues with regulators. So we decided to distribute 85% of tokens among software developers to ensure success in the code development part of the project. The remaining 15% will be distributed among those who sponsored the development and actively participated in the project development.

How do we ensure that tokens get to developers, not to bots?

To avoid checking each user manually, we decided to find a site where users have already been identified. After a brief search, it became obvious that GitHub represents the largest community of software developers.

But how is GitHub dealing with bots? Maybe someone launched a simple script and registered several hundred thousand accounts a couple of years ago? Fortunately, GitHub has a convenient API where all users can be viewed, from the first to the last. It currently has 37 million accounts. But the GitHub main page says there are only 28 million users. Where did the other nine million go?

Having spent half an hour manually viewing different parts of the user list, I came across a list of banned accounts (for example: https://github.com/ujopix). It means that GitHub does ban bots, and that’s cool! So by adding a rule, which states that tokens can be obtained only by accounts older than 1 year, we protected ourselves even further against bots.

How many people will receive 85% of the tokens? One hundred or one million?

Finding 100 to 1000 top-tier and well-known developers, and giving them tokens is a good idea. But they will probably not be interested in some unknown project called Genesis, since it’s not Ethereum where each token is worth around $800.

We’re operating under a simple belief: the more software developers get our tokens, the greater the chances are that quality specialists will join our development team. One million sounded too ambitious, so we reduced the target to 850k. A year ago, GitHub had about 26 million users. When you subtract the 25% banned users, you get 19.5 million. 850k is 4.4% of 19.5 million — looks like quite an achievable goal.

And now the most challenging aspect — how do we give public keys to all of them?

There were lots of complicated and confusing options, but we found a simple one. A GitHub user gives a star to the repository and places a public key in his or her gist. Once a day our bot visits the pages of new stargivers, parses gists, and searches for genesis_public_key files. A user simply needs to put a star in the repo: the parser will put them in the list and will then be checking to see if the public key has appeared in the gist.

Very simple and cool.

Next, we put the following description in the repo:

A blockchain platform with a simplified programming language. 85% of all tokens will be distributed for free among 850,000 GitHub users, who put a star in this repository. Only for those with 1+ year GitHub accounts.

We ourselves put a few stars, talked a little about the repository on Facebook and appeared in the trending Go list — only 15 stars were needed. After that we just watched people give more and more stars to us.