Blockchain for Beginners

Can some one help me to learn Blockchain Technology. Is there any plan for a class?

I am more interested in implementing Blockchain in fields like supply chain management, Health Information etc.
Are there any good tutorials/books to understand the whole ecosystem for a beginner?

1 Like

Yes we do have a class on this
https://codehs.com/editor/hoc/video/1088580/6647/4755?

We’ll be hosting this next month after the holidays and I would invite one to take a look at the following projects:



With those combined with AWS or a RPI cluster lab then one can stand up their own test net to build distributed progressive web apps (dApps)

It may sound like a lot but we are working on publishing a whole series on this. But do come out to the crypto sig meetups and lock in a time for a one on one training session and get some answers to questions you may have.

Another resource would be Mastering Bitcoin. https://www.amazon.com/Mastering-Bitcoin-Programming-Open-Blockchain/dp/1491954388

It would be useful to get familiar with the original open blockchain. The book is very straight forward and easy to follow along.

After that maybe move to Mastering Ethereum.


This one cover most smart contract based chains like Ethereum, RSK, EOS, etc…

Thanks for putting some resources for me. Appreciate much.

I am going to read the bitcoin whitepaper to start with. I definitely be looking for that class.

They seems to be a great books. I will order it the first moment I get when my kindle e-reader arrives.

Thanks you very much.

That’s a good one but we can’t forget the guy who originally wrote the book on dapps and etherium:

I suggest focusing on learning Bitcoin and it’s directly related tech like lightning network. Outside of things that could benefit from Proof Of Publish (e.g. opentimestamps) blockchain tech just isn’t useful outside of Bitcoin.

1 Like

I guess, now i understand blockchain a bit. Also its components. But all the materials that I have access to talk about public p2p network where public consensus is built to submit a block.

I am more interested in blockchain implementation in private network. Like enterprise level… Do you know of any good beginner level material that can help me understand it and kind of enable me to implement is small piece of use case. Also anything related to coding the blockchain in Python?

There are likely no real world use cases for private blockchains that make any sense. For a private system a database will be much more efficient and effective.

2 Likes

I guess, now i understand blockchain a bit. Also its components. But all the materials that I have access to talk about public p2p network where public consensus is built to submit a block.

I am more interested in blockchain implementation in private network. Like enterprise level… Do you know of any good beginner level material that can help me understand it and kind of enable me to implement is small piece of use case. Also anything related to coding the blockchain in Python?

@srini private networks based on blockchains are far from scalable and completely counter to what blockchain and cryptocurrencies are about. This is because cryptocurrencies/blcokchains are large distributed public general ledgers.

Now If one is needing a consensus based general ledger then use the raft protocol with a time serial database like influxdb or for a nosql document store database like rethinkdb both of which built on top of raft and work great with python or any lanugage/stack for that matter.

Otherwise for running a test net for general lab use or to help develop smart contracts with intention to deploy to a larger public network would be the only reason to run a private network.

https://www.multichain.com/blog/2016/05/four-genuine-blockchain-use-cases/

The big take away here is that something built to be a global decentralized system does not translate to be a smaller centralized system and to use the right tool for the right job. For example look at the fudge that is email, ldap, and dns. Email being a distributed messaging system, ldap being a distributed database, and dns being a distributed ledger. All of these intertwine but don’t have good applications on the small size but on the medium-large to enterprise-global wide they fit very well.

With all that said there are a few resources one could poke around with outside of the ones already listed through out this thread.

I have asked around about this and some managers say that they are are using blockchain for more of transparency and tamper proof features of it. For example a food chain wants to know where is the leakage in the food supply chain. Now can we achieve this with the traditional way, yes we can, but which can be more tamper proof?

Don’t get me wrong. Having the transactions within a blockchain makes sense but if we’re touting transparency and tamper proofing then that means one cannot centralize that blockchain into private networks.

The moment anything is “private” is the moment it becomes susceptible to internal politics, manipulation, and data loss.

Distributing those key hashes across different owners which have no affiliation in the public is the only way to ensure consensus and integrity.

While I am still researching about it, I got a question.

How is data about something traceable? For example, I use blockchain for accounting sale of my truck. This truck can be sold multiple times over a period of time. Assuming all transactions have been recorded in blockchain, how can I see how many hands it has changed or whats the current price it was sold, something like that.

Similar to my question above, how would one “query” blockchain? - https://www.quora.com/How-can-a-restaurant-use-blockchain-technology

How is data about something traceable…

So using your example, a blockchain would exist as the title for the truck, the ledger a signature of each owner and their authorization for transfer of the title to a new owner. Say that Alice bought a new truck she got issued a new coin, this coin validates that her coin wallet now possess the unique hash attributed to her truck. Now a few months later Joe want’s to sell her truck to Alice. Alice paid Joe 0.1 makercoin for the truck. The network would validate the transaction using Proof of Work(PoW) or equivalent methods (Proof of Stake/Authority). Following that Alice sells the truck to Bob for 0.0150 makercoin. This is all recorded in a blockchain.

The resulting data would exist as the transactional hash (7957a…6f18, …) within the merkle tree ledger which is distributed by the blockchain network. The only data that would exist is the transaction, addresses involved, coin/transaction fees involved. Anything else should live in its own database.

how would one “query” blockchain?

Coins like Etherium while do simulate some functionality which seems like the ability to query they really under the hood are just establishing a web socket to a central system for pubsub messaging about select addresses.

So at a fundamental level one does not because blockchain is not a relational database its a merkle tree of signed messages with a p2p network to drive a raft consensus engine. At a theoretical level its similar to a document based nosql without a query engine. Thus if one has the transaction or address hash they can then walk that merkle tree but not query for such.