Computational Thinking using Python

blur

Learn Path Description

The courses in the XSeries are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not “computation appreciation” courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.

Introduction to Computer Science and Programming Using Python covers the notion of computation, the Python programming language, some simple algorithms, testing and debugging, and informal introduction to algorithmic complexity, and some simple algorithms and data structures. Introduction to Computational Thinking and Data Science will teach you how to use computation to accomplish a variety of goals and provides you with a brief introduction to a variety of topics in computational problem solving.

Skills You Will Gain

Courses In This Learning Path

blur
icon

Total Duration

9 weeks

icon

Level

Beginner

icon

Learn Type

Certifications

Introduction to Computer Science and Programming Using Python

course via

This is the first course in a series of two courses: Introduction to Computer Science and Programming using Python and Introduction to Computational Thinking. They are intended to teach people who have never had to deal with programming or computer science to think and program to solve useful problems. While some people will use the courses as a step-stone to more advanced courses in computer science, others will find them useful. For many, it will be their first or last course in computer science. This course includes lecture videos, lectures exercises, and problem sets that use Python 3.5. You can easily switch to Python 3.5 if you have previously taken the course with Python 2.x. Or, enroll now to refresh your knowledge.

These courses could be the only courses in computer science that many students will take. We have decided to emphasize breadth over depth. Students will be able to get a quick overview of many topics to help them understand how computation can be used to achieve a goal later on in their careers. They are not "computation appreciation courses". These courses are rigorous and challenging, and students have to put in a lot of effort to learn how to bend the computer to their will.

Please note that edX Inc. recently reached an agreement to transfer the edX Platform to 2U, Inc., who will continue to operate the platform. This sale will not impact your course enrollment, fees, or your experience with this offering. The sale may close in the Fall, and the transfer to the edX platform might occur while the course is still running. After the sale, there may be changes to the Privacy Policy and Terms of Service for the edX platform. 2U has made it clear that they will protect the privacy of all learners using the platform. See the edX Help Center for more information.

blur
icon

Total Duration

9 weeks

icon

Level

Intermediate

icon

Learn Type

Certifications

Introduction to Computational Thinking and Data Science

course via

6..2x will show you how computation can be used to achieve a variety goals. It also provides a quick introduction to many topics related to computational problem solving. This course is for students who have some programming experience in Python and basic knowledge of computational complexity. The course will require you to spend considerable time creating programs that implement the concepts. You will create a program to simulate a robot vacuuming a room, or model the population dynamics for viruses replicating in a patient's body.

These topics are covered:

  • Advanced programming with Python 3
  • Knapsack problem, Graphs optimization
  • Dynamic programming
  • With the Python package, plotting
  • Random walks
  • Probability and Distributions
  • Monte Carlo simulations
  • Curve fitting
  • Statistical fallacies

blur