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.89%
- 4 stars22.33%
- 3 stars4.44%
- 2 stars1.23%
- 1 star1.08%
TOP REVIEWS FROM SMART CONTRACTS
Great course. I hope the working excercises would have been more (But may be because I code a lot). But for beginners who have no idea of coding the course is excellent.
Overall a good experience, but if more help available on course project, it would have been better. No response from teaching/supporting staff in forum. Otherwise, it's good.
Great course for the beginners. Its gives an overview of smart contract, Solidity , Remix IDE. it definitely gives a lot of confidence to the trainee upon completion of the course.
Excellent. Very structured and step by step approach helps to learn the concepts easily.
Really like Mam's explanation approach very clear and systematic with simple English
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.