Back to Principles of Computing (Part 1)
Rice University

Principles of Computing (Part 1)

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. In part 1 of this course, the programming aspect of the class will focus on coding standards and testing. The mathematical portion of the class will focus on probability, combinatorics, and counting with an eye towards practical applications of these concepts in Computer Science. Recommended Background - Students should be comfortable writing small (100+ line) programs in Python using constructs such as lists, dictionaries and classes and also have a high-school math background that includes algebra and pre-calculus.

Status: Combinatorics
Status: Python Programming
IntermediateCourse19 hours

Featured reviews

VG

5.0Reviewed Apr 22, 2020

i enjoyed a lot, the syllabus in this course is really useful, and the application that we see in our day to day life

JH

5.0Reviewed May 15, 2018

very wellmade assignments! that goes a long way!plotting seemed a bit superflous and not much learned.Thank you professors!

SW

5.0Reviewed Apr 3, 2018

Yet another brilliant course in a brilliant specialization. On to part 2!

JM

5.0Reviewed Apr 5, 2016

Amazing. Way better than my community college CS courses.

PV

4.0Reviewed Jun 26, 2016

It's quite a step up from the level op IPP. Assignments are also a bit more difficult but still very enjoyable puzzles to solve.

TB

4.0Reviewed Aug 25, 2017

Most of the course was awesome, just wasn't crazy about the testing questions at the end of each quizz

RR

5.0Reviewed Jun 16, 2017

Best specialization for those who want to improve their coding and computational thinking.

WC

5.0Reviewed May 9, 2020

Unbelievable course - great instruction and coding skill level increasing increasing exponentially!

JO

5.0Reviewed Feb 19, 2018

Another wonderful class in this series. Great, engaging instructors and interesting projects.

KK

5.0Reviewed Oct 28, 2017

definitely gets you thinking the right way about programming (math, algorithms, efficiency, etc.

IB

5.0Reviewed Jun 11, 2017

Yay, no more peer grading! This course felt easier than intro2. Less fiddling with your programs and more about concepts.

UN

5.0Reviewed Oct 23, 2017

Very challenging and interesting so far. I'm only in the second week!

All reviews

Showing: 20 of 99

Mark Karman
3.0
Reviewed Aug 23, 2018
Peyman Pakzaban
5.0
Reviewed Dec 18, 2017
Jeremy Ledger
4.0
Reviewed Feb 7, 2018
Thomas Sosnoski
4.0
Reviewed Sep 7, 2020
Lianna
4.0
Reviewed Apr 9, 2018
Brett Anderson
1.0
Reviewed Feb 9, 2017
Aynur Zulkarnaev
5.0
Reviewed Dec 28, 2017
Chaitanya Vuddanti
5.0
Reviewed Jun 13, 2021
Ryan Diaz
5.0
Reviewed Feb 6, 2018
Saksham Nayyar
5.0
Reviewed May 7, 2019
Jayadev Haddadi
5.0
Reviewed May 16, 2018
Samer Nour Eddine
4.0
Reviewed Jun 3, 2018
Richie Stuver
4.0
Reviewed Jun 3, 2017
Ikseon Kang
4.0
Reviewed Jun 6, 2018
Peter Vis
4.0
Reviewed Jun 27, 2016
Gman
3.0
Reviewed May 30, 2022
Jingtian Zhang
3.0
Reviewed Mar 29, 2020
Paras Sood
3.0
Reviewed Dec 31, 2019
Na Zhuo
1.0
Reviewed Sep 23, 2022
Yee Yan Xian Reuben
5.0
Reviewed Jul 30, 2022