This course will teach you how to get productive with blockchain development quickly in a practical way. The focus is on Ethereum development and the concepts presented is equally relevant to other implementations.
Hello, and welcome to Pluralsight! My name is Jan-Erik Sandberg, and I want to give you a quick overview of my course, Blockchain Fundamentals. It’s designed to help you get productive with blockchain development quickly in a practical way, and covers things like exploring the Ethereum blockchain, smart contract development, DAPP development, and how to create private blockchains. You'll also set up the development environment and all pre-requirements from a clean Microsoft Windows image, making the course easy to follow. After learning the basics, you'll create a fully functional sample application. Your sample application is a distributed application that ensures a secure and trustworthy product lifecycle trail for batches of food, using blockchain technology. With the sample application, you'll also learn how to share secrets between collaborating parties in a blockchain. Along the way, you’ll be using [list major tools being used]. When you’re done, you’ll be ready to create your own blockchain contracts and distributed applications with a functional development environment that makes you productive for years to come.
I look forward to working with you on Blockchain Fundamentals, here at Pluralsight.
Jan-Erik Sandberg is an international author and a requested speaker. He has coached agile teams since 2001 and is a veteran coder. He is currently working at Q-Free. Q-Free is a leading IOT company supporting Smart City development in more than 40 countries.
Course Overview Hi everyone. My name is Jan-Erik Sandberg and welcome to my course, Blockchain Fundamentals. I'm a COO at Visma Retail Software and the founder of Blockchain Rebels. Blockchain development is considered to be the next big thing after the invention of the internet. With blockchain you are able to make and distribute applications in a way that has never been possible before. Trust and financial transactions can be done between complete strangers with full transparency and reliability. In this course we are going to focus on the fundamentals of Blockchain development and a popular implementation of the technology called Ethereum. Some of the major topics we will cover include understanding blockchain, getting started with Ethereum, building and testing smart contracts, and distributed application development. We will even create a full end-to-end application that will demo all of the most important aspects of blockchain development. By the end of this course you will know everything you need to know to be productive with blockchain development including how to set up and configure your development environment from scratch. I hope you'll join me on this journey to learn one of the most interesting technologies out there with Blockchain Fundamentals here at Pluralsight.
Blockchain Concepts Blockchain Concepts. In this module we are going to look at the concepts of blockchain. First of all, what is blockchain? Well, at its simplest core it's really no more than a distributed database. Think of it as a large worldwide computer where everyone can securely access data and execute transactional code. All transactions are stored in blocks of data. These blocks are made in a way that makes them very hard to manipulate or fake once they are stored to the blockchain. Due to the nature of blockchain, you can say that you it gives you a trustworthy way to store data in scenarios where there are no trust. This could be monetary transactions between anonymous strangers on the internet or the ability to securely store your medical information in a way that can only be accessed by those you allow. It is also worth mentioning that blockchain is generally not a place to store large amounts of data for each transaction. You would, for example, generally not store images on blockchain, but you might store information to validate if an image is being tampered with or not. Most data stored on the blockchain is focused on transactions and states of objects, rather than the actual objects themselves.
Setting up the Development Environment Setup of Development Environment. The purpose of this module is to show you how to install and configure the development environment from scratch. With blockchain development, it's hard to find the setup that really works, so I want to make sure that you don't have to research this yourself in order to get started. During this module, we will install Chrome. This will be our default browser. Visual Studio Code is a free and easy-to-use version of Visual Studio that is excellent for blockchain development. We will install two different package managers that will make it easier for us to get the components and tools we need. The first being Node. js package manager, or npm for short. The second is Chocolatey. Git is the source repository system that we will use together with npm. Some of the tools we will be using will require us to build them, so we will need the Windows Build Tools as well. To test our development, we will use a local in-memory test server called Test RPC. Lastly, we will install Truffle. Truffle is a framework tool that we will spend quite a bit of time on during this course, and I'm sure you will really like it. I'm starting with a clean Windows 10 image that I've created on Azure. You can do this as well if you like, or you can follow the installation on any supported OS. So, let me switch over to the fresh machine and we will get going with install and configuration.