I had heard about IBM donating 44k lines of code to the Hyperledger project a while ago and was curious interested to see what IBM had to offer in the blockchain space.
IBM has a neat little learning path to understand more about blockchain technologies. It’s a free self paced course that takes a few hours (not really the 6 that it says) and does a pretty good job at explaining IBM, blockchain and the Hyperledger.
What was good
The course was professionally done with goals, quizzes at the end of each course, videos and notes and the best part was the hands on development environment Bluemix. It’s only a 30 day trial but no credit card was required.
The content was good where IBM introduced terminology such as “world state” to mean the state of the blockchain or the ledger and “blockchain fabric” to mean blockchain framework.
Above is a neat diagram of the various blockchain components in the IBM Hyperledger stack.
The above screenshot shows the 1 click blockchain deployment process within Bluemix where everything is set up automatically. The car leasing demo was interesting behind the scenes but the front end interface was just like any other application. ie as a user you wouldn’t know and wouldn’t need to know the actual implementation beneath.
The blockchain explorer was neat.
What I would improve
I didn’t agree the non-validating peers were peers at all. They were more like standalone nodes or proxies. They in turn connect to validating peers though.
Also, I don’t think smart contracts are like stored procedures. See 1:27 at https://www.youtube.com/embed/vDE0RT98-BU
The video presenters did a good job, however a smile and some energy would have made it even better.
The best part
The best part however was towards the end where some chaincode was deployed and a hello world example was shown. This was great because it brought everything together.
Read on if you dare:
Essentially chaincode is some code written in GoLang on your desktop, then pushed to git via CLI. Another word for “some code” is “a smart contract”.
The 1 click deploy blockchain application in Bluemix only reads code from a git repo by way of a “shim”. Then inside Bluemix, interaction with the blockchain and the “smart contract” (which, again is written in “chaincode” which is actually is the Go programming language) is done via an API. The swagger API to be exact.
I warned you.
Overall, worth a look. I picked up some useful information. Check out the course here: https://developer.ibm.com/courses/all-courses/blockchain-for-developers