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

Estructuras de datos de Python (Coursera) Coursera
University of Michigan

Estructuras de datos de Python (Coursera)

Este curso presentará las estructuras de datos básicas del lenguaje de programación Python. Veremos los conceptos básicos de la programación de procedimientos y exploraremos cómo podemos usar las estructuras de datos integrados de Python, como listas, diccionarios y tuplas, para realizar análisis de datos cada vez más complejos. Este curso abarcará los capítulos 6 a 10 del libro de texto “Python para todos”. Este curso cubre Python 3.

Oct 12th 2026
5-12 Weeks
Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript (Coursera) Coursera
University of Michigan

Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript (Coursera)

Why should a designer learn to code? As our world is increasingly impacted by the use of algorithms, designers must learn how to use and create design computing programs. Designers must go beyond the narrowly focused use of computers in the automation of simple drafting/modeling tasks and instead explore the extraordinary potential digitalization holds for design culture/practice.

Oct 12th 2026
5-12 Weeks
Kotlin for Java Developers (Coursera) Coursera
JetBrains

Kotlin for Java Developers (Coursera)

The Kotlin programming language is a modern language that gives you more power for your everyday tasks. Kotlin is concise, safe, pragmatic, and focused on interoperability with Java code. It can be used almost everywhere Java is used today: for server-side development, Android apps, and much more. This course aims to share with you the power and the beauty of Kotlin.

Oct 12th 2026
5-12 Weeks
Accounting Data Analytics with Python (Coursera) Coursera
University of Illinois at Urbana-Champaign

Accounting Data Analytics with Python (Coursera)

This course focuses on developing Python skills for assembling business data. It will cover some of the same material from Introduction to Accounting Data Analytics and Visualization, but in a more general purpose programming environment (Jupyter Notebook for Python), rather than in Excel and the Visual Basic Editor. These concepts are taught within the context of one or more accounting data domains (e.g., financial statement data from EDGAR, stock data, loan data, point-of-sale data).

Oct 12th 2026
5-12 Weeks
Learn HTML and CSS (Coursera) Coursera
Scrimba

Learn HTML and CSS (Coursera)

This course is perfect if you want to learn how to code websites from scratch. You will learn the basics of HTML and CSS through interactive challenges. Along the way, you will build multiple projects, like a Google.com clone, a Space Exploration page, and a fun birthday site filled with GIFs. While most of the challenges are done in Scrimba's interactive editor, you will also learn how to use professional tools like VS Code for code editing, GitHub for hosting your code, and Netlify for deploying your projects to the world wide web.

Oct 12th 2026
5-12 Weeks
Laboratório de Programação Orientada a Objetos - Parte 2 (Coursera) Coursera
Universidade de São Paulo, Brasil

Laboratório de Programação Orientada a Objetos - Parte 2 (Coursera)

Esta é a segunda parte do curso avançado de Programação Orientada a Objetos oferecido pelo Departamento de Ciência da Computação do IME-USP. O curso é voltado para profissionais ou estudantes interessados em Desenvolvimento de Software Avançado e que já dominam uma linguagem de programação e já conhecem os fundamentos básicos da orientação a objetos.

Oct 12th 2026
5-12 Weeks
Selenium WebDriver with Python (Coursera) Coursera
Whizlabs

Selenium WebDriver with Python (Coursera)

“Selenium WebDriver with Python” is a foundational course that aims to provide a comprehensive understanding of Selenium and its components. It also helps in understanding how Selenium WebDriver Operates. This course begins by demonstrating an environment setup for Selenium WebDriver with Python. A brief description of locating Web elements and web Interactions is provided in this course. This course covers an overview of testing frameworks with Selenium WebDriver. Some advanced topics such as Handling Popup, Alerts, Multiple Browser Tabs, Mouse and Keyboard interactions are also highlighted in this course.

Oct 12th 2026
3 Weeks
Persistent Memory Technology - Introduction and Deployment (Coursera) Coursera
EDUCBA

Persistent Memory Technology - Introduction and Deployment (Coursera)

Embark on a dynamic learning journey through this course. In the first module, explore the intricacies of Persistent Memory (PMEM), unraveling its fundamental concepts, characteristics, and operating system support. Transition seamlessly into the second module, mastering transactional concepts, optimizing hardware configurations, and discerning between volatile and persistent libraries. In the final module, dive into advanced programming with libpmemobj, overcoming C++ Standard limitations, and applying insights to real-world scenarios like building a phonebook.

Oct 12th 2026
3 Weeks
Understanding and Applying Text Embeddings (Coursera) Coursera
DeepLearning.AI

Understanding and Applying Text Embeddings (Coursera)

The Vertex AI Text-Embeddings API enhances the process of generating text embeddings. These text embeddings, which are numerical representations of text, play a pivotal role in many tasks involving the identification of similar items, like Google searches, online shopping recommendations, and personalized music suggestions.

Oct 12th 2026
1 Week