COMP 130: Elements of Algorithms & Computation

  • Course StartArchived
  • Course Duration5 Weeks
  • Workload35 hours per week
  • Credit OfferedRice University Credit

Learn an introduction to computer science and programming and go beyond the basics of programming to learn actionable strategies for real world problem solving.

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 Trailer

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.

Lecture Samples


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 algorithms, discrete math, theory of computation, computer systems, databases, and research presentation skills.  This echoes […]

Full Bio