Bitcoin Cash has in the last 6 months, experienced unprecedented growth, merchant adoption, rise in mainstream media coverage, and development that has literally not been seen in any cryptocurrency across the board. The momentum is undeniably in full swing, and the restoration of Bitcoin is at hand.
One very important piece of the puzzle that doesn’t get enough attention is the resurrection of bitcoinj. Bitcoinj is a Java library used for working with the Bitcoin protocol. It was originally conceived by Mike Hearn, one of the original Bitcoin developers with an astute ability to code and understand the economic incentive system of Bitcoin. It was also the very first Bitcoin implementation that specifically targeted SPV (Simple Payment Verification) light wallet functionality – where only a small part of the blockchain is downloaded – making it suitable for use in small devices such as tablets and smartphones.
Its history is well documented, and the project is well established in the roots of Bitcoin development. In fact, a large number of Android wallets on the market today use the very software that is backed by the bitcoinj library.
Thanks to Steve Shadders, who was actually involved with bitcoinj and writing pool server software in the early days of Bitcoin development, the bitcoinj project is revived in a fork now known as bitcoinj.cash. Although other teams have also created their own forks of bitcoinj, the bitcoinj.cash project, looks at unifying the forks across the board, and turning this into the community driven project that it once thrived on being.
In a reddit post last week, Steven Shadders made mention Bitcoinj.cash community is alive and kicking with some exciting projects already using it:
Steve states “First off HashEngineering’s Android wallet is in the process of switching over to bitcoinj.cash, you can check it out on the Google Play store here. We are also working to revive the Lighthouse crowdfunding application which has been dormant for a few years but thanks to low fees on BCH is now viable again”.
Steve’s efforts with bitcoinj.cash are now being sponsored by nChain, a company which hasn’t been shy in sponsoring and promoting projects that fit the Bitcoin Cash trajectory to global adoption.
I caught Steve (who happens to be a fellow aussie) for an interview regarding the project, and he wasn’t short on letting me know that he had big plans to take this to the next level, and do what it takes to further enable Bitcoin Cash. Here’s what he had to say:
“Originally, bitcoinj was supposed to be specific to SPV functionality, but it later started to evolve into a bitcoin library… It’s in JAVA and businesses love JAVA, so it’s important to the ecosystem… I like to call what we’re in right now the age of the professionalization of Bitcoin”
Can you explain bitcoinj.cash in a nutshell ?
“It’s got all the basic functionality of a Bitcoin node… It contains all of the components needed to build a wallet. Quite literally you just need to wire them together… there’s a demonstration project in the library. I’m pretty sure that Mike never imagined that it would be used for components in a pool server.”
Did you know Mike Hearn personally or..?
“I never met him but I interacted with him a fair bit in the early days because I needed things in bitcoinj which weren’t in there for the pool software…”
Do you still keep in contact with Mike Hearn at all?
“Very occasionally, I did let him know that this was coming up, and that I was working on Lighthouse”
So how’s the governance of the project, are you leading it?
“There were already 2 or 3 forks to get bitcoinj.cash working. They didn’t appear to be aware of each other… so I reached out to a few of the developers… I already grabbed the bitcoinj.cash domain… so I reached out to the developers, and they all agreed it would be better for us to work together… I actually haven’t done much of the coding so far it’s been more so HashEngineering and Daniel who’ve done most of the dev-work but that will be changing”.
And what’s the plan going forward with it all?
“It’s 7 year old code, so a rewrite and a refresh of the code is definitely up….
One thing we want to do actually is translate the whole library to Kotlin, which is a JVM (java virtual machine) language which is interoperable with JAVA. It’s relatively new but it’s well supported language. It’s what Lighthouse was written in… It comes with one significant advantage, and that’s that it can be compiled to native code which means it can run on any platform, so it can run on an iOS and anything else.”
And you’re looking for people that can help contribute?
“Yes definitely. Anyone who’s interested and thinks they can contribute should get in touch.”
“One of the main things we need out there is a super user-friendly wallet, and I think that bitcoinj.cash can facilitate that. Someone with good UI and UX could take the library and turn it into something really slick.”
So it sounds like bitcoinj.cash is going to have the same (if not more) impact on Bitcoin Cash as it did early on, in the Bitcoin ecosystem. Not only will the library be expanded, but it will be refreshed, this will further enable more diverse applications not limited to just SPV wallets, but potentially nodes, pools, and whatever else comes next, making it as efficient and as possible in its re-write.
The Bitcoin Cash eco-system continues to impress and grow day after day, and we have lots to look forward to.
- Developers interested in joining the project can make contact via the mailing list on google groups at https://groups.google.com/forum/#!forum/bitcoinj-cash
- The github repository can be found at https://github.com/bitcoinj-cash/bitcoinj