Ethereum Programming Course

The Ethereum Programming Course is a comprehensive instruction on the functionality and programming of smart contracts using the power of blockchain technology.

What we will accomplish in this course, is a working knowledge of what Ethereum is, how it functions, and most importantly, what we can do with it. This instruction is delivered through a series of online video presentations and written programming tutorials.

The information contained in this course is of particular use to individuals building smart contracts to automate traditional business models, bringing startup business ideas to market, and investing in the underlying cryptocurrency of the ethereum network (ether) as a fuel for running applications.

Once enrolled, students have access to a private discussion channel where they may pose questions and share progress in a group learning environment. As a student, you will have access to course resources anywhere, anytime, and for as long as Ethereum technology remains relevant.

Writing Your First Contract

You wouldn’t sign a contract you can’t read. You won’t invest your money in a financial instrument you can’t understand.

Solidity is the language of smart contracts. Solidity is the language of Ethereum. Understanding Solidity is a major step in understanding the way Ethereum works. This lesson is not just for those who want to build their own applications and smart contracts, but also to those who wish to work with, sign, interact and/or invest in smart contracts.

Now that we’ve downloaded the Ethereum Mist Wallet in the previous section, we will use a text editor to code more advanced contracts and deploy them in Mist. You may use any text editor you prefer. In this tutorial we are using Sublime Text 3.

“Contract” is the highest type of object that exists in Ethereum. It can store variables, call functions, interact with other users/contracts and more. Everything that we’ll do with Solidity will take place within a contract.

Let’s write our first contract:

Open your text editor and type:

contract Example{
}

That’s it!

You’ve just wrote your first contract! You can compile and publish your first contract to the Ethereum blockchain right now. It will work. But of course, this contract isn’t really useful, so let’s add some variables into it.

contract Example{
string public brandName;
}

I’ve added a string to the contract. The string name is brandName and it’s a public variable – that means that anyone who looks inside that contract will be able to read this variable and interact with it. It is important to note that a variable can still be seen by anyone who has the address of that example contract, even if the variable is not set to public, but the variable will not allow any direct interaction (we’ll talk about accessing variables and interaction between contracts in future lessons).

After we’ve declared the variable, we can assign some information to it:

contract Example{
string public brandName = "diginomics";
}

Now this contract can prove that I’ve come up with this brand name before everyone else. Finally, some usability.

Constructor Functions

Even though many people will find the contract above to be sufficient for their needs, many others will consider it to be “too restrictive”. Many would like to publish their brand name (or any other type of information) without having to hard-code it into their contract. So let’s have a taste of the constructor function (functions will be covered in more depth in future lessons). The constructor is a unique type of function that has the same name as the name of the contract. The compiler knows that this function is the constructor function and it will force a successful execution of this function before the contract is allowed to be deployed. In our example, the constructor asks us to supply the name of the brand we want to publish on the blockchain.

The constructor function will take a string from the user and will assign this string into the public variable called brandName which we’ve declared at the beginning. This way, multiple users can use our smart contract without the need to hard code it themselves.

After you’ve selected the desired contract in the Mist Wallet and inserted all the needed parameters – as set in the constructor function, you’ll be able to deploy your contract.

Learn With Quality Tutorials. Course lessons are based on video presentations and written tutorials, allowing multiple perspectives on core concepts. All content is capable of being accessed responsively on tablet and mobile devices.

Test Your Knowledge With Timed Examination. The Ethereum Programming Course is accompanied by a timed examination. At the end of the course, students are required to pass a final examination in order to be accredited a certification of completion.

Earn Your Ethereum Programming Accreditation. After completion of the course, students with a passing grade will be granted their certificate of accreditation. This certification serves as evidence of your cryptocurrency industry acumen.

Travis Patron is a political economist and digital money researcher best known for his research into the internet payment system bitcoin.

Patron has written industry-leading research on the opportunities and implications which come from cryptocurrency such as his recently published book The Bitcoin Revolution: An Internet of Money which has been one of the most positively-received publications in the cryptocurrency space, garnering 5,000+ downloads to date as an educational and open-sourced research compilation. His work has been referenced by bluechip companies in the financial and IT sector such as Microsoft, IBM, and Monero for their business applications.

In all of these positions, the common denominator has been serving as someone who is able to explain in simple terms, the most cutting-edge developments in internet-enabling socio-economic collaboration.

Shlomi Zeltsinger is an expert in the technical world of blockchain networks. In the years since bitcoin has emerged, Shlomi has been closely monitoring its developments and writing coding tutorials since 2014. He has been writing Ethereum smart contracts since the system was first launched with the geth client and continues to do so today for a growing audience of students looking to gain a sound understanding of this exciting new field of smart contracts.

Shlomi’s philosophy is that bitcoin & blockchain technology should be both accessible and understood by the people who use it. This has driven him to produce many bitcoin and ethereum related tutorials, videos and simplified coding examples. Shlomi also advises a number of international companies on bitcoin and ethereum opportunities and challenges.

The Ethereum Programming Course can be completed at the student’s own pace. All materials are available online immediately after registration, and will continue to be updated and accessible as long as Ethereum technology remains relevant.

The suggested pace for students looking to absorb course materials and practice core programming concepts is 4 – 8 hours per week. Students may also wish to review previous exams and lessons if they are pursuing course accreditation.