Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Chris Quintana

Have you ever heard that computers "think"? Believe it or not, computers really do not think. Instead, they do exactly what we tell them to do. Programming is, "telling the computer what to do and how to do it."

Before you can think about programming a computer, you need to work out exactly what it is you want to tell the computer to do. Thinking through problems this way is Computational Thinking. Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand.

Read more

Have you ever heard that computers "think"? Believe it or not, computers really do not think. Instead, they do exactly what we tell them to do. Programming is, "telling the computer what to do and how to do it."

Before you can think about programming a computer, you need to work out exactly what it is you want to tell the computer to do. Thinking through problems this way is Computational Thinking. Computational Thinking allows us to take complex problems, understand what the problem is, and develop solutions. We can present these solutions in a way that both computers and people can understand.

The course includes an introduction to computational thinking and a broad definition of each concept, a series of real-world cases that illustrate how computational thinking can be used to solve complex problems, and a student project that asks you to apply what they are learning about Computational Thinking in a real-world situation. This project will be completed in stages (and milestones) and will also include a final disaster response plan you'll share with other learners like you.

This course is designed for anyone who is just beginning programming, is thinking about programming or simply wants to understand a new way of thinking about problems critically. No prior programming is needed. The examples in this course may feel particularly relevant to a High School audience and were designed to be understandable by anyone.

You will learn:

-To define Computational Thinking components including abstraction, problem identification, decomposition, pattern recognition, algorithms, and evaluating solutions

-To recognize Computational Thinking concepts in practice through a series of real-world case examples

-To develop solutions through the application of Computational Thinking concepts to real world problems

Enroll now

Here's a deal for you

Save money when you learn with a deal that may be relevant to this course.
All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Syllabus

Foundations of Computational Thinking
Case Study: Airport Surveillance and Image Analysis
Case Study: Epidemiology
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Geared toward learners just starting out with programming or who want to improve their problem-solving skills
Introduces the fundamentals of Computational Thinking, including abstraction, problem identification, decomposition, pattern recognition, algorithms, and evaluating solutions
Emphasizes the practical use of Computational Thinking through real-world case examples
Culminates in a student project that requires learners to apply Computational Thinking concepts to a real-world problem
Uses examples that may resonate particularly with a high school audience
Does not require prior programming experience

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Foundation in computational thinking concepts

According to learners, this course provides a solid introduction to computational thinking. Students appreciate how the course breaks down complex ideas into understandable components like decomposition and pattern recognition. The real-world case studies are often highlighted as helpful in illustrating how to apply the concepts. While designed for beginners with no prior programming needed, some reviews suggest it might be too basic for those with existing technical backgrounds. The final project is frequently mentioned as a valuable opportunity to apply learned skills.
Great starting point with no prerequisites.
"This course is perfect for absolute beginners like me who have no programming background."
"It delivered exactly what it promised - an introduction to thinking like a computer scientist without code."
"If you're new to this way of thinking, this is a fantastic place to start."
Real-world examples illustrate concept application.
"The case studies provided excellent examples of how computational thinking can be used in practical scenarios."
"Seeing the concepts applied to things like epidemiology made them much more concrete and understandable."
"I appreciated the diverse range of real-world problems used to demonstrate the thinking process."
Project allows applying learned skills practically.
"The final project was the most valuable part for me; it forced me to actually use the concepts to solve a problem."
"Working through the stages of the project really solidified my understanding."
"I enjoyed the challenge of applying computational thinking to the disaster response scenario."
Concepts are explained clearly and accessibly.
"The explanations of the concepts are very clear and easy to follow for someone new to computational thinking."
"I found the way the instructor broke down complex ideas into simpler steps incredibly helpful."
"It really helped me grasp the basics of things like decomposition and abstraction for the first time."
May lack depth for experienced learners.
"While good for beginners, someone with a background in programming or logic might find it too superficial."
"I was hoping for a bit more depth or slightly more complex applications of the principles."
"Felt a little slow-paced given my existing technical knowledge."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Problem Solving Using Computational Thinking with these activities:
Revisit Past Course Materials on Fundamentals of Programming
Refreshing prior knowledge in this area supports computational thinking. Review basic programming concepts and syntax.
Browse courses on Programming Fundamentals
Show steps
  • Go through old notes, assignments, and quizzes.
  • Re-solve practice problems.
Review Basic Math and Logic Concepts
Strengthening these foundational skills enhances computational thinking. Review basic math operations and logical reasoning concepts to ensure a solid base.
Browse courses on Logic
Show steps
  • Take an online refresher course or use textbooks.
  • Solve practice problems and puzzles.
Practice Solving Algorithm Problems
Practice is crucial for computational thinking. Focus on applying the concepts from the course to solve different algorithm problems.
Show steps
  • Select a platform or resource for practice problems.
  • Start solving problems of varying difficulty.
  • Debug your solutions and learn from your mistakes.
  • Seek help from online forums or mentors if needed.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Participate in Collaborative Problem-Solving Sessions
Working with peers deepens understanding. Join a study group or schedule regular sessions to discuss course concepts and work on problems together.
Show steps
  • Find a group of classmates with complementary skills.
  • Establish regular meeting times and ground rules.
  • Take turns presenting problems and facilitating discussions.
Explore Case Studies on Computational Thinking Applications
Seeing real-world examples of computational thinking can solidify understanding. Explore case studies that showcase its practical applications.
Show steps
  • Identify a case study relevant to your interests.
  • Analyze the problem and the computational thinking concepts employed.
  • Discuss your findings with classmates or instructors.
