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

Overview

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.

Syllabus

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

Reviews

4.8 rating, based on 276 Class Central reviews

4.6 rating at edX based on 89 ratings

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

  • 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…
  • 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
    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 re…
  • Anonymous
    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 am a super beginner at coding. This made me want to pull my hair out at times, but like boolean logic puzzles, keeping at it paid off. I have no real coding support network to fall back on, but I figured things out eventually, occasionally searc…
  • 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…
  • Anonymous
    I just loved it! Amazing way to start oneself in the world of Python. All main concepts and python logic/language is brilliantly explained by David - makes it super easy to learn while keeping the "challenging" feeling along the way. The chapters…
  • Positive experience with this course—most importantly, I felt like I was actually learning. The structure of allowing you to try and fail is really conducive to learning. Also content builds gradually and is easy to follow.
  • Anonymous
    I took this course on the audited track so did not have access to the full practice problems nor final proctored test. I found the material very well explained, clear and easy to follow. I enjoyed the class very much and found it a very good intro into computing and python.
    My only points for improvement would be to have more code writing exercises to do as these were the most interesting and meant we were really practicing.
  • Neville A. Cross
    17
    This is a very easy way to learn how to program using Python. This is not a crash course for learning Python. This is a very good introduction to programming. I tried several times to learn Python and failed because many programmer like "the hard way", which may be good if you already know how to program. I highly recommend this series from David Joyner and Georgia Tech. It is well explained and have good exercises.
  • Anonymous
    I tried this course after trying another introduction to Python course first (microsoft). I found that this course gave me a far better UNDERSTANDING of what I was actually doing, instead of just replicating instructions. This makes the course a bit more slow paced, but in my opinion it's worth the effort. I will certaintly be following the next classes.

    As room for improvement - I thought the problems on a whole were a bit too easy. These are good to start with and improve your confidence. But over time I would have enjoyed bigger challenges. Coding challenges that you can really sit on and think about. I think that would have completed the learning experience for me!
  • Anonymous
    The instruction is very thorough. Instructor covers the basics from the very beginning and makes sure that you understand everything. Class is laid out so that if you follow this class, you’ll learn everything without getting stuck. I look forward to how he applies this guidance to the more advanced concepts of programming.
  • Anonymous
    Excellent introductory course. It starts with some very introductory and basic concepts in computing and programming, making it great for gaining fundamental knowledge as you get started. Beginner python concepts are explained well over video lessons and then reinforced over questions and coding exercises with some extra details around pitfalls to watch out for. I found the class to be overall helpful and enjoyable.
  • Profile image for Amio Galib Chowdhury
    Amio Galib Chowdhury
    10
    This is probably the most accessible introductory programming course for absolute beginners. At the same time, it's not too easy or watered-down like many other online courses. It covers the topics in great details, has lots of practice exercises an…
  • Profile image for Melissa Beals
    Melissa Beals
    I appreciate the approach after I became familiar with the site. I think I accidently took the final exam before I had actually reviewed all the content, lol. In any event, I am hoping to use these courses as pre-reqs to enroll in the Georgia Tech MSCS sometime in 2026. The approach is thorough and helpful for someone who hasn't been programming in years. Thank you.
  • Paul S. McAlduff
    If you are wondering if this class is worth the time, effort and money, I can tell you that It absolutely is. I began this class with very little experience with computer programming and none with Python. Professor David Joyner is an excellent teacher. His lectures were easy to follow but informative. I really learned a lot Taking this class. The class is well organized and its implementation in an online format is excellent. It blends, text, videos and actual problems to be solved in a fully online code editor. Both the class assignments are checked by a grading bot that gives you immediate feedback.

    Thank you, Professor Joyner
  • The “Fundamental and Procedural Programming” course is a remarkable learning experience. It provides a solid foundation for anyone interested in programming, whether you're a beginner or looking to expand your knowledge. Comprehensive content, excellent instructors, hands-on exercises, and a supportive community all contribute to an exceptional learning journey. I highly recommend this course to anyone who wants to take their first steps into the world of programming.
  • Anonymous
    I took this course on edX as someone almost completely new to programming languages. I've learn basic C++ and HTML around 8 years ago, but I've forgotten all of it. The progress of the course is very comfortable and is really helpful to set a good foundation for new programmers. The practices along the way also helps solidify concepts that they teach. I am looking forward to subsequent python courses! For someone who is working part-time, just an hour everyday is sufficient to complete this course in a few weeks. For people who can commit a couple days, I believe 4 days would be enough to cover the entire course.
  • 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…
  • Anonymous
    Impressed at the restraint - this course is committed to practicing fundamentals of variables and procedural flow. The exercises we accessible and I think anyone that completes the course will have had good exposure to basic concepts. I appreciate the course structured at the first of four parts, and that reasonable proficiency with the basics gets reinforced with this course such that you can truly move forward with less of a chance of being tripped up with these basics in while learning more complex concepts.

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.