This Specialization covers much of the material that first-year Computer Science students take at Rice University, brought to you by the world-class Faculty who teach our master's and PhD programs. Students learn sophisticated programming skills in Python from the ground up and apply these skills in building more than 20 fun projects. The Specialization concludes with a Capstone exam that allows the students to demonstrate the range of knowledge that they have acquired in the Specialization.

Fundamentals of Computing Specialization
Ends soon: Gain next-level skills with Coursera Plus for $199 (regularly $399). Save now.

Fundamentals of Computing Specialization
Prepare for Advanced Computer Science Courses. Learn how to program and think like a Computer Scientist



Instructors: Luay Nakhleh
65,532 already enrolled
Included with
(2,929 reviews)
What you'll learn
Skills you'll gain
- Machine Learning Algorithms
- Data Structures
- Theoretical Computer Science
- Interactive Design
- Combinatorics
- Algorithms
- Bioinformatics
- Event-Driven Programming
- Probability
- Programming Principles
- Data Analysis
- Program Development
- User Interface (UI)
- Big Data
- Graph Theory
- Computational Thinking
- Application Development
- Object Oriented Programming (OOP)
- Computer Programming
Tools you'll learn
Details to know

Add to your LinkedIn profile
See how employees at top companies are mastering in-demand skills

Advance your subject-matter expertise
- Learn in-demand skills from university and industry experts
- Master a subject or tool with hands-on projects
- Develop a deep understanding of key concepts
- Earn a career certificate from Rice University

Specialization - 7 course series
This Specialization covers much of the material that first-year Computer Science students take at Rice University, brought to you by the world-class Faculty who teach our master's and PhD programs. Students learn sophisticated programming skills in Python from the ground up and apply these skills in building more than 20 fun projects. The Specialization concludes with a Capstone exam that allows the students to demonstrate the range of knowledge that they have acquired in the Specialization.
An Introduction to Interactive Programming in Python (Part 1)
What you'll learn
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. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse.
Skills you'll gain
An Introduction to Interactive Programming in Python (Part 2)
What you'll learn
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. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse.
Skills you'll gain

Principles of Computing (Part 1)
What you'll learn
This two-part course builds upon the programming skills that you learned in our Introduction to Interactive Programming in Python course. We will augment those skills with both important programming practices and critical mathematical problem solving skills. These skills underlie larger scale computational problem solving and programming. The main focus of the class will be programming weekly mini-projects in Python that build upon the mathematical and programming principles that are taught in the class. To keep the class fun and engaging, many of the projects will involve working with strategy-based games.
Skills you'll gain

Principles of Computing (Part 2)
What you'll learn
This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class. To keep the class fun and engaging, many of the projects will involve working with strategy-based games.
Skills you'll gain

Algorithmic Thinking (Part 1)
What you'll learn
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 course builds on the principles that you learned in our Principles of Computing course and is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to real-world computational problems.
Skills you'll gain

Algorithmic Thinking (Part 2)
What you'll learn
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.
Skills you'll gain
The Fundamentals of Computing Capstone Exam
What you'll learn
While most specializations on Coursera conclude with a project-based course, students in the "Fundamentals of Computing" specialization have completed more than 20+ projects during the first six courses of the specialization. Given that much of the material in these courses is reused from session to session, our goal in this capstone class is to provide a conclusion to the specialization that allows each student an opportunity to demonstrate their individual mastery of the material in the specialization.
Skills you'll gain
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructors



Offered by
Why people choose Coursera for their career





Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy
Frequently asked questions
The Specialization is designed to be completed in 6-9 months.
Knowledge of high school mathematics is required. No previous programming knowledge is required.
We strongly encourage students to take the courses in the Specialization in the listed order. Each class builds on the previous classes.
More questions
Financial aid available,



