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 I: Fundamentals and Procedural Programming

Georgia Institute of Technology via edX


This course starts from the beginning, covering the basics of how a computer interprets lines of code; how to write programs, evaluate their output, and revise the code itself; how to work with variables and their changing values; and how to use mathematical, boolean, and relational operators.

By the end of this course, you'll be able to write small programs in Python that use variables, mathematical operators, and logical operators. For example, you could write programs that carry out complex mathematical operations, like calculating the interest rate necessary to reach a savings goal, recommending apparel options based on weather patterns, or calculating a grade based on multiple percentages.

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.


Chapter 1: Computing. The fundamentals of how computers work, what program code is, and how to get setup for the rest of the course.

Chapter 2: Programming. The basic principles of computer programming: writing and running code, evaluating results, and compiling vs. executing.

Chapter 3: Debugging. The common results of running program code, and how to use those results to inform revision of your code.

Chapter 4: Procedural Programming. The fundamental approach to program code: writing sequences of lines of code that run in order to accomplish an objective.

Chapter 5: Variables. Creating and modifying variables, tracing how their values may change as a program runs, and understanding the role of data types.

Chapter 6: Logical Operators. Working with relational (greater than, less than, equal to) and logical (and, or, not) operators to make decisions in code.

Chapter 7: Mathematical Operators. Adding addition, subtraction, multiplication, division, modulus, and exponents to your code, and seeing how they work with unexpected data types.

Taught by

David Joyner


4.8 rating, based on 237 Class Central reviews

Start your review of Computing in Python I: Fundamentals and Procedural Programming

  • Wim Leys completed this course, spending 35 hours a week on it and found the course difficulty to be easy.

    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 course...
  • It's very good for beginners in programming. Goes into a lot of detail for even the most basic things.

    Some questions may seem repetitive or lengthy. It will be hugely boring for someone who knows basic programming but is looking to get a certificate since this part I is very easy.
  • Anonymous
    I had lots of questions or there were errors that occurred while I was going through the lessons and during the practice tests. But there is no support at all. No way to ask questions and actually get a response. The discussion board posting was completely...
  • Anonymous
    This was a very strong intro to Python course and I highly recommend it if you are new to programming or just want to brush up on your fundamentals. I am a part of the latter group and while at first I thought I was going to already know everything in this course, I've definitely come away with a deeper understanding of mathematical and logical operators. Thanks for the great course!
  • Profile image for Denver Vannus
    Denver Vannus
    This course is great! The mixture of lessons with questions and coding problems throughout the course really helps with understanding the concepts. I would highly recommend this course!
  • Anonymous
    I agree with many others that, overall, the course does a wonderful job of outlining the theory of programming from the bottom up in a concise, clear and detailed way, which absolutely suits my learning style. However, where I quickly became frustrated...
  • Profile image for Simão Nóbrega
    Simão Nóbrega
    Given Prof. David Joyner’s effort to develop novel methodologies for online learning, it didn't come as a surprise the high quality of this introductory course. If you have no background in computer science and would like a smooth start, I highly recommend...
  • Anonymous

    Anonymous completed this course.

    Outstanding introduction to Python. About 6 or 7 years ago I completed the MIT Intro to Computing using Python, but in the intervening years my skill set has gotten quite rusty and Python 3 has displaced Python 2, so I'm audited this course as a refresher...
  • Octavian Datcu completed this course.

    Some of the problems at the end of the course are challenging; I didn't manage to solve them without control structures, although I think the teacher created them not to require such complications.

    I'm quite new to programming, I don't know much, so maybe that's why I found some of the problems a little challenging. But they were fun :)

    All in all, the course is very well structured, the main takeaways were very clear. Maybe some more challenging examples inside the course itself would be a helpful addition; that would be useful for those who want to tackle the more challenging problems at the end of the course.
  • Anonymous

    Anonymous completed this course.

    My goal with this course was to gain some basic programming skills in Python. This course has an academic bottom-up approach, lots of theory. I used external resources such as Head First Python, Learn Python the Hard Way, and Crash Course in Python,...
  • Anonymous
    I took this course as a school student as a way to educate myself further and to start developing experience and knowledge on the field of computing and programming. And I must admit that the class did a truly great job at explaining more then the basic...
  • Profile image for Mart Andrew Maravillas
    Mart Andrew Maravillas
    This is truly a course that is beyond coding. It makes me think that Python is more than just a tool. It is also a science. I appreciate it more than just a computer language. I like how the content of this course is presented. Yes, they are very detailed...
  • Dmitry
    Dmitry Ki

    This is the start off course and it is good for this purpose. Videos are not very good anyway, sometime too short and do not provide well explanation.
    Where I became frustrated was in some of the practice problems and test problems towards the end of the course, the user is asked to solve problems that were way beyond the level of difficulty taught in the course. Explanation was sometime vague especially if your first language is not English.

    You learn the concepts and start applying them to situations. Something is not working in your code correctly, but there is no support and if you are stuck on a problem, you have to search Google and this is often unhelpful at best.
  • Anonymous

    Anonymous completed this course.

    To people like me with absolutely no experience in programming/ computer science etc, this course is amazing. Clear, concise and useful analogies are made throughout the course, and these are lifesavers for us beginners. Yes there's a lot of theory...
  • Anonymous
    This was my first course in any coding language ever. From this course I have propelled myself to understanding python basics in a way that I couldn't do before. The way that the lessons are structured gives you a very in depth understanding of how the...
  • Anonymous
    I’ve been working as a data scientist for some time now, and have been in the career path for more than 20 years, but with a non-technical degree. The only programming language I’ve used with any degree of regularity prior to this course is VBA, and that was entirely self-taught. Had I known computing could be so effectively taught in this forum, I’d have pursued certificate granting courses of this nature much earlier. I’ve already purchased the next 3 courses in this series, and look forward to continuing my education with Georgia Tech’s courseware via edX.
  • Anonymous
    Really good course. Unlike other beginner courses this one really emphasized the fundamentals. Pacing was good throughout, never felt like the course "jumped" multiple levels in complexity. Really appreciated the focus on doing things the hard way to gain an understanding of the concepts rather than just moving to control structures, for instance. Would definitely recommend for a beginner programming course.
  • Anonymous
    I'm just getting started with coding and had tried several other online classes prior to completing "Computing in Python I". This course was much better than any I had tried to work through previously and it's the first online course I've worked through to completion. It's structured in a way that is easy to stop and pick back up at your convenience. The format of the lessons and practice problems reinforces concepts as you go so you'll spend less time reviewing and more time moving forward through the class lessons.
  • Michael K Herschman

    Michael K Herschman completed this course, spending 5 hours a week on it and found the course difficulty to be easy.

    An awesome crash course. I knew some of other programming languages so there is a little overlap. Learning quite a lot about Python. The final exam was tough, some parts had me going back again and again to the code. I liked it.

    Much of it gives you extra chances to answer questions so that makes things easier. Emerge yourself and you'll learn it is a good class.
  • Anonymous
    The course material and problem sets are fantastic. They take simple concepts and create challenging questions to really ensure you have a deep understanding of the core foundations of computing. It is an excellent introduction to computing and Python programming. If you are looking for an introductory course that will still provide a challenge and is not just video after video of concepts, this is the place to go!

Never Stop Learning.

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