Building your first BlockChain

As a software engineer, I’m fascinated with blockchain since early 2010 with Bitcoin technology.

Just with the technology not the money around it.

I’m not a big fan of gambling, and this article isn’t about making money with blockchain its about building your own blockchain technology.

If you are someone who likes coding in JavaScript, and would like to play around code to understand in general how to build a BlockChain… This tutorial for you.

First of all, it would be awesome to follow Savjee tutorials on how to build a tiny Javascript blockchain (Don’t worry, if you’re not a Javascript developer you can learn it quiet fast!)

Part 1: Creating a blockchain

Implementing a basic blockchain

Simple, but you will understand the basics! 
– Building a Block
– Building the chain
– Using the BlockChain
– Trying to manipulate it

Part 2: Implementing proof-of-work

Hardening the BlockChain 

Proof of work for hardening the security on the BlockChain

Part 3: Transactions-and-mining-reward

Adaptation and adding Mining rewards

– Adapting our Blockchain
– Mining blocks
– Balance of an address

After following the 3 tutorials you will be able to understand how to build a small blockchain.  It’s important to note, blockchain relies on peer-to-peer connections as BlockChain is a peer-to-peer system. This is not covered in this tutorial. However it is in the in dept specialisations you can get from Coursera or Udemy course.

Building Blockchain languages

Personally, I believe any general purpose programming language would allow you to build a blockchain, most importantly it all depending on the needs of your application.

For example: 

  • Javascript
  • Solidity
  • GoLang
  • Python
  • Kotlin/Java/Scala (JVM Languages)
  • C/C++
  • Simplicity

If it’s a fun project pick what you like, If you’re building an enterprise application than you would need to think of what type of Engineers your company has and pick the right fit for you. 

BlockChain use-cases?

Their are many compelling use cases for blockchain technology, personally i would love to see the Loyalty points on BlockChain!

My personal top blockchain use cases would be:
– Loyalty Programmes
– Healthcare
– Digital Identity
– Food chain
– Electoral systems

Learning further

Blockchain Specialisation
Blockchain Specialisation
Build a Blockchain in JavaScript

References
– https://www.savjee.be/2017/07/Writing-tiny-blockchain-in-JavaScript/

Gabriel Ajabahian
Tech lead / Senior Software Engineer at RIPE NCC
As a Software Engineer at RIPE NCC, I’m passionate about creating dynamic applications that is used around the globe. I have extensive software engineering experience, recently I focus on Scala/Java and JavaScript. On the other hand, I have experience with C# and .net framework. I focus on integrating applications that are built against different frameworks and can run on different platforms. Scalability, efficiency and performance are key topics for any software, that’s why I keep track of the newest technologies, I never underestimate the power of the cloud, that’s why I do believe in using this power with “edge applications” to expand software’s and solutions to a new level. Being a software engineer who understand the business as well as my team, looking at things from different perspectives. Being open and honest and investing in relationship makes a big difference. Specialties: Software development, Scrum/Agile, Process and Problem management. PS: Please don’t contact me or connect with me if your recruiter, I’m not interested in any job.