This second course of the Blockchain specialization will help you design, code, deploy and execute a smart contract – the computational element of the blockchain technology. Smart contracts allow for implementing user-defined operations of arbitrary complexity that are not possible through plain cryptocurrency protocols. They allow users to implement conditions, rules and policies of the domain applications. Smart contracts are a powerful feature that, when properly designed and coded, can result in autonomous, efficient and transparent systems.
This course is part of the Blockchain Specialization
Offered By

About this Course
Knowledge of at least one modern, high-level programming language is required, as well as completion of the course titled, "Blockchain Basics".
What you will learn
This second course of the Blockchain specialization will help you design, code, deploy and execute a smart contract.
Skills you will gain
- Cryptocurrency
- Blockchain
- Solidity
- Smart Contract
- Remix IDE
Knowledge of at least one modern, high-level programming language is required, as well as completion of the course titled, "Blockchain Basics".
Offered by

University at Buffalo
The University at Buffalo (UB) is a premier, research-intensive public university and the largest, most comprehensive institution of the State University of New York (SUNY) system. UB offers more than 100 undergraduate degrees and nearly 300 graduate and professional programs.

The State University of New York
The State University of New York, with 64 unique institutions, is the largest comprehensive system of higher education in the United States. Educating nearly 468,000 students in more than 7,500 degree and certificate programs both on campus and online, SUNY has nearly 3 million alumni around the globe.
Syllabus - What you will learn from this course
Smart Contract Basics
The purpose of this module is to introduce the reasons for a smart contract and its critical role in transforming blockchain technology from enabling decentralized systems. We will explore the structure and basic concepts of a smart contract through examples, and illustrate Remix (remix.ethereum.org) web IDE for deploying and interacting with a smart contract.
Solidity
Our goal is to master the basics of Solidity, a high-level language that is a combination of Javascript, Java and C++. It is specially designed to write smart contracts and to target the Ethereum Virtual Machine. Learners will be able to follow demonstrations and practice using Solidity.
Putting it all Together
This module focuses on the development of the Ballot smart contract incrementally to illustrate various features including time dependencies, validation outside the function code using access modifiers, asserts and require declarations, and event logging.
Best Practices
This module will focus on best practices including evaluating whether a blockchain-based solution is suitable for your problem, designing Solidity smart contracts, and those relating to Remix IDE.
Reviews
- 5 stars70.81%
- 4 stars22.40%
- 3 stars4.47%
- 2 stars1.20%
- 1 star1.10%
TOP REVIEWS FROM SMART CONTRACTS
Everything great, however the last assignment could have some more guidance, or stepped approach. I had to do a lot of guessing instead of being sure of what to do.
some resources must be reordered with the vedios for the student to keep on trying the code in the vedio thanks alot for the course content its simple and progressive
Good course, well explained for beginners. Along with the course, pay attention to reading section especially referred youtube course of solidity for more examples.
This course was very good. I have already had the experience of learning from Professor Bina. She teach very patiently and accurately. This course was very useful for me.
About the Blockchain Specialization
This specialization introduces blockchain, a revolutionary technology that enables peer-to-peer transfer of digital assets without any intermediaries, and is predicted to be just as impactful as the Internet. More specifically, it prepares learners to program on the Ethereum blockchain. The four courses provide learners with (i) an understanding and working knowledge of foundational blockchain concepts, (ii) a skill set for designing and implementing smart contracts, (iii) methods for developing decentralized applications on the blockchain, and (iv) information about the ongoing specific industry-wide blockchain frameworks.

Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
Who is this class for?
Are there any prerequisites?
Are there any hardware requirements?
More questions? Visit the Learner Help Center.