Computational Thinking for Problem Solving (Coursera)

Computational Thinking for Problem Solving (Coursera)

Computational thinking is the process of approaching a problem in a systematic manner and creating and expressing a solution such that it can be carried out by a computer. But you don't need to be a computer scientist to think like a computer scientist! In fact, we encourage students from any field of study to take this course. Many quantitative and data-centric problems can be solved using computational thinking and an understanding of computational thinking will give you a foundation for solving problems that have real-world, social impact.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

In this course, you will learn about the pillars of computational thinking, how computer scientists develop and analyze algorithms, and how solutions can be realized on a computer using the Python programming language. By the end of the course, you will be able to develop an algorithm and express it to the computer by writing a simple Python program.
This course will introduce you to people from diverse professions who use computational thinking to solve problems. You will engage with a unique community of analytical thinkers and be encouraged to consider how you can make a positive social impact through computational thinking.

Syllabus

WEEK 1
Pillars of Computational Thinking
Computational thinking is an approach to solving problems using concepts and ideas from computer science, and expressing solutions to those problems so that they can be run on a computer. As computing becomes more and more prevalent in all aspects of modern society -- not just in software development and engineering, but in business, the humanities, and even everyday life -- understanding how to use computational thinking to solve real-world problems is a key skill in the 21st century.
Computational thinking is built on four pillars: decomposition, pattern recognition, data representation and abstraction, and algorithms. This module introduces you to the four pillars of computational thinking and shows how they can be applied as part of the problem solving process.

WEEK 2
Expressing and Analyzing Algorithms
When we use computational thinking to solve a problem, what we’re really doing is developing an algorithm: a step-by-step series of instructions. Whether it’s a small task like scheduling meetings, or a large task like mapping the planet, the ability to develop and describe algorithms is crucial to the problem-solving process based on computational thinking. This module will introduce you to some common algorithms, as well as some general approaches to developing algorithms yourself. These approaches will be useful when you're looking not just for any answer to a problem, but the best answer. After completing this module, you will be able to evaluate an algorithm and analyze how its performance is affected by the size of the input so that you can choose the best algorithm for the problem you’re trying to solve.

WEEK 3
Fundamental Operations of a Modern Computer
Computational thinking is a problem-solving process in which the last step is expressing the solution so that it can be executed on a computer. However, before we are able to write a program to implement an algorithm, we must understand what the computer is capable of doing -- in particular, how it executes instructions and how it uses data. This module describes the inner workings of a modern computer and its fundamental operations. Then it introduces you to a way of expressing algorithms known as pseudocode, which will help you implement your solution using a programming language.

WEEK 4
Applied Computational Thinking Using Python
Writing a program is the last step of the computational thinking process. It’s the act of expressing an algorithm using a syntax that the computer can understand. This module introduces you to the Python programming language and its core features. Even if you have never written a program before -- or never even considered it -- after completing this module, you will be able to write simple Python programs that allow you to express your algorithms to a computer as part of a problem-solving process based on computational thinking.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Uso de bases de datos con Python (Coursera) Coursera
University of Michigan

Uso de bases de datos con Python (Coursera)

Este curso presentará a los estudiantes los conceptos básicos del lenguaje de consulta estructurado (Structured Query Language, SQL), así como el diseño básico de bases de datos para almacenar datos como parte de una iniciativa de varios pasos para recopilar, analizar y procesar datos. El curso utilizará SQLite3 como base de datos. También crearemos rastreadores web y procesos de visualización y recopilación de datos de varios pasos. Utilizaremos la biblioteca D3.js para realizar la visualización básica de datos.

Sep 14th 2026
5-12 Weeks
An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Sep 7th 2026
5-12 Weeks
Selenium WebDriver with Python (Coursera) Coursera
Whizlabs

Selenium WebDriver with Python (Coursera)

