On 1 June, 2016, one of Monero’s core developers Riccardo Spagni gave a fascinating presentation about the anonymous cryptocurrency, Monero, explaining what the Monero software is and why anyone should care. In contrast to Bitcoin, which is completely transparent, transactions on the Monero blockchain are designed to be untraceable and private.
Apparently a lot of people were paying attention. In the seven months since that event, the market cap of Monero has grown from $11 million to $176 million, becoming one of the top 5 cryptocurrencies in the world. As of the end of December 2016, it’s 24-hour trading volume is almost $11 million.
To mark this extraordinary success, Riccardo will return to Bitcoin Wednesday for its 4th annual New Year’s reception on 4 January, 2016. This time he will give an overview of Monero, explain why transactional privacy is essential, and tell us what Monero is planning for the future.
Riccardo is a member of the Monero Core Team, the stewards of Monero and its budding ecosystem. With an academic background in informatics and logistics, Riccardo spent years in software development and the import/export industry. Due to the success of the business he started with his wife, he had enough freedom to start tinkering with Bitcoin in 2011. In 2012 he became involved in various cryptocurrency-related projects.
Riccardo and his wife live along the Garden Route on the coast of South Africa, where he spends weekends pack rafting, hanging out with their six dogs, building and flying multicopters and playing with LEGO.
Q & A with Riccardo Spagni, Core Developer of Monero
Aside from Monero rising to one of the world’s top five cryptocurrencies, what is new since you last visited us?
Monero released an official GUI (yay), and I launched PayB.ee, a payment processor.
What will be the key milestones for Q1 and Q2 of 2017?
Via a hard fork in January, Monero will add support for RingCT, which is currently live on testnet. This change gives us the ability to hide transaction amounts.
What is the best way to describe what you do for Monero? What is keeping you busy these days?
I am one of the 7 members of the Monero Core Team, who are stewards of the project and its resources. Besides that role, I am also the lead maintainer.
In my job as a member of the Core Team I do a lot of advocating for personal privacy, helping newcomers, researching new technologies and developments, and acting as a point of contact for the media, mining pools, exchanges, and merchants. My favourite part of this work is researching new technologies, and creating new schemes and systems that Monero will implement, something I do along with the Monero Research Lab.
As the lead maintainer my role is more hands-on and direct, as I am responsible for merging pull requests to all of the Monero project code bases except Kovri, which has its own lead maintainer (who goes by the handle anonimal). All pull requests get reviewed by a known contributor before merging, but I probably review and test 70% of the pull requests we receive. This role also involves running the developer’s meeting that happens every 2 weeks, as well as mentoring and assisting new contributors, and guiding contributors who are working on complex features or implementations to ensure that their new work generally follows a rough standard.
What is a typical day at the office like?
I have an office at home, as well as offices for one of my companies up in Johannesburg, so I’m either working out there one week a month, or I’m working out of my office at home. I prefer working at my home office as it’s nice having our dogs around. Because I’m responsible for major decision making at some of my companies and startups, I spend about 30% of my day on those, about 10% of my day reading posts and research material as well as engaging with the Monero community and others on IRC / Reddit / Twitter, and the remaining 60% of my day working directly on Monero-related tasks. I often work 14-16 hour days by necessity, which I’m only able to do right now thanks to a very loving and understanding wife.
What is the most difficult situation you’ve faced in the Monero project?
Probably the network attack in September, 2014, where the network was forked for 30 minutes. At that stage we were still wading our way through code that was largely unfamiliar to us, and a tiny bug in a piece of C code used to compute tree hashes (for the tree of transactions in a block) was exploited by a very sophisticated, very powerful attacker. We managed to find the source of the problem, and patch it within a couple of hours, but it was the hairiest experience of my life, knowing that the fate of the network hung on our ability to figure out and resolve the problem, all while contacting mining pools and exchanges to try get them all on to the same fork. The rapidity with which we were able to resolve the problem is a testament to the large group of contributors who have gathered around Monero.
What are your thoughts on Zcash and some of the other anonymous blockchains? What about Mimble Wimble?
Most of the attempts at transactional privacy are useless because they treat privacy as some optional extra that people will use. If privacy isn’t mandatory then people won’t use it, which will lead to very little entropy among those that do use the privacy features, but more importantly it’ll lead to people using the non-private part of the system and imagining their privacy is being preserved when, in fact, it is not.
Zcash is a special case, as it not only has that horrendous facet of optional privacy, but its entire economic value rests on an exercise performed by 6 people all running the same piece of software (that could have been trivially compromised). Furthermore, its reliance on untested and unproven cryptography is frightening. Finally, the centralised nature of its structure, where the control and development is entirely centralised and operated by a company that leverages immense strain on the system by stealing 20% of every block reward, is the antithesis of how you build out a privacy-focused, decentralised economic system.
What is your opinion on the privacy / anonymity proposals for Bitcoin?
I’m very excited about TumbleBit, and hope it will bring about a much needed privacy enhancement for Bitcoin.
What would you say the concept of “money” means for Monero?
For Monero, money should have all of the important properties of cash, some of the most important being anonymity, optional transparency, and fungibility.
What is Monero’s governance model?
We use a “broad consensus” model as our primary decision maker. Should the community be unable to come to a decision they can generally agree on, it falls to the Core Team to break the gridlock using an established model of publicly visible discussion, and voting that allows any member of the Core Team to veto the proposal. In this way, the Core Team act as “Benevolent Dictators for Life”, or at least until such time as someone forks Monero away and the community follows them.
This approach is not likely to be the governance model forever. We are very interested in the research being done on this subject, and especially the ways of allowing network participants to be more directly involved in the decision-making process. If a more viable governance model is invented then we hope to adopt it.
Contentious hard forks are dangerous, but another valuable lesson is that it’s incredibly dangerous for a centralised person or body to invalidate their system’s claims just because they think they’re doing something that is morally right. Often times, when it comes down to the wire and people are under pressure, they’re not going to make an objective decision. It’s even more clear in hindsight that the Ethereum hard fork was objectively the wrong decision.
What surprises you most about the direction of this industry?
It surprises me how much credence and VC money has been given to incredibly poorly designed projects. If someone with no formal mathematical or cryptography background came along and claimed to have invented a new encryption algorithm, they’d largely be ignored unless they published a whitepaper that had withstood the rigours of peer review by qualified and knowledgeable cryptographers. In this sector there seems to be a complete absence of due diligence and deference to those who are qualified and knowledgeable, in spite of the incredibly difficult balance of cryptography, game theory, and incentives required.
What would you say to developers considering contributing to Monero? Can you name a couple of the most interesting areas where you are looking for help?
We implement a version of 0MQ / Unprotocol’s Collective Code Construction Contract, which means that contributors are very welcome, regardless of their level of skill and experience. In fact, with very few exceptions (mostly for obvious brokenness or supersession) we merge all pull requests!
There is always a need for developers with strong C++ and C skills to work on Monero and Kovri, but there are so many other projects beyond those two where contributors are welcome. For example:
- The Monero Core GUI, for Qt developers, translators, and UX specialists.
- The Monero website, for copywriters, UX specialists, Ruby developers (since it uses Jekyll), and web developers
- The Monero forum, for PHP / Laravel developers, and web developers
- The Monero Research Lab, for mathematicians and cryptographers
What is your favorite lyric of all time?
If you had a superpower what would it be?
The ability to make my enemies quiver with the power of freestyle hip hop.
What’s one item you need to keep in your fridge at any given time?
Milk for my coffee!