Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Georgia Institute of Technology

Computing in Python IV: Objects & Algorithms

Georgia Institute of Technology via edX


Complete your introductory knowledge of computer science with this final course on objects and algorithms. Now that you've learned about complex control structures and data structures, learn to develop programs that more intuitively leverage your natural understanding of problems through object-oriented programming. Then, learn to analyze the complexity and efficiency of these programs through algorithms. In addition, certify your broader knowledge of Introduction to Computing with a comprehensive exam.

By the end of this course, you'll be able to write programs in Python that leverage your more natural understanding of data structures by creating objects to represent the structures you work with most often. For example, if you were creating a class roster application, you'll learn how to create an object representing a student's name, ID number, and attendance record. Then, you'll be able to create applications that leverage sorting and searching algorithms to sort that roster alphabetically, search for a particular student, and evaluate the efficiency of both those operations.

Structurally, the course is comprised of several parts. Instruction is delivered via a series of short (2-3 minute) videos. In between those videos, you'll complete both multiple choice questions and coding problems to demonstrate your knowledge of the material that was just covered. These exercises count for 20% of your grade. Then, after each major chapter, you'll complete a problem set of collected, more challenging problems. These count for 40% of your grade. Finally, you'll complete a final course exam, which counts for the remaining 40% of your grade.


Chapter 1. Objects. Working with instances of complex data types or defining your own, like creating a class to represent a video game character, a class syllabus, or an item for sale.

Chapter 2. Algorithms. Creating complex code for searching in large lists or sorting lists of data, and analyzing code for its complexity.

Chapter 3. Course Recap. A comprehensive review of the Xseries as a whole, leading into the final exam.

Taught by

David Joyner


4.9 rating, based on 105 Class Central reviews

4.7 rating at edX based on 14 ratings

Start your review of Computing in Python IV: Objects & Algorithms

  • Definitely the best course I've taken on Python programming so far. It's costly compared to some other online course, but I think it provides an experience much closer to taking a university course, so it's cheap in comparison to that.

    The real value is the sheer volume of interesting programming problems you get to tackle. Also, they have a really good auto-grader, so you're able to write everything from scratch each time, which really builds your programming knowledge. I've done other courses where you're just updating sections of the code at a time, and the result is that, when it comes time to tackle more challenging programs, you just aren't ready.
  • I have programmed - without taking any course - in Python 2.x more than 10 years ago (and I forgot most of it). I am interested in data science and was looking for a Python course as a first step up. I was also looking at an introductory programming…
  • Anonymous
    I took this course as a prerequirement for the OMSCS program. I expected to breeze through it, but there were some difficult problems that I really enjoyed taking the time to work through. Dr. Joyner does a great job explaining why he teaches certai…
  • Anonymous
    This was an excellent course that has left me with a confident understanding of the basics of Python, as well as a solid introductory knowledge of computing as a subject. I really enjoyed learning from the professor because he explained each concept…
  • Anonymous
    This course provided an excellent overview of programming fundamentals and the Python Programming Language. I especially enjoyed the unit covering Sorting and Search Algorithms as it gave great context not only into how processes are done, but why they are done the way they are and how to make them more efficient! While I came in with some prior knowledge of the Python Programming Language, I feel this course has definitely deepened my general understanding of Computer Science.
  • Anonymous
    Excellent material. I'm taking this because I'm looking at the OMSCS program but have never done any Python programming before (My education and career were based in Java). So coming into the class with significant prior experience I was anticipatin…
  • Anonymous
    I finished this course, and the CS1301 Xseries as a whole. It gives a great overview of all concepts of programming, after the course, you are capable of going further in any area of programming. The language python is great for beginners, it is q…
  • Anonymous
    Great course! What really helped me was the numerous practice problems with sample answers to help me see what I can do more efficiently or where I'm going right or wrong with my logic. Highly recommend!
  • Anonymous
    This course and professional certificate as a whole has been excellent. David Joyner, the instructor, is really good at explaining concepts that can be very confusing in a simple and understandable way. I think the series was really solid as a whole…
  • Profile image for Иван Богачев
    Иван Богачев
    I have recently taken this course and can attest to its superior quality. The main emphasis is on practical problems. Expect to code a lot.
  • Anonymous
    I finished the intro to python programming professional certificate and thought it was a great program. In particular, it seems great for those to new to python as it really builds a solid foundation. I don't have a cs background and learned python outside of academia. I liked that the course felt like it contained more CS principles. Even though I came in with a decent amount of experience, I found that I learned quite a bit. I think it's great to have frequent coding exercises (e.g., it seems like most videos/tabs in the class have one). The sandbox is nice, too, though it's easy enough to mess around on Google Colab or a Jupyter notebook.
  • Profile image for Andrew J. Ordway
    Andrew J. Ordway
    I am just completing CS1301xIV: Computing in Python, and by extension the whole series for the CS1301 Professional Certificate. It was a delight! This series on computing begins at an introductory level that any motivated student can follow and it…
  • Anonymous
    I have taken other CS courses in the past, and this is by far the best intro to a coding language that I have taken. The videos and practice questions in the learning phase provide a well-paced and clear overview of each topic and the practice problems provide tangible applications of what you just learned as well as helping you ensure you truly understand the topic. Dr. Joyner is very easy to understand and encourages you to reach out to him personally if you ever need help. This course is perfect for people who have never coded before or who have a general background, because you can move around the content at your pace. I would highly recommend taking this course as an introduction to Python or coding in general.
  • Anonymous
    I have completed this and the four previous Computing in Python courses. Usually do each one in a day or two. I have found the content to be very well explained and I have learned quite a bit during the "free" outline. However, I have seen many e…
  • Profile image for Yilin Lu
    Yilin Lu
    I completed all 4 courses in the series. As someone new to programming, I really appreciate the professor's incremental approach. The short deep dive videos followed immediately with coding exercises made it possible for me to absorb & understand t…
  • Anonymous
    I have taken this course, as well as the previous 3 courses to complete the GTx CS1301xIV Computing in Python. This is the first course I have taken online, enjoyed and completed. The course itself is well structured, with a book in pdf format, goo…
  • Anonymous
    I've taken all 4 courses in this series, and I can honestly say that this ranks among my top 3 courses of all time (and I have a bachelors and masters). The curriculum is incredibly well-paced, allowing you to make steady, incremental progress without getting frustrated because a concept was skipped over, and without getting bored from excessive repetition. Would highly recommend this course to anyone!
  • Anonymous
    It's a great introduction to Python. I don't like to watch lectures for more than 10 minutes and I don't fully grasp material from reading. This class didn't make you watch any really long lectures(10 minutes max) and the reading material wasn't lon…
  • Anonymous
    I started this program(4 courses) with absolutely zero knowledge of programming or coding. Now, after completing this program, I am very confident of my basic understanding of Python and programming as a whole. I give my credit to the intelligent de…
  • Anonymous
    I have found in this course what I was looking for - I was playing with a thought about changing my career path to programming in my head for a while, but didnt know where to start? I think this was really good choice. It is selfpaced (for employed…

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.