Weekly Nano Update: 7/23/2018

Optimizations, Mobile Developers and Chinese Marketing

Hey Everyone,

It’s Monday, so that means another developer update! From feedback we gathered, I’ll be putting a short ELI5 after the more technical sections. Let’s get started!

Features and Optimizations Taking Shape

After Sunday’s network spam, several members of the community have reached out with concern over the ability of the Nano network to scale. The focus of the developers has been re-optimizing the network and reducing vote traffic, in order to decrease node bandwidth and I/O usage, resulting in higher network throughput by removing redundancies that are no longer required for modern clients. Along with Lazy Bootstrapping, covered in last weeks update, which will decrease bandwidth since nodes will be passive for voting most of the time and more intelligent about bootstrapping, there are several other upgrades being made that will be detailed here.

One of these changes has to do with vote re-sending. Since v13, we haven’t needed the redundancy of nodes voting 4 times on each block, which in turn are rebroadcast, since nodes will automatically seek them out if missing. Now we are able to remove the vote re-sending functionality, which will lead to lower votes, fewer relays and will decrease network traffic by 75%.

Next, the node fanout, how many nodes each node relays votes to, is currently quite conservative. Based on modeling this number can be significantly reduced while still maintaining optimal connectivity. This means the amount incoming messages are replicated will decrease, reducing bandwidth usage.

Finally, right now when representatives vote, they include the full block in each vote, which is a total of 256 bytes + 64 bytes for the representative’s signature. This is going to change to only include the block hash, which will result in votes using 32 bytes + 64 bytes for the signature. Additionally, in the case of high network usage, these votes can be bundled in groups of 12, reducing bandwidth. In other words the current overhead of each signature is 64 bytes, with 12 the overhead per signature is 5.3 bytes. By intelligently grouping multiple transactions together we can send a busload of signed/approved transactions and reduce traffic on the highway.

ELI5: By reducing the number of votes, the amount of times they are repeated, and the vote message size, we can dramatically reduce bandwidth on the Nano network.

Job Opening: iOS and Android Developers

As mentioned previously, the Core team is looking to add talented individuals to our team. Currently, we are looking to hire an iOS developer and an Android developer to work on various applications related to Nano. Someone with knowledge of both platforms is preferred.

iOS Job Requirements

- 3+ years experience of Swift or Objective-C - Computer Science degree or equivalent work experience - Previous startup experience - Past cryptographic/blockchain work ideal but not required - Familiarity with functional programming and reactive programming - Ability to lead and work with the community to develop wallets openly

Android Job Requirements

- 3+ years experience of Java - Computer Science degree or equivalent work experience - Previous startup experience - Past cryptographic/blockchain work ideal but not required - Ability to lead and work with the community to develop wallets openly

If you feel you are qualified and are interested in the position, please email your CV to troy@nano.org.

Chinese Marketing Efforts Update

Max Chow, who is heading Nano’s Chinese outreach, will be launching the official WeChat and Weibo accounts this week. He will be working alongside WINpr, a Chinese marketing and public relations firm, to strategically push content out on WeChat and Weibo in order to increase Nano’s foothold in the region.

The Asian markets remain largely untapped for Nano. Introducing the population to Nano and increasing awareness through marketing is one of our top priorities. I will be keeping you all up to date with Max’s progress.