Introduction to Python Programming
Offered By: Georgia Institute of Technology via edX
Course Description
Overview
“Introduction to Computing in Python” is a series of courses built from Georgia Tech’s online for-credit version of CS1301: Introduction to Computing. The series is designed to take you from no computer science background whatsoever to proficiency in the basics of computing and programming, specifically in the popular programming language Python. Rated as one of the most in-demand and beginner-friendly programming languages, Python training will give you a solid foundation not only for Python code but for further studies in computer science.
The syllabus and course material has been used at Georgia Tech for its for-credit CS1301 class for over a year. Over 400 students on campus have completed this version of the course, and our analysis shows that they exit the course with the same learning outcomes as students taking the traditional on-campus version. This Professional Certificate uses the same instructional material and assessments as learning Python on campus, giving you a Georgia Tech-caliber introduction into the field of computing at your own pace.
This Professional Certification course follows a unique design. Students will cover the general, fundamental principles of computer science—which are applicable to any programming language like javascript or R — and then rapidly transition to those same programming concepts in Python. Short videos (2-3 minutes each) are rapidly interleaved with live programming problems, real-world examples, and multiple-choice questions to give you constant feedback on your progress and understanding.
Syllabus
Course 1: Computing in Python I: Fundamentals and Procedural Programming
Learn the fundamentals of computing in Python, including variables, operators, and writing and debugging your own programs.
Course 2: Computing in Python II: Control Structures
Learn about control structures, one of the most powerful parts of programming. This course covers conditionals, loops, functions, and error handling, specifically in Python but with broader applicability to other languages as well.
Course 3: Computing in Python III: Data Structures
Learn more complex ways of handling data, including files, lists, and dictionaries for building complex programs.
Course 4: Computing in Python IV: Objects & Algorithms
Learn about recursion, search and sort algorithms, and object-oriented programming in Python.
Courses
-
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.
-
Building on your prior knowledge of variables and operators, this course gets into the meat of programming. Organized into five chapters, this course starts by covering the fundamentals of what control structures are and what they do, then moves on to four common control structures in Python. Conditionals let you modify what your program does based on the values of incoming variables. Loops let you repeat tasks for multiple values or while certain conditions hold true. Functions let you encapsulate complex reasoning into reusable chunks of code. Error handling lets you intelligently recover from anticipated and unanticipated glitches.
By the end of this course, you'll be able to write complex programs in Python that perform useful reasoning. For example, you could write a program that calculates your weight on other planets, calculates the standard deviation of a series of numbers, or checks for the validity of an incoming password.
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.
-
Build on your existing knowledge of conditionals, loops, and functions by studying more about complex Python data structures, including strings, lists, dictionaries, and file input and output. Organized into five chapters, this course starts by covering the basics of data structures, then moves on to these four common data structures in Python:
- Strings let you perform far more complex reasoning with text.
- Lists let you process long lists of data, and even lists of lists of data for more complex reasoning.
- Dictionaries let you more clearly code for complex types of data, and even simulate some basic elements of object-oriented programming.
- File input and output brings your programs to life, allowing you to persist data across executions of the same program.
By the end of this course, you'll be able to write even more complex programs in Python that process and persist complex data structures. For example, you'll be able to write an ongoing gradebook application that tracks and updates your average over time, a program to calculate the net force based on several force magnitudes and directions, or a program that can turn a string like this into a StRiNg LiKe tHiS.
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.
-
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.
Taught by
David Joyner
Tags
Related Courses
Computer App in EngineeringCabrillo College via California Community Colleges System Programming Fundamentals: C++
City College of San Francisco via California Community Colleges System Programming Paradigm Concepts
DataCamp Introduction to Computing using Python
Georgia Institute of Technology via edX Procedural Modelling
National University of Singapore via edX