Course Objectives: |
Blockchain gained prominence as the technological basis for Bitcoin, a cryptocurrency issued independent of central banks which can be used for making payments without the need for intermediaries. It has since led to platforms that allow us to create smart contracts that automate tasks, additional cryptocurrencies and crypto-assets, and applications covering anything from fund-raising for startups to ensuring trust and transparency in large engineering projects. The technology is still quite new and while innovative applications continue to be developed and tested in markets, technological fixes may be needed as and when problems are exposed. Its anonymity in the context of cryptocurrency transactions also leaves scope for fraud, which has tax agencies and regulators attempting to regulate financial applications. Even so, it constitutes a fundamental technological disruptor which has the potential to change the way business is conducted and payments are made. This course provides you with an introduction to the technological concepts underlying blockchain and cryptocurrencies, and applications of blockchain to the digital economy including common blockchain platforms and cryptocurrency markets. |
Course Content: |
Introduction to blockchain, distributed system structures, smart contract systems, concepts of digital money and digital economy, programming with Python, blockchain basics, blockchains for cryptocurrencies, blockchain platforms, other blockchain applications and cryptocurrency markets. |
Week |
Subject |
Related Preparation |
1) |
Course Overview and Introduction to Blockchain Networking |
Lecture notes and course book |
2) |
Introduction to blockchain Networking python libraries. |
Lecture notes and course book |
3) |
Python libraries used in blockchain implementation include:
1. Hashlib
2. Flask
3. Requests
4. JSON
5. PyCryptodome
6. Web3.py
7. Solidity
8. Pandas
9. NumPy |
Lecture notes and course book |
4) |
Digital Cash |
Lecture notes and course book |
5) |
Cryptography and Hashing |
Lecture notes and course book |
6) |
Blockchain Basics |
Lecture notes and course book |
7) |
Blockchains for Cryptocurrencies |
Lecture notes and course book |
8) |
General review and midterm |
Lecture notes and course book |
9) |
Blockchain Platforms |
Lecture notes and course book |
10) |
Other Blockchain Applications |
Lecture notes and course book |
11) |
Limitations of Blockchains |
Lecture notes and course book |
12) |
Cryptocurrency Markets |
Lecture notes and course book |
13) |
Introduction to NFT |
Lecture notes and course book |
14) |
Project demonstration |
Lecture notes and course book |
|
Program Outcomes |
Level of Contribution |
1) |
Sufficient knowledge in mathematics, science and software engineering discipline-specific topics; the theoretical and practical knowledge in these areas, the ability to use in complex engineering problems. |
|
2) |
The ability to identify, formulate, and solve complex engineering problems; selecting and applying appropriate analysis and modelling methods for this purpose. |
|
3) |
The ability to design a complex system, process, device or product under realistic constraints and conditions to meet specific requirements; the ability to apply modern design methods for this purpose. |
|
4) |
Ability to develop, select and use modern techniques and tools necessary for analysis and solution of complex problems in engineering applications; ability to use information technologies effectively. |
|
5) |
Ability to design experiments, conduct experiments, collect data, analyse and interpret the results of complex engineering problems or discipline-specific research topics. |
|
6) |
Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. |
|
7) |
Awareness of the need for lifelong learning; access to knowledge, ability to follow developments in science and technology, and constant self-renewal. |
|
8) |
Effective communication skills in Turkish oral and written communication; at least one foreign language knowledge; ability to write effective reports and understand written reports, to prepare design and production reports, to make effective presentations, to give clear and understandable instructions and to receive. |
|
9) |
Conformity to ethical principles, professional and ethical responsibility; Information on standards used in engineering applications. |
|
10) |
Information on practices in business, such as project management, risk management and change management; awareness about entrepreneurship, innovation; information on sustainable development. |
|
11) |
Information on the effects of engineering applications on health, environment, and safety in universal and social dimensions, and on the problems of the modern age in engineering; awareness of the legal consequences of engineering solutions. |
|
12) |
Adequate skills in the analysis, design, verification, evaluation, implementation, implementation, and maintenance of software systems |
|