We may earn an affiliate commission when you visit our partners.
Course image
David Quigley

In this course, we will explore different types of problems, the boundaries of what makes a problem solvable, and the different algorithms, rules, and heuristics we can implement to solve these problems.

Enroll now

What's inside

Syllabus

Problems for Minds and Machines
This week we will begin our discussions by defining the boundaries and limitations of problems and their solutions.
Read more
Computers and Logic
This week we will explore adapting problem-solving approaches into computational methods.
Humans and Heuristics
This week we will discuss judgment and decision making as a different kind of problem-solving and explore how heuristics are used for these tasks.
Course Assessment & Wrap-Up Discussion
In this module, you will test your knowledge on methods for solving problems.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Offers a clear analysis of various problem characteristics and problem-solving methodologies
Taught by David Quigley, an accomplished instructor in problem-solving
Explores different types of problems, from computational to human-centric
Involves multiple modules, including discussion forums and a final assessment

Save this course

Save Methods for Solving Problems to your list so you can find it easily later:
Save

Reviews summary

Engaging course for problem solving

Learners say Methods for Solving Problems is an engaging course that provides many tools to help with critical thinking and decision making. Students say that the course increased their ability to solve problems in a computational way. The resources and readings were helpful, although some learners mentioned that some links were broken and some quizzes had incorrect answers. Overall, students found the instructor to be excellent and the course to be well-structured.
The instructor was excellent and knowledgeable.
"Brilliant teaching and modules I really like the way our professor taught us"
"Thank you Professor David Quigley, University of Colorado at Boulder and Coursera. Excellent course to develop the ability and approach to solve problems"
Students found the content engaging and helpful.
"Increased my critical thinking and decision making."
"it really broaden the way i look and attempt problems"
"this course give you many tools and new ideas the how to think computationally"
Students reported that the course staff did not respond to questions about issues in the course.
"Looking for help about these issues, I found that there are open discussions in the forums from over a year without any answer from course staff. This is concerning since people are paying for this, and also mind about their learning outcomes. Without support from staff for long lasting issues, learning can be compromised."
Some quizzes had incorrect answers or were from other courses.
"Some of the quizzes questions are from other courses in the specialization, and some readings have broken links."
"un par de links a lecturas no me sirvieron, el último test solamente sobre probabilidad... no pensaría es el objetivo del curso :("
Some links to resources and readings were broken.
"Some of the resources are broken. Also, there are some quizzes which require revision"
"un par de links a lecturas no me sirvieron"
"There is more external linked content than the original content. Some questions are in the wrong week, before the corresponding material, some have wrong answers marked as correct."

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 Methods for Solving Problems with these activities:
Read 'Think Like a Programmer' by V. Anton Spraul
This book provides a foundation in computational thinking, which is essential for problem-solving in computer science.
Show steps
  • Obtain a copy of the book.
  • Read the book thoroughly.
  • Take notes and highlight key concepts.
  • Complete the exercises and challenges in the book.
  • Discuss the book's content with classmates or a study group.
Follow tutorials on problem-solving techniques
Following tutorials provides guided instruction on various problem-solving techniques, enhancing students' understanding and extending their toolset.
Browse courses on Problem Solving
Show steps
  • Search for tutorials on problem-solving techniques.
  • Choose a tutorial that aligns with your learning goals.
  • Follow the tutorial step-by-step.
  • Practice the techniques in the tutorial.
  • Explore additional tutorials to broaden your knowledge.
Solve logic puzzles
Solving logic puzzles strengthens problem-solving abilities and improves reasoning skills, which are essential for understanding algorithms and solving computational problems.
Browse courses on Logic
Show steps
  • Find a logic puzzle online or in a puzzle book.
  • Read the puzzle carefully and identify the given information.
  • Apply logical reasoning and deduction to eliminate possibilities.
  • Check your solution and make adjustments as needed.
  • Repeat with different puzzles to improve your skills.
Three other activities
Expand to see all activities and additional details
Show all six activities
Participate in study groups or peer discussions
Engaging in study groups or peer discussions allows students to exchange ideas, clarify concepts, and learn from each other, boosting their problem-solving abilities.
Browse courses on Problem Solving
Show steps
  • Find a study group or peer discussion group.
  • Attend regular meetings.
  • Actively participate in discussions.
  • Ask questions and share insights.
  • Work together on problem-solving exercises.
Build a simple computer program
Building a simple computer program allows students to apply problem-solving techniques and algorithms in a practical setting, reinforcing their understanding.
Browse courses on Programming
Show steps
  • Choose a simple problem to solve with a program.
  • Design the algorithm and data structures for the program.
  • Implement the program in a programming language.
  • Test and debug the program.
  • Refine the program for efficiency and clarity.
