Welcome to the MOOC on Bitcoin and Cryptocurrency Technologies where we cut through the hype and get to the core of what makes Bitcoin unique.
- Cryptographic Hash Function
The course is based on a variety of material that we have prepared over many years:
References:
By the time you finish this course, you’ll be able to establish a development environment to code and execute Ruby and Rails code, create Ruby programs utilizing proper flow of control structures, implement a basic Rails application that consumes external JSON API, and build a functional web application and deploy it to the “cloud” using a Heroku PaaS (Platform as a Service).
In this module, we will install software required to develop Ruby on Rails applications. We will finish the module by familiarizing ourselves with a version control system called “Git”.
In this module, we will begin exploring the database-interaction portion of Rails. We will start off with migrations that enable you to create and modify the schema of the database. We will then move on to discussing the Active Record gem Rails uses, which enables you to create, retrieve, update, and delete the data from the database. Before looking at Active Record, we will talk about some advanced Ruby features of meta-programming that will help facilitate our Active Record journey.
The course is the second part of a two-part course that is based on a variety of material that we have prepared over many years:
References:
In this module, we’re going to explore the history and the rationale behind NoSQL databases, their relationship to RDBMS, and dive into the basics of MongoDB. We will install MongoDB, create a database, collections and perform CRUD operations. We will end this module by integrating MongoDB with Ruby Shell and try out some simple examples.
A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently. In this course, we consider the common data structures that are used in various computational problems. You will learn how these data structures are implemented in different programming languages and will practice implementing them in our programming assignments. This will help you to understand what is going on inside a particular built-in implementation of a data structure and what to expect from it. You will also learn typical use cases for these data structures.
A few examples of questions that we are going to cover in this class are the following:
What is a good strategy of resizing a dynamic array?
How priority queues are implemented in C++, Java, and Python?
How to implement a hash table so that the amortized running time of
Learn about artificial neural networks and how they're being used for machine learning, as applied to speech and object recognition, image segmentation, modeling language and human motion, etc. We'll emphasize both the basic algorithms and the practical tricks needed to get them to work well.
This course contains the same content presented on Coursera beginning in 2013. It is not a continuation or update of the original course. It has been adapted for the new platform.
Geoffrey Hinton, Professor, Department of Computer Science, University of Toronto
The Time Value of Money
Compound Interest
Discounting and Projecting Cash Flows Making Rational Economic Decisions Mortgage Structures
Interest and Equity
The Cost of Capital