Sia coin September 2016 Update + Roadmap




  • TL;DR

    • v1.0.2 release-candidate will be out in the next 2 weeks or so, featuring over 230 commits of small bugfixes and stability enhancements
    • v1.1.0 is partially complete, featuring major upgrades such as instant wallet unlocking and faster, more stable uploads+downloads. Target date for first release candidate is late October.
    • Sia-Ant-Farm beta has been released. Sia-Ant-Farm is essentially a mini-testnet that makes it easier to test Sia and to test third party apps that require Sia
    • An infographic bounty has been created to encourage the creation of infographics that explain Sia
    • There will be another community roundtable coming in the next few weeks. Exact time, date, and format to be announced by next week.
    • A specific forum thread + eventually sia.tech webpage will be created that's dedicated to third party apps. Getting featured is as simple as making a post announcing yourself and what you are working on.
    • We recently closed a fundraising round where we raised $750,000. (more here)
    • We will be hiring a 'Head of Growth' to work with us to expand our user community, our developer community, and our enterprise relations

    Development:

    v1.0.2

    We're in the middle of a very heavy development cycle right now, and have not released anything in a while. There have been 230 commits to the master branch since releasing 1.0.1, including commits which:

    • improve the API docs
    • improve testing + logging (lots of changes here)
    • fixed race conditions
    • fixed many networking performance issues
    • large improvements to clean shutdown (will fix some corruption issues, especially for Windows users)
    • fixed a handful of security issues in the peer-to-peer code
    • fixed some occasional problems with upnp
    • a large number of other tweaks and improvements

    A lot of these do not dramatically change the user experience in direct ways, but overall it should mean less hiccups, less confusing situations, and a smoother overall experience. We're aiming to make a release candidate for v1.0.2 with all of these small fixes in the next two weeks. The release will be made after we are satisfied that the release-candidate is performing well.

    v1.1.0

    Among the small fixes, we've also been working on some major upgrades. These upgrades will have a more direct and dramatic impact on user-experience, however many of them are still in progress and will need to undergo more serious testing before release. The major updates are ones that I know the community is looking forward to, however they will need to wait until v1.1.0 before we can give them to the community:

    • Instant wallet unlocking
    • Do not need to restart siad after loading new wallets, addresses, or seeds
    • Wallet will find all money associated with a seed (currently does not always find all the money)
    • significant host performance+stability issues resolved via a complete rewrite of the datastore.
    • need to run siad as admin on Windows removed

    At this point it's too early to be certain, but I believe that v1.1.0 will see substantial upload speed improvements. The new testing framework (Sia-Ant-Farm) we have has made it very easy for us to replicate the slowdowns and instability we've been seeing on the Sia network. The Ant-Farm has only been ready to be applied to testing for the past week or so, so we have not actually had time yet to dive into all of the problems. That will be happening over the next week or two. Some of the fixes are likely to make it into v1.0.2, which means v1.0.2 will also see increased upload speed + stability.

    v1.1.0 is currently targeted for late November 2016. We hope to have a release-candidate out in late October.

    Sia-Ant-Farm beta

    One of the projects we've been working on is Sia-Ant-Farm, which is a new testing framework for Sia. It allows you to spin up a bunch of little Sia nodes ('ants') in a testing environment with fast block times (12 seconds) and other testing-optimized settings. Then you can assign user stories to each ant, such as 'renter' or 'host'. Some user stories are compatible, which means that one ant can run multiple of them.

    The ants run actual, separate siad instances which all have open api ports, rpc ports, and host ports, just like normal siad instances. This means that you can spin up an antfarm with say, 5 hosts, and then point a third party program like Sia-Cluster or Minebox at it for testing. The ant-farm is essentially a disposable test network that takes about 5 minutes to initialize. Blocks are every 12 seconds, meaning you can test at a much faster (and cheaper!) pace than interacting with the full network, while still experiencing semi-realistic network conditions.

    For our purposes, the conditions have been more than realistic enough to chase out an enormous number of small bugs. We had envisioned building the antfarm within about a week, however it ended up taking almost 4. Most of the delays were due to bugs in siad that made it so that the antfarm either didn't work at all or performed very inconsistently. This means that the antfarm is doing its job! We fixed a huge number of bugs in siad and even in dependencies like go-upnp in our quest to get the antfarm working. Everyone should benefit from these upgrades.

    User stories on the antfarm are jobs which perform infrequent actions, and then report errors (via logging) if anything goes wrong. For example, the renter user story creates some contracts, and then every few minutes it uploads a 500MB file to the network. Every few minutes it also downloads a random file, and deletes a random file (total number of files never gets much higher than 10). If at any point an upload fails, a download fails, or a delete operation fails, the renter will complain, telling us that <strong>siad</strong> has a bug.

    The antfarm is in the early stages of development, and only currently has 4 simple user stories (gateway, miner, renter, host). As we get these user stories working better (the renter currently complains a lot) we will add more complex and resource-heavy user stories. We will also add support for multiple versions, meaning you can spin up an antfarm that's running a handful of user stories as v1.0.0, as v1.0.1, and on the new code. You could create user stories that start life as v1.0.0, exist for a while, and then perform an upgrade to v1.1.0 (once it's ready for testing) to check that the upgrade did not introduce any corruption or other problems.

    The antfarm right now will only work on a single local machine, but it's been designed in a way that will make it easy for us to upgrade it to work across multiple machines. We envision a testing process that involves us running an antfarm with ants on 4-8 machines, including Windows machines and Mac machines, where each machine is running a handful of user stories and churning out any errors that are occurring on our mini-network. Such a setup should take us between 5 and 20 minutes to set up (once support is added), meaning it's very fast for us to try out changes and bugfixes.

    We plan on making heavy use of the antfarm before releasing v1.1.0. As stated above, the antfarm has already been highly effective in highlighting bugs in ways that make it very easy for us to fix them. I believe that the antfarm will make a huge difference in stability for our future releases.

    Community

    The Forum

    Though the forum has seen stagnation, we've continued to see growth on our Slack, some weeks gaining as many as 40 users. We're seeing a lot of repeat questions in #general, #bugs, and #help, and if possible I would like to direct those users to post on the forum. Questions that get answered on the forum can be more easily found (using Google for example) by other users, and also makes answers available to users who do not think it's worth going through the trouble of making a slack account.

    The stagnation is at least partially our fault, as there are numerous threads in both the help section and the general section where nobody has responded. We will be making an effort this week to go through the threads and answer those questions, even if the responses are a bit late. It would be great if other community members could also help out in answering questions and replying to threads.

    Infographic Bounties

    A lot of people have been asking for infographics or other documents on how Sia works. We have a lot of information in the interesting threads post, however it mostly comes in the form of a wall-of-text.

    I've decided to create a bounty for infographics that can help users more easily navigate and understand Sia. The infographic should be a .png, .jpg, or .gif that takes less than 5 minutes to read and comprehend. Each infographic should link to more information about Sia. If you aren't completely certain which information is best to link to, linking to the interesting threads is a good fallback.

    We will be awarding between 50,000 and 250,000 SC per infographic depending on quality, accuracy, and relevance. This is not a contest - all infographics which are of moderate quality are eligible for the bounty. There is currently no limit on the number of infographics which can receive a bounty, as long as people continue to create relevant, helpful, quality infographics we will continue passing out bounties.

    To get the bounty, please post your infographic to the 'Help' section on this forum, post it to /r/siacoin, and in the 'Help' forum provide an address that you would like us to use for awarding the bounty.

    Community Roundtable

    It's been a while since we've had a session dedicated to open discussion with the community. Our last one took the form of an AMA on reddit a few months ago. In the coming weeks, we will be hosting another community roundtable where all the developers will be online answering questions or otherwise encouraging discussion. We will probably do it in the form of another AMA thread.

    If you have suggestions for a format that you would like, please respond to this post with them. The most important thing about the roundtable is that it is accessible to everyone - everyone feels like they are able to ask questions and receive answers, or otherwise are able to engage with the Sia team. It's a big bonus if the content can be viewed later.

    Project Highlights

    There are a number of third-party projects in the Sia ecosystem. To name a few, there's SiaPulse, SiaCluster, gominer, among others. We would like to give all of our third party devs a chance to highlight what they are working on in our community, as well as give our community members a better view of what all exists within the Sia ecosystem.

    We've created the apps section of our forum to discuss sia-related apps. A long list of apps is kept in this thread. We will also be updating the website to feature apps in our ecosystem more promiently.

    Business

    Successful Fundraise

    We recently closed a fundraising round where we raised $750,000. (more here) The funding is all venture capital, and includes Boston investors as well as Chinese investors. The money is currently allocated primarily towards developer salaries, marketing, legal expenses, and a small chest of emergency money in case something sour happens.

    Head of Growth Hire

    We will be hiring a 'Head of Growth' to work with us to expand our user community, our developer community, and our enterprise relations. At this point we have two strong candidates, and if all goes well we will be able to announce our decision for who will fill this position in the next few weeks. Stay tuned :)