About this Course
4.6
290 ratings
45 reviews
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. You will design and program smart contracts in Solidity language, test and deploy them in the Remix development environment, and invoke them from a simple web interface that Remix provides. This course features best practices for designing solutions with smart contracts using Solidity and Remix IDE. Main concepts are delivered through videos, demos and hands-on exercises....
Stacks

Course 1 of 1 in the

Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 4 weeks of study, 3 ½ hours per week

Approx. 8 hours to complete
Comment Dots

English

Subtitles: English

Skills you will gain

CryptocurrencyBlockchainSoliditySmart ContractRemix IDE
Stacks

Course 1 of 1 in the

Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 4 weeks of study, 3 ½ hours per week

Approx. 8 hours to complete
Comment Dots

English

Subtitles: English

Syllabus - What you will learn from this course

1

Section
Clock
4 hours to complete

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....
Reading
5 videos (Total 33 min), 5 readings, 5 quizzes
Video5 videos
Smart Contracts Defined (Part 1) (Remix IDE and Greeter Demos)7m
Smart Contracts Defined (Part 2) (Simple Storage Demo)5m
Processing Smart Contracts (Compile Artifacts Demo)4m
Deploying Smart Contracts4m
Reading5 readings
(OPTIONAL) Resources: Why Smart Contracts?10m
(OPTIONAL) Resources: Smart Contracts Defined10m
(OPTIONAL) Resources: Processing Smart Contracts10m
(OPTIONAL) Resources: Deploying Smart Contracts10m
REQUIRED Quiz Resources and Directions: Smart Contract Basics - Week10m
Quiz5 practice exercises
Self-Check30m
Self-Check30m
Self-Check30m
Self-Check30m
Smart Contract Basics30m

2

Section
Clock
3 hours to complete

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....
Reading
7 videos (Total 47 min), 5 readings, 6 quizzes
Video7 videos
Basic Data Types & Statements (Bidder Data & Functions Demos)6m
Specific Data Types (Part 1) (Coin Demo)6m
Specific Data Types (Part 2) (Coin Demo cont.)2m
Data Structures (Part 1) (BallotV1 Demo)10m
Data Structures (Part 2) (StateTransV2 Demo)7m
Access Modifiers & Applications7m
Reading5 readings
(OPTIONAL) Resources: Solidity: Structure10m
(OPTIONAL) Resources: Basic Data Types & Statements10m
(OPTIONAL) Resources: Specific Data Types10m
(OPTIONAL) Resources: Data Structures30m
(OPTIONAL) Resources: Access Modifiers & Applications10m
Quiz6 practice exercises
Self-Check4m
Self-Check8m
Self-Check6m
Self-Check4m
Self-Check4m
Solidity - Week 230m

3

Section
Clock
2 hours to complete

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. ...
Reading
8 videos (Total 36 min), 4 readings, 5 quizzes
Video8 videos
Time Elements (Part 1)4m
Time Elements (Part 2) (BallotV2 Demo)6m
Time Elements (Part 3)2m
Validation & Test (Part 1) (BallotV3 Demo)7m
Validation & Test (Part 2) (BallotV4 Demo)3m
Client Applications2m
Practitioner's Perspective: Shared Rules & Trust3m
Reading4 readings
(OPTIONAL) Resources: Developing Smart Contracts5m
(OPTIONAL) Resources: Time Elements5m
(OPTIONAL) Resources: Validation & Test15m
(OPTIONAL) Resources: Client Applications15m
Quiz5 practice exercises
Self-Check6m
Self-Check6m
Self-Check4m
Self-Check4m
Putting It All Together - Week 330m

4

Section
Clock
4 hours to complete

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....
Reading
3 videos (Total 16 min), 4 readings, 2 quizzes
Video3 videos
Designing Smart Contracts7m
Remix Web IDE3m
Reading4 readings
(OPTIONAL) Resources: Best Practices10m
(MANDATORY READING) Addendum: Solidity Version10m
Assignment Description10m
Smart Contracts: Key Takeaways10m
Quiz1 practice exercise
Best Practices- Week 420m
4.6

Top Reviews

By AGSep 19th 2018

Exactly the right level, i'd expect. Not a course to learn how to be a programmer, yet enough info to have a basic understanding of smart contract and Solidity.

By ADAug 2nd 2018

This is one of the toughest course for me. Lectures and supporting materials helped a lot to complete this course. Thank Bina and all supporting staff.

Instructor

Bina Ramamurthy

Teaching Professor
Computer Science and Engineering Department

About University at Buffalo

The University at Buffalo (UB) team includes the School of Engineering and Applied Sciences, the most comprehensive public school of engineering in New York; the Center for Industrial Effectiveness (TCIE), an engineering outreach center that supports the business community; and the Center for Educational Innovation, which elevates pedagogical advancement and improved learning. UB, a research-intensive public university, is the largest institution of the State University of New York system....

About 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....

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. The specialization covers a range of essential topics, from the cryptographic underpinnings of blockchain technology to enabling decentralized applications on a private Ethereum blockchain platform. It is ideal for programmers and designers involved in developing and implementing blockchain applications, and anyone who is interested in understanding its potential....
Blockchain

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.