Develop a Computational Thinking Project Plan
Applying computational thinking to a project enhances mastery. Plan a project that demonstrates your understanding of the concepts.
Show steps
  • Identify a problem or challenge to address.
  • Define the scope and objectives of your project.
  • Break down the project into smaller, manageable tasks.
  • Estimate the time and resources needed.
  • Present your project plan to your instructor or peers for feedback.
Create a Diagram or Infographic on a Course Concept
Visualizing concepts enhances understanding. Create a diagram or infographic that explains a specific computational thinking concept.
Show steps
  • Choose a concept and research it thoroughly.
  • Design a clear and visually appealing representation.
  • Share your diagram or infographic with others for feedback.

Career center

Learners who complete Problem Solving Using Computational Thinking will develop knowledge and skills that may be useful to these careers:
Computer Scientist
Computer Scientists research and develop new computing technologies. This course will help you develop the foundational knowledge and skills necessary to succeed in this role. You will learn about the history of computing, the different areas of computer science, and how to conduct research in this field.
Data Scientist
Data Scientists use data to solve problems and make predictions. This course will help you develop the skills necessary to collect, clean, and analyze data. You will also learn how to use machine learning and statistical techniques to build models that can predict future events.
Computer Programmer
Computer Programmers write and maintain computer programs. This course will help you develop the skills necessary to design, implement, and debug computer programs. You will also learn about the different types of programming languages and how to use them to create efficient and reliable software.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course will help you develop the problem-solving and analytical skills necessary to succeed in this role. You will also learn about the different stages of the software development lifecycle and how to use programming languages to create efficient and reliable software.
Chief Information Officer
Chief Information Officers are responsible for the overall management of an organization's information technology resources. This course will help you develop the skills necessary to lead an IT organization effectively. You will also learn about the different aspects of CIO leadership, such as strategic planning, budgeting, and risk management.
Information Security Analyst
Information Security Analysts protect computer systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. This course will help you develop the skills necessary to identify and mitigate security risks. You will also learn about the different types of security threats and how to implement security measures to protect against them.
Systems Analyst
Systems Analysts design, develop, and implement computer systems. This course will help you develop the skills necessary to analyze business needs and design systems that meet those needs. You will also learn about the different types of systems analysis techniques and how to use them to develop effective systems.
Web Developer
Web Developers design, develop, and maintain websites. This course will help you develop the skills necessary to create websites that are both visually appealing and functional. You will also learn about the different web development technologies and how to use them to create dynamic and interactive websites.
Network Administrator
Network Administrators manage and maintain computer networks. This course will help you develop the skills necessary to design, implement, and manage computer networks. You will also learn about the different types of network technologies and how to use them to create reliable and secure networks.
Data Analyst
Data Analysts collect, clean, and interpret data to help businesses make informed decisions. This course will help you develop the computational thinking skills necessary to identify patterns and trends in data, which is essential for success in this role. You will also learn how to use statistical software to analyze data and present your findings in a clear and concise manner.
Information Technology Manager
Information Technology Managers plan, organize, and direct the activities of an organization's information technology department. This course will help you develop the skills necessary to manage an IT department effectively. You will also learn about the different aspects of IT management, such as budgeting, staffing, and project management.
Database Administrator
Database Administrators manage and maintain databases. This course will help you develop the skills necessary to design, implement, and manage databases. You will also learn about the different types of databases and how to use them to store and retrieve data efficiently.
Business Analyst
Business Analysts help businesses improve their processes and operations. This course will help you develop the skills necessary to identify and solve business problems. You will also learn how to use data analysis and modeling techniques to make recommendations for improvement.
Project Manager
Project Managers plan, organize, and execute projects. This course will help you develop the skills necessary to manage projects effectively. You will also learn how to use project management tools and techniques to ensure that projects are completed on time, within budget, and to specification.
Computer Support Specialist
Computer Support Specialists provide technical support to computer users. This course will help you develop the skills necessary to troubleshoot and resolve computer problems. You will also learn about the different types of computer support and how to provide effective support to users.

Reading list

We've selected 13 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Problem Solving Using Computational Thinking.
Provides a more in-depth look at computational thinking and its components. It good resource for anyone who wants to learn more about the theory behind computational thinking.
Explores how algorithms can be used to make better decisions. It good resource for anyone who wants to learn more about the role of algorithms in our lives.
Provides an overview of computational thinking and design thinking, and how they can be used together to solve complex problems. It good starting point for anyone who wants to learn more about computational thinking.
Explores the impact of artificial intelligence and other digital technologies on the economy and society. It good resource for anyone who wants to learn more about the future of technology and its implications for us.
Explores the ethical implications of algorithms and how they are used to make decisions about our lives. It good resource for anyone who wants to learn more about the impact of algorithms on society.
Provides advice on how to acquire customers for a startup company. It good resource for anyone who wants to learn more about marketing and sales.
Provides advice on how to market and sell technology products to mainstream customers. It good resource for anyone who wants to learn more about marketing and sales.
Provides advice on how to develop a good strategy for a business. It good resource for anyone who wants to learn more about strategy.
Provides a history of information and its impact on society. It good resource for anyone who wants to learn more about the role of information in our lives.
Explores the reasons why large companies often fail to innovate. It good resource for anyone who wants to learn more about the challenges of innovation.
Provides advice on how to build a successful startup company using the lean startup methodology. It good resource for anyone who wants to learn more about entrepreneurship.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser