Computer science

Introduction to Computer Science (Harvard University), edX

The program is good for both beginners and experienced programmers. The introductory course by David J.Malan which is traditionally available on edX gives insight into such topics as data structures, encapsulation, resource management, methods and tools of software engineering and Web-design. The course's participants will attempt practical tasks from different fields, such as biology, cryptography, finance, forensics, game development and others. Both registration and the course have no fixed deadlines.

Introduction to Data Storage and Management Technologies (Institute of Electrical and Electronics Engineers, IEEE), edX

The course gives the fundamentals of data storage technologies. The program includes information on different storage system types, network technologies, as well as concepts that have to do with business continuity management and storage security. The course is intended for four weeks (1−2 hours a week).

Machine Learning (Stanford University), Coursera

One of the most popular courses on Machine Learning introduces its students to such topics as machine learning, data mining, and statistical approaches to image recognition. They will learn parametric and non-parametric algorithms, support vector methods, core functions, work of neural networks, and so on, as well as study examples of their practical use — in robotic design (perception, control), text mining (online search, anti-spam), computer vision, audio processing, database mining, and other fields.

Process Mining: Data Science in Action (Eindhoven University of Technology), Coursera

The course is aimed at both students and specialists, and is intended for six weeks (3−5 hours a week of individual study). The program includes an overview of approaches and technologies that use event data for decision support systems and business process design. The course gives insight into key technologies of process mining and gives an opportunity to apply them in different fields.

A developer's guide to the Internet of Things (IoT) from IBM, Coursera

The course is an introduction to design and deployment of IoT solutions and is aimed at users with basic knowledge in programming, giving insight into all the steps necessary to create a basic IoT solution using the popular Raspberry Pi device and a trial version of IBM Watson IoT Platform. The tasks for the course are in Python and JavaScript.

Responsive Website Tutorial and Examples (University of London), Coursera

The course is on developing web applications for collaborative editing, working with Web audio API, and a lot more. For instance, the users will learn how to create a service that works on different devices (including mobile ones), and develop applications using the Meteor platform.

Software Processes and Agile Practices (University of Alberta), Coursera

The course explains different processes of software development, as well as the basics of agile approaches (including extreme programming and Scrum). Upon completing the course, the user will learn to discern different models of processes for managing software development, choose the appropriate models and use the fundamentals of Agile and management in software development.

Testing with Agile (University of Virginia), Coursera

The course is aimed at professionals who work in the field of software development and IT, as well as everyone who's interested in learning agile approaches to programming. The course's authors will explain how to integrate a project into ceaseless workflow, test it, define the user's motivation and make sure you're moving in the right direction. The course is intended for four weeks (2−4 hours a week).


Robotics: Perception (University of Pennsylvania), Coursera

This is the 6th and most popular course on Robotics by University of Pennsylvania. Students will learn to control a robot's movement using images and video from its cameras, come to understand how grasping objects is facilitated by the computation of 3D posing of objects, and how navigation can be accomplished by visual odometry and landmark-based localization.
The course is intended for four weeks.

Artificial Intelligence for Robotics (Stanford University), Udacity

Another renowned course available on Udacity. The course gives insight into the methods and approaches used in the field of artificial intelligence (including probabilistic inference, computer vision, machine learning and such, with a focus on robotics), and includes code examples and tasks explaining the use of these methods in creating an autonomous car. The course is intended for two months.