With an MA Computer Science and Management Studies from Cambridge University, another in MA in Philosophy at King’s College London, topped with a PhD in Computer Science at Technion in Israel, Gideon Greenspan has no shortage of academic cred’ and his multiple online ventures since 2003 range from Copyscape, a search engine for textual plagiarism, used by millions worldwide to Web Sudoku the web’s most popular sudoku site, with 200,000+ daily visitors. From Question2Answer, an open source platform for Q&A, running on over 15,000 sites… to Family Echo an online family tree tool with over 30 million profiles stored.
His latest venture is running Coin Sciences Ltd., a company developing a suite of technologies and services for public and private blockchains which includes MultiChain, an off-the-shelf platform for creating private multicurrency blockchains, CoinSpark, an integrated solution for asset transfer and notarized messaging over bitcoin and Coin Secrets, which displays metadata recently embedded in the bitcoin blockchain.
His latest post at Multichain, Avoiding the pointless blockchain project, How to determine if you’ve found a real blockchain use case, starts with a ringer…
Blockchains are overhyped. There, I said it.
What is refreshingly clear about the blog post is his brutal honesty – which is needed in the current hype surrounding Blockchain, and anyone thinking of a startup in the Blockchain space NEEDS to read this… because the industry is still in it’s infancy. Everyone is grasping for a buzzword that might, actually, be well-sorted with a relational database and it could be there is no need for a Blockchain anywhere near the concept. All of us in the industry are all waiting waiting to gain a clearer understanding of where blockchains genuinely add value in enterprise IT – as it’s not really all that clear yet.
Here’s how it plays out. Big company hears that blockchains are the next big thing. Big company finds some people internally who are interested in the subject. Big company gives them a budget and tells them to go do something blockchainy. Soon enough they come knocking on our door, waving dollar bills, asking us to help them think up a use case. Say what now?
As for those who do have a project in mind, what’s the problem? In many cases, the project can be implemented perfectly well using a regular relational database. You know, big iron behemoths like Oracle and SQL Server, or for the more open-minded, MySQL and Postgres. So let me start by setting things straight:
If your requirements are fulfilled by today’s relational databases, you’d be insane to use a blockchain.
Why? Because products like Oracle and MySQL have decades of development behind them. They’ve been deployed on millions of servers running trillions of queries. They contain some of the most thoroughly tested, debugged and optimized code on the planet, processing thousands of transactions per second without breaking a sweat.
And what about blockchains? Well, our product was one of the first to market, and has been available for exactly 5 months, with a few thousand downloads. Actually it’s extremely stable, because we built it off Bitcoin Core, the software which powers bitcoin. But even so, this entire product category is still in its diapers.
So am I saying that blockchains are useless? Absolutely not. But before you embark on that shiny blockchain project, you need to have a very clear idea of why you are using a blockchain. There are a bunch of conditions that need to be fulfilled. And if they’re not, you should go back to the drawing board. Maybe you can define the project better. Or maybe you can save everyone a load of time and money, because you don’t need a blockchain at all.
The blog post goes on to brilliantly outline the conditions to determine if one really needs Blockchain technology to fulfill their project. There are eight topics and he elucidates on each one thoroughly.
- The database
- Multiple writers
- Absence of trust
- Transaction interaction
- Set the rules
- Pick your validators
- Back your assets
if your project does not fulfill every single one of these conditions, you should not be using a blockchain. In the absence of any of the first five, you should consider one of: (a) regular file storage, (b) a centralized database, (c) master–slave database replication, or (d) multiple databases to which users can subscribe.
And if you do fulfill the first five, there’s still work to do. You need to be able to express the rules of your application in terms of the transactions which a database allows. You need to be confident about who you can trust as validators and how you’ll define distributed consensus. And finally, if you’re looking at creating a shared ledger, you need to know who will be backing the assets which that ledger represents.
Got all the answers? Congratulations, you have a real blockchain use case. And we’d love to hear from you.
Here’s a recent interview with Greenspan called Gideon Greenspan: The Blockchain Is A New Database Paradigm from the podcast team at Epicenter Bitcoin, hosted by Brian Fabian Crain and Sébastien Couture, two Bitcoin enthusiasts located in Berlin, Germany and Lille, France.
Topics covered included:
- How Gideon got involved in the blockchain space
- Their colored coins implementation MultiSpark and why it failed to get traction
- Why he saw a market for an open-source private blockchain platform and started MultiChain
- What mining diversity is and how it is used for consensus in MultiChain
- How permissions work in MultiChain
- The issues of privacy in blockchains and why you can’t have auditability and privacy
- How private blockchains differ from regular distributed databases
- The five criteria to decide if a project needs a blockchain
- The problem he sees with smart contract blockchains