Most individuals that are familiar with the NEO development community will have encountered the energetic Coelho brothers at least once or twice. Originating from the city of Ouro Preto in Brazil, Igor Machado Coelho and Vitor Nazário Coelho are co-founders of NeoResearch, an open-source community focused on developing cutting-edge technologies for the NEO blockchain.
Igor and Vitor are two out of a group of five well-educated brothers. Their parents moved to Ouro Preto from a simple farming village with the hope of finding a good education for their future children. Igor earned a Computing PhD and works as a Professor at the University of the State of Rio De Janeiro. Vitor’s PhD is in Electrical Engineering, though he also holds two postdocs in computing. Vitor’s impressive biography can be found here, which features all his qualifications and research interests.
Science on the Blockchain
As true science fanatics, their introduction to blockchain came in the form of SciChain.org, a project they created in December 2016 to try develop a truly transparent peer-review system for scientific studies. Despite being the cornerstone of modern society, advancements in science are subject to a relatively flawed system. Scientific studies cannot be accepted without passing a peer-review system, and the private nature of this process can allow for cheating by using friends as reviewers.
In addition, there are only a limited number of scientific journals available to publish studies in, and they generally only accept studies with new results. Some of these journals also require readers to pay for downloads, which also undermines the ability for researchers to become aware of new discoveries, particularly if they are from underdeveloped countries.
To solve this problem, Igor and Vitor decided to create transparent pools of journals and reviewers over blockchain, with the goal of making new discoveries open to the world so that scientific advancement can be accelerated. Although originally developed for Ethereum, Vitor had convinced Igor that NEO was the superior platform to build on, leading them to migrate SciChain over to NEO.
Igor notes: “Vitor knew AntShares before I did… it was only in December last year that I was fully convinced Neo was a better project. Since then, we’ve been trying to create tools that did not previously exist that will be useful for research and development.”
The project won a prize in the second City of Zion dApp competition, encouraging the brothers to expand the concept to a full science DAO (decentralized autonomous organization). The original goal was to complete SciChain by the end of 2017, but creating a full-scale DAO is a much more challenging endeavour, and they realized the first step would be to build new tools for NEO that would aid them and others with development.
Creation of NeoResearch
One of the biggest barriers for the development of SciChain was that NEO could only be compiled on Windows. Since they didn’t have access to Windows, Igor and Vitor wished to compile NEO over Linux. This led them to create their most well known project, NeoCompiler Eco, which has been visited over 70,000 times since they started counting accesses a few weeks ago.
The compiler can be accessed over a web browser or via an Android app, and is designed to make it much easier to build, test and deploy NEO smart contracts. The NeoCompiler ECO currently supports C#, Java, Python and Golang smart contracts. Contributions can be made on the GitHub here.
Igor and Vitor met Peter Lin and Da Hongfei of NEO Foundation at an event in Australia, where they spent a lot of time discussing the tools they were building for NEO. Igor explains: “Our proposal to NEO was to keep doing what we were already doing; build online compilers, study possible improvements to consensus, create new alternatives for fast execution and achieve 100k TPS.”
NEO Global Development helped fund NeoResearch in return, though there are certain legislations in Brazil that prevent them from being paid for a lot of work. As a result, the amount of funding received is a lot lower when compared to that of City of Zion or NewEconoLabs.
Igor mentioned that donations are technically allowed, but they are quite complicated to do in cryptocurrencies, and they are still learning how it should be done. He comments: “We are also dealing with Brazilian legislators which are proposing nice things for Brazil’s future in cryptoeconomics. Due to our position in the spotlight, we can’t make any sloppy moves.”
Another big goal for the brothers is to help incentivize more South Americans to use NEO. Igor recently hosted a workshop at Blockchain Summit Latam, showcasing the creation of NEO smart contracts alongside fellow NeoResearch developer Fabio Cardoso.
Achieving 100k TPS on NEO
Ever since Da Hongfei’s ‘100k TPS by 2020’ announcement at DevCon, the NEO community has been very interested in how NEO will manage such a feat. One of Erik Zhang’s secret weapons is Akka; an actor model that makes parallel cooperative processes, such as those found in NEO’s consensus mechanism, a lot more natural.
Although the Akka implementation could potentially enable a TPS improvement, Igor explained that the main benefit lies elsewhere: “I don’t believe TPS will change right now, because block times and the block limit will be kept the same. Stability however will be much greater, which is the foundation for deeper changes.”
Igor and Vitor have been helping test the refactoring, which has shown the potential for huge improvements with relatively small changes to the code, even with the current dBFT algorithm. Long term NEO will still likely look towards newer consensus technologies, but Igor mentioned that they aim to have a report out at the end of the week with some good news to share.
Vitor commented: “dBFT is the simplest kind of consensus, but even now there is no blockchain that has implemented it perfectly. This part of NEO is now combined with Akka, and it is beautiful.”
Future Development of NEO
Whilst considering their research and the progress made so far, Igor shared his thoughts on NEO 3.0: “In my opinion, NEO 3.0 is very promising and can perhaps be achieved much earlier than the proposed deadline. I guess NEO 2.x needed some radical changes that are hard to do while keeping the current chain online. Many people say we need a better consensus algorithm, and I agree with that, but I still think we can get more out of the current one. I’m defending the improvement of it right now, we can always build another one in parallel.”
Igor also shared his knowledge regarding how achievable they believe the 100k TPS goal to be, and how it can be done: “Many optimizations are possible in the current code, such as message exchange and AVM execution. These things can also be ported to any new consensus mechanisms. Other things may help too, such as abolishing UTXO and allowing smoother operations. The community is more present than ever, so if we can join together all the correct ideas on GitHub, we can get there much easier than I thought was possible before.”
NeoResearch is also calling on the community to help them create a new logo. A conversation around ideas is ongoing in the #design channel of the NEO Discord, with full details available on the GitHub contribution page. Quality contributions will be rewarded in NEO.
More information on NeoResearch can be found at the links below.