“Selenium WebDriver with Python” is a foundational course that aims to provide a comprehensive understanding of Selenium and its components. It also helps in understanding how Selenium WebDriver Operates. This course begins by demonstrating an environment setup for Selenium WebDriver with Python. A brief description of locating Web elements and web Interactions is provided in this course. This course covers an overview of testing frameworks with Selenium WebDriver. Some advanced topics such as Handling Popup, Alerts, Multiple Browser Tabs, Mouse and Keyboard interactions are also highlighted in this course.

Sep 14th 2026
3 Weeks
GenAI for Everyone (Coursera) Coursera
Coursera Instructor Network

GenAI for Everyone (Coursera)

This course offers a foundational journey into the world of Generative AI (GenAI), setting the stage for a comprehensive learning path that delves into the nuanced, role-specific applications of AI. Designed to equip learners with essential GenAI knowledge, this primer is the perfect starting point before progressing through a series of courses tailored to various job functions and roles.

Sep 14th 2026
1 Week
Data Processing Using Python (Coursera) Coursera
Nanjing University

Data Processing Using Python (Coursera)

This course is mainly for non-computer majors. It starts with the basic syntax of Python, to how to acquire data in Python locally and from network, to how to present data, then to how to conduct basic and advanced statistic analysis and visualization of data, and finally to how to design a simple GUI to present and process data, advancing level by level.

Sep 14th 2026
5-12 Weeks
Creative Problem Solving (Coursera) Coursera
University of Minnesota

Creative Problem Solving (Coursera)

This course deals directly with your ability for creativity which is a critical skill in any field. It focuses on divergent thinking, the ability to develop multiple ideas and concepts to solve problems. Through a series of creativity building exercises, short lectures, and readings, learners develop both an understanding of creativity and increase their own ability.

Sep 14th 2026
4 Weeks
Applied Text Mining in Python (Coursera) Coursera
University of Michigan

Applied Text Mining in Python (Coursera)

This course will introduce the learner to text mining and text manipulation basics. The course begins with an understanding of how text is handled by python, the structure of text both to the machine and to humans, and an overview of the nltk framework for manipulating text. The second week focuses on common manipulation needs, including regular expressions (searching for text), cleaning text, and preparing text for use by machine learning processes. The third week will apply basic natural language processing methods to text, and demonstrate how text classification is accomplished. The final week will explore more advanced methods for detecting the topics in documents and grouping them by similarity (topic modelling).

Sep 14th 2026
4 Weeks
Algorithmic Thinking (Part 1) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 1) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Sep 7th 2026
4 Weeks
Accounting Data Analytics with Python (Coursera) Coursera
University of Illinois at Urbana-Champaign

Accounting Data Analytics with Python (Coursera)

This course focuses on developing Python skills for assembling business data. It will cover some of the same material from Introduction to Accounting Data Analytics and Visualization, but in a more general purpose programming environment (Jupyter Notebook for Python), rather than in Excel and the Visual Basic Editor. These concepts are taught within the context of one or more accounting data domains (e.g., financial statement data from EDGAR, stock data, loan data, point-of-sale data).

Sep 14th 2026
5-12 Weeks
Factory Automation: Shaping the Future of Manufacturing (Coursera) Coursera
Starweaver

Factory Automation: Shaping the Future of Manufacturing (Coursera)

This course provides a comprehensive understanding of factory automation, covering foundational concepts to practical applications. Participants explore the evolution of automation technology, including robotics and control systems, witnessing its role in optimizing production processes and enhancing productivity. Through real-world case studies, they learn how automation improves efficiency, safety, and innovation in manufacturing.

Sep 14th 2026
4 Weeks
Cross Functional Collaboration (Coursera) Coursera
Starweaver

Cross Functional Collaboration (Coursera)

Welcome to the "Cross-Functional Collaboration" course! This course focuses on the principles and strategies for collaborating effectively with colleagues from different functional areas. Through this course, you will learn techniques to overcome challenges, foster teamwork, and leverage diverse perspectives to achieve common goals. The course emphasizes the importance of building a culture of trust and cooperation among team members and covers various techniques to improve communication, manage conflicts, and make informed decisions through collaborative efforts.

Sep 14th 2026
1 Week