Participate in coding challenges or hackathons
Coding challenges and hackathons provide an immersive environment for students to apply problem-solving techniques, fostering creativity, collaboration, and resilience.
Browse courses on Problem Solving
Show steps
  • Find a coding challenge or hackathon that aligns with your interests.
  • Prepare for the event by practicing problem-solving and algorithm design.
  • Participate in the event and work on solving problems.
  • Collaborate with others and exchange ideas.
  • Reflect on your experience and identify areas for improvement.

Career center

Learners who complete Methods for Solving Problems will develop knowledge and skills that may be useful to these careers:
Operations Research Analyst
Operations Research Analysts use their problem-solving abilities to improve the efficiency of organizations. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for an Operations Research Analyst.
Software Engineer
As a Software Engineer, you will use your problem-solving abilities to design and develop software applications. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Software Engineer.
Data Scientist
Data Scientists use their problem-solving abilities to analyze data and identify patterns. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Data Scientist.
Financial Analyst
Financial Analysts use their problem-solving abilities to analyze financial data and make investment recommendations. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Financial Analyst.
Management Consultant
Management Consultants use their problem-solving abilities to help organizations improve their performance. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Management Consultant.
Information Security Analyst
Information Security Analysts use their problem-solving abilities to protect computer systems from security breaches. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for an Information Security Analyst.
Market Research Analyst
Market Research Analysts use their problem-solving abilities to conduct research and analyze market data. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Market Research Analyst.
Systems Analyst
Systems Analysts use their problem-solving abilities to design and implement computer systems. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Systems Analyst.
Computer Programmer
Computer Programmers use their problem-solving abilities to write and test computer code. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Computer Programmer.
Computer Systems Analyst
Computer Systems Analysts use their problem-solving abilities to analyze and design computer systems. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Computer Systems Analyst.
Software Quality Assurance Analyst
Software Quality Assurance Analysts use their problem-solving abilities to test and ensure the quality of software applications. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Software Quality Assurance Analyst.
Business Analyst
Business Analysts use their problem-solving abilities to analyze business processes and identify areas for improvement. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Business Analyst.
Database Administrator
Database Administrators use their problem-solving abilities to design and manage databases. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Database Administrator.
Web Developer
Web Developers use their problem-solving abilities to design and develop websites. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Web Developer.
Network Administrator
Network Administrators use their problem-solving abilities to design and manage computer networks. This Methods for Solving Problems course may help you build a foundation in problem-solving techniques that can be applied to your work. The course covers topics such as algorithms, heuristics, and logic, which are all essential skills for a Network Administrator.

Reading list

We've selected ten 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 Methods for Solving Problems.
Comprehensive textbook on computer vision. It valuable resource for anyone who wants to learn more about computer vision, and it is also relevant to the study of problem solving.
Comprehensive textbook on machine learning. It valuable resource for anyone who wants to learn more about machine learning, and it is also relevant to the study of problem solving.
Comprehensive textbook on deep learning. It valuable resource for anyone who wants to learn more about deep learning, and it is also relevant to the study of problem solving.
Comprehensive textbook on reinforcement learning. It valuable resource for anyone who wants to learn more about reinforcement learning, and it is also relevant to the study of problem solving.
Comprehensive textbook on probabilistic robotics. It valuable resource for anyone who wants to learn more about probabilistic robotics, and it is also relevant to the study of problem solving.
Fascinating look at how algorithms are used in everyday life, and how they can help us make better decisions. It great supplement to this course, as it provides real-world examples of how problem-solving techniques and algorithms can be applied in a variety of settings.
This Pulitzer Prize-winning book mind-bending exploration of the relationship between logic, mathematics, music, and art. It challenging but rewarding read, and it is sure to expand your understanding of the nature of problem solving.
Comprehensive introduction to the philosophy of artificial intelligence. It valuable resource for anyone who wants to learn more about the philosophical implications of AI, and it is also relevant to the study of problem solving.
Classic work on the philosophy of science. It valuable resource for anyone who wants to learn more about the nature of scientific inquiry, and it is also relevant to the study of problem solving.
Broad introduction to problem solving, covering the entire problem-solving process, from problem identification through obtaining a solution. While not as in-depth as other books, it useful reference for the breadth of problem-solving and decision making techniques that are available.

Share

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

Similar courses

Here are nine courses similar to Methods for Solving Problems.
Programming Use Cases with Python
Mathematical Optimization for Engineers
408: Advanced Artificial Intelligen
Sensor Fusion and Non-linear Filtering for Automotive...
Evaluating Problems
Troubleshooting and Debugging Techniques
Advanced Models for Decision Making
Simple Solutions for Common Dog Behavior & Training...
Stakeholder Collaboration: Organizing for Environmental...
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 - 2024 OpenCourser