Course Trailer

Important Course Dates:

Session II: May 29th – June 29th, 2018
Session II application deadline for visiting students:TBA
Session II registration deadline for Rice students: TBA

Course Description

Elements of Algorithms & Computation provides a strong introduction to students new to computer science and programming. With the multi-faceted and easy-to-learn Python language, you will go beyond the basics of programming to learn actionable strategies for real world problem solving. You will learn the principles of computational thinking as a strategy for tackling real-world problems in:

  • Architecture: cost modeling and solar power generation modeling for parameterized structures
  • Environmental biology: population dynamics of predators and prey
  • Natural language analysis and generation: including building a chatbot based upon Hidden Markov Models
  • Visual recognition: machine learning to recognize symbols in the presence of erroneous data

This course is open to:

  • Rice Students continuing their studies through the summer
  • Visiting students who want to take challenging academics and transfer credits to their home institution
  • High school students looking to earn college level degree credit
  • Prerequisites: high-school algebra and trigonometry

Course Format

4 credit hour class.

Course is self-paced. Students are encouraged to participate in optional live sessions with the instructors, TBD. Fixed time TA live sessions will be scheduled as appropriate.

Estimated workload is 35 hours per week for 5 week summer schedule.


Tuition for Rice and visiting students:
$1000 $800 per credit hour
Click here for additional payment and billing information.

How to Apply

Please see our Summer Sessions Application Checklist for instructions and important deadlines.


Any questions? Please e-mail

Professor Information

Picture of Dr. John Greiner

Dr. John Greiner

John Greiner is a Lecturer in the Department of Computer Science at Rice University.  He has taught all levels of computer science since 1997.  In addition to a focus on introductory computer science, his highly diverse teaching experience has included

Full Bio