Introduction to Programming (Coursera)

Offered by Ball State University,
Introduction to Programming (Coursera)

Designed for the not-yet-experienced programmer, this course will provide you with a structured foundation for developing complex programs in the fields of computer science or data science. If you are a self-taught programmer with scattered bits of understanding, or a complete novice, this is the course for you.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Here, you will gain a thorough understanding of how to write programs to solve problems, through structured, scaffolded, hands-on exercises with many examples and opportunities to practice. You will learn the foundational concepts of computer science by developing programs in the python programming language (one of the most commonly used languages).
We will also use many of the most common python packages -- why reinvent the wheel when you can use well-tested, flexible, pre-built solutions? While these packages can save significant time, it is also important to understand how they do their magic, and if your particular problem is the right fit to be solved by these potential tools. You will encounter the following python packages: numpy, scipy, matplotlib, pandas, seaborn, re (for regular expressions), textblob, nltk, and others.
In the process of learning how to program, we will explore different topics at the introductory level, including natural language processing and data analytics.
By the end of this course, you will be confident in your ability to solve a problem using the python programming language -- and how to verify that your solution is accurate.

Syllabus

Introduction to Programming and Python
Welcome to the course! In this module, we will explore what makes the python programming language so excellent to learn and begin to write our first python programs. We will learn about variables, how to use them, how a program makes decisions using if statements, and how to interact with the user through input() and print() functions.

Control Statements, Loops, and Program Development
In this module, we will learn how to make our programs more flexible, and able to solve more complex problems. We'll see how we can make more complex decisions using the if statement by including elif and else. We'll also see how we can have the program repeat actions using for and while, and be introduced to other useful functions such as range(), mean(), median(), and mode().

Functions, A Beginning
In this module, we will learn how to create our own custom functions, which allow us to reuse our code, divide programs into meaningful chunks, and also reduce the number of errors and bugs in our code. This content will be split over 2 modules, with the first few sections being covered in this first module, with the remainder being covered in the next module.

Functions, The Ongoing Story
In this module, we will learn review functions, and continue practicing creating our own functions. There are a few lecture segments that touch on a few finer points from this chapter, and then more live programming examples. At this point in the semester, we have enough "tools" that we can write a larger program! You should experiment in the Reflective Practice and see what you can accomplish! In the full version of this course, this module also includes the beginning of a larger, 2 week long, project. Therefore, the content in this Module is somewhat shorter than normal.

Conclusion

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

Related Courses

Algorithms, Part II (Coursera) Coursera
Princeton University

Algorithms, Part II (Coursera)

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

Aug 17th 2026
5-12 Weeks
Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera) Coursera
University of California, San Diego

Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera)

Once we have sequenced genomes in the previous course, we would like to compare them to determine how species have evolved and what makes them different. In the first half of the course, we will compare two short biological sequences, such as genes (i.e., short sequences of DNA) or proteins. We will encounter a powerful algorithmic tool called dynamic programming that will help us determine the number of mutations that have separated the two genes/proteins.

Aug 17th 2026
5-12 Weeks
Introduction to TCP/IP (Coursera) Coursera
Yonsei University

Introduction to TCP/IP (Coursera)

You use the Internet through your PC (Personal Computer), laptop, tablet, smartpad, and smartphone every day in everything you do. Through your own PC/laptop, you can easily learn everything about the Internet, and that is what this course is focused on. In this course ‘Introduction to TCP/IP,’ you will learn the operational functions of Internet technologies (which include IPv4, IPv6, TCP, UDP, addressing, routing, domain names, etc.) and your PC/laptop's security and gateway Internet setup and basic principles.

Aug 17th 2026
5-12 Weeks
Uso de bases de datos con Python (Coursera) Coursera
University of Michigan

Uso de bases de datos con Python (Coursera)

Este curso presentará a los estudiantes los conceptos básicos del lenguaje de consulta estructurado (Structured Query Language, SQL), así como el diseño básico de bases de datos para almacenar datos como parte de una iniciativa de varios pasos para recopilar, analizar y procesar datos. El curso utilizará SQLite3 como base de datos. También crearemos rastreadores web y procesos de visualización y recopilación de datos de varios pasos. Utilizaremos la biblioteca D3.js para realizar la visualización básica de datos.

Aug 17th 2026
5-12 Weeks
Gen AI for Code Generation for Python (Coursera) Coursera
Edureka

Gen AI for Code Generation for Python (Coursera)

Welcome to the 'Gen AI for Code Generation for Python' course, where you'll embark on a journey to explore and develop your skills in the art of code generation with Generative AI. Throughout this short course, you will delve into various techniques for generating Python code effortlessly, ranging from simple scripts to complete end-to-end projects.

Aug 17th 2026
1 Week