Principles of Computing (Part 2)

This Specialization covers much of the material that first-year Computer Science students take at Rice University. 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.

Created by: Scott Rixner

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 94 / 100

icon
Course Description

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.In part 2 of this course, the programming portion of the class will focus on concepts such as recursion, assertions, and invariants. The mathematical portion of the class will focus on searching, sorting, and recursive data structures. Upon completing this course, you will have a solid foundation in the principles of computation and programming. This will prepare you for the next course in the specialization, which will begin to introduce a structured approach to developing and analyzing algorithms. Developing such algorithmic thinking skills will be critical to writing large scale software and solving real world computational problems.

icon
Instructor Details

placeholder

Scott Rixner is a Professor of Computer Science at Rice University. His research focuses on systems software and computer architecture. He is well versed in the internals of the Python programming language, as he is currently developing a light-weight Python interpreter for embedded systems in his research. He has also taught many of the introductory computer science courses at Rice, including Computational Thinking, Algorithmic Thinking, Introduction to Program Design, and Introduction to Computer Systems. He is the chairman of the curriculum committees for both the Department of Computer Science and the School of Engineering at Rice. Prior to joining Rice, he received his Ph.D. from MIT.

icon
More android development courses

Flutter & Firebase: Build a Complete App for iOS & Android

$11.99

How To Launch Your App In Just 16 hrs - Android Development

$11.99

Android Game Development for Beginners - Learn Core Concepts

$11.99

Android App Development Bootcamp 2021 - Android 10 (Q)

$11.99

Game Development for Modern Platforms

Free

Getting started with Augmented Reality

Free

icon
Reviews

4.7

42 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By By A&Tower on 17-May-16

I love you teaching staffs!!!!!!!!!!!!!!

By By Sangil Y on 10-Jun-18

projects are tough at least for me it was but once you finish all the project, that rewarding feeling is just awesome

By By Adel F on 17-Oct-17

Learned lots! One year down the line I was asked at a job interview about my past experience in python and gave this!

By By Krishna on 29-Apr-17

Excellent course!!! Choice of mini projects to apply the concepts we learnt was awesome. Excellent course structure, instructors, materials and everything. Loved every part of this course. Thanks for such wonderful course.

By By Jaehwi C on 4-Nov-17

The best course to study computer science for beginner!

By By Roberto M P F M on 29-Mar-19

Great course! Each course is getting more challenging, and the way it is taught is simply great. It is easy to follow and still makes you think a lot. It is really rewarding finishing the mini-projects.

By Srinath D on 20-Oct-16

A few of the programming projects were a bit tedious. If you're not passionate about games like tic tac toe, it's hard to maintain focus :) I love the teaching however, very well done as usual!

By Edwin B on 3-Oct-18

17/5000
This course is of high quality but not friendly to Chinese students.

By Radhika R on 3-Oct-19

Very good course, especially the lessons on recursion and breadth-first searching. Lessons were very good and quizzes really served to reinforce material. Projects in this course were much more challenging than previous ones.Final project (15 puzzle) was very frustrating and didn't seem designed to teach as many skills as previous projects; just seemed like it was designed to be complicated and difficult because it was the last project.

By Michael B on 13-May-19

Mini-projects hard and makes you wanna think all aspects which is a good programming practice. However, I believe theoretical depth is missing.

By Alex N on 18-Jun-17

Tough! but very kind explanation and hard work! Thank you, teachers!

By Danielle C on 9-May-18

little bit hard to solve the assignment.Even though it took much more time to solve the assignments and practice activity, this class was awesome.