Introduction to Computer Science and Programming
About this Course
Do you want to learn more about data and gain programming experience? If yes, this is the right course for you to start! “Big data”, “data science”, “data-mining” and “artificial intelligence” are all popular terms that are often encountered nowadays in the academic and in business worlds. Computer Science is a field where the usage of computers and “computations” have continuously evolved. As computational power increases, computation becomes an indispensable tool for solving complex problems and making predictions. We are now able to “compute” various things from DNA sequencing to aerodynamics simulations and weather forecasting. In this course, you will learn the essence of computer science. You will obtain an overview of cutting-edge computer science as well as learn the basics and introductory level knowledge of computer science, while experiencing, designing and writing your own simple programs. This revised course consists of 5 weekly units. A separate course covering the same content is also offered where the lectures are given in Japanese. The course begins by introducing the notion of computation and data and how things work inside a computer. Before jumping into advanced topics like encryption and cryptanalysis, we will discover important notions like "arrays", "characters" and "strings" and we will know more about functions and subroutines throughout the lectures. Along the way we will practice with exercises to have a hands-on experience and deeper understanding of the explained notions. All exercises have files that can be downloaded and used. A detailed explanation about setting up the environment to run the programs using the language Ruby is provided at the beginning of the course. By the end of this course you will be able to write your own programs for encryption and decryption of English texts. The course concludes with a general overview of the recent progress and research trends in the computer science field. This last part covers topics discussing the nature of computation as well as applications of computation in our modern society such as simulations, data mining and artificial intelligence AI.Created by: Tokyo Institute of Technology
Level: Introductory

Related Online Courses
Le Design UX c'est plus que de l’idéation : c’est avoir des idées centrées sur l'utilisateur, ancrées dans le contexte technologique et d’affaires unique à son client. Le Design UX est le moment ... more
The Internet of Things is rapidly growing. It is predicted that more than 25 billion devices will be connected by 2020. In this data science course, you will learn about the major components of the... more
The world around us becomes immersed in technology, which is ultimately driven by programming and governed by its laws. We believe that high-level knowledge of means for programming ‒ past, p... more
With today's increasing challenges of dealing with more aggressive and persistent threat actors, while also being inundated with information that is full of misinformation and false flags across... more
Build professional VR apps using Unity 3D, a powerful cross-platform 3D engine that provides a user-friendly development environment. In this course, part of the Virtual Reality Professional... more