In this computer science course, you will learn about foundational computing principles, such as how to write and read computer code and how to run and debug code.
You will learn about programming concepts in Python and how they demonstrate computing principles and domain applications that use programming concepts and computing principles in real applications.
The course will also cover:
advanced topics in algorithms and object-oriented programming
This course builds on a custom textbook written for the class and online course delivery and provides ample interaction and formative evaluation. The course teaches both the theory and implementation of core computing concepts in a highly interactive, multi-modal manner.
Unit 1: Computing
In this unit, we'll cover the basics of computing: what it means to write computer code, how to read computer code, and what it means to run and debug code.
Unit 2: Procedural Programming
In this unit, we'll cover the basic paradigm of programming, procedural programming. In procedural programming, series of commands are executed in order. Here, we'll discuss variables, logical operators, and mathematical operators.
Unit 3: Control Structures
In this unit, we'll cover control structures, which are lines of code that control when other lines of code run. We'll cover conditionals, loops, functions, and error handling.
Unit 4: Data Structures
In this unit, we'll cover how data is structure to be operated upon by a computer. Specifically, we'll focus on structures that bring together multiple different pieces of data, like strings, lists, dictionaries, and file input and output.
Unit 5: Advanced Topics
In this unit, we'll preview the next topics in computing: object-oriented programming and computer algorithms.
This course is an excellent gentle introduction to computing for absolute beginners. All important concepts are explained clearly and succinctly, with easy-to-understand examples from everyday life. The lectures and smart book chapters are accompanied...
This course is an excellent gentle introduction to computing for absolute beginners. All important concepts are explained clearly and succinctly, with easy-to-understand examples from everyday life. The lectures and smart book chapters are accompanied by plenty of exercises and problem sets to check understanding and to reinforce important concepts and procedures. The pace is moderate and easy to follow. Exercises and problems only require the knowledge provided in the lectures and/or the smart book (This is in contrast to some other introductory courses where there are wide gaps between the materials in the lectures/books and the knowledge required to do the exercises). I hope that this course will be followed by more advance courses with the same philosophy and approach to teaching.
Spalthoff Daniel completed this course, spending 5 hours a week on it and found the course difficulty to be medium.
This course is really great, especially if you are new to coding or to Python. It advances very slowly, with a lot of practice in Python, and it's really fun! I'm actually sad it's over, and I'm looking for the next Python course.
Neville A. Cross
Neville A. Cross is taking this course right now, spending 6 hours a week on it and found the course difficulty to be easy.
I highly recommend this series from David Joyner and Georgia Tech. It is well explained why you program the way you do. It builds complexity as you move along the courses. If you want to learn to program using Python this is the best course. If you already...
I highly recommend this series from David Joyner and Georgia Tech. It is well explained why you program the way you do. It builds complexity as you move along the courses. If you want to learn to program using Python this is the best course. If you already know how to program in another language, probably it will be a bit slow. For me this was a complete success after failing several times trying to lean Python. Avoid the "hard way" style if you do not know how to program in another language. The highlight of this series was when I got an error from the autograder tool and told me to contact the instructor. I got a reply within minutes from David Joyner, with a hint of what I was doing wrong. So I was able to reflect and came with the solution on my own. I really appreciated that.
This course enhanced my knowledge lot more than i can think of regarding programming language. Python being the simpler and lot better than other languages are one of my favorite things now.