Programming and Application Foundations (Coursera)

Offered by Illinois Tech,
Programming and Application Foundations (Coursera)

This course introduces the students to the creation and deployment of modern, standards-compliant web pages written in HTML, CSS, and JavaScript in the context of the client-server architecture of the web. The course also covers the fundamentals of programming in a modern programming language, basic data modeling, database design, implementation, and administration of single-user and shared multi-user database applications using a contemporary relational database management system.

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

The course aims to provide the students with an end-to-end understanding of web application development, from front-end to back-end and deployment.
At the end of this course, students will be able to:
• Create and style web pages using HTML and CSS.
• Add interactivity and functionality to web pages using JavaScript.
• Use web development tools and frameworks to simplify and enhance web development.
• Describe the client-server model and the HTTP protocol.
• Use a modern programming language to write scripts and programs.
• Apply basic programming concepts such as variables, data types, operators, expressions, control
structures, functions, and objects.
• Use data structures and algorithms to solve problems and manipulate data.
• Design, implement, and query relational databases using SQL.
• Connect web pages to databases using server-side scripting.
• Deploy web applications to a web server and a cloud platform.

What you'll learn
How to develop an end-to-end web application using database and deploy to cloud managing source control

Syllabus

Module 1: Introduction to Web Development and HTML/CSS Basics
Welcome to Programming and Application Foundations! In Module 1, we will discuss the fundamentals of web application development and focus on front-end development of standard compliant web pages using HTML and CSS. The first lesson discusses the basic ingredient of a web application. We learn about HTML in the second lesson and learn about styling the html pages with CSS.

Module 2: JavaScript Basics
In this module we will introduce JavaScript which is a powerful programming language that is widely used for web development. It is a lightweight and interpreted language that can be used to create interactive and dynamic web pages. The module is broken down into three sections to introduce the basic concepts of JavaScript, how it is used to manipulate the document object model and using JavaScript to handle events which that makes a web page interactive.

Module 3: Web Development Tools and Frameworks
This module is designed to introduce various tools and frameworks that are commonly used in web development. This includes discussion of Integrated Development Environments (IDEs), frameworks, libraries, and popular web frameworks like React and Angular.

Module 4: Client-Server Model and HTTP
A web application involves the client (Browser) and a server that serves pages to the client to provide an interactive experience. In this module we will discuss the client- server architecture, the communication protocol used between the client and the server to deliver dynamic content and the request / response cycle that initiates the conversation from the client (Request) and the response sent by the Server along with the metadata.

Module 5: Programming Fundamentals
Developing a web application requires writing programs on the server side. In this module we will discuss concepts like data types, variable, programming languages, control structures and flow like For, While etc. You will learn about declaring and manipulating data using programming languages.

Module 6: Data Structures and Algorithms, Relational Database Concepts, SQL, and Database Management
To develop interactive applications, you need to store data, access it, modify it and use it. In this module, we will focus on the fundamentals of databases, tables, columns, relationships, constraints and data modeling. You will learn about Data Definition Language, Data Manipulation Language, Data Query Language and Data Control Language. We will also explore NoSQL as an alternative to traditional relation database management systems and the use cases for them.

Module 7: Server-Side Scripting
To deliver interactive and dynamic web applications, we need to access the data, apply business logic and product content to construct the web pages. In this module we will discuss how to access data from database, convert the data into meaningful information for the web pages to consume. This process of server-side programming using frameworks like React, Angular, Vue etc. are discussed in this module.

Module 8: Web Application Project Development and Deployment
Web application is a collection of processes starting from gathering user requirements, developing prototypes, designing the application, developing, testing, deploying, monitoring and maintaining them. In this module we will discuss tools and technologies that will help us in each phase of the process. Use of mockup tools, source control, frameworks, IDEs and CI / CD tools are discussed in this module.

Summative Course Assessment
This module contains the summative course assessment that has been designed to evaluate your understanding of the course material and assess your ability to apply the knowledge you have acquired throughout the course. You will have a hands-on exercise to design, build, and deploy a basic web application with data interactivity.

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

Related Courses

Fundamental Skills in Bioinformatics (Coursera) Coursera
King Abdullah University of Science and Technology (KAUST)

Fundamental Skills in Bioinformatics (Coursera)

The course provides a broad and mainly practical overview of fundamental skills for bioinformatics (and, in general, data analysis). The aim is to support the simultaneous development of quantitative and programming skills for biological and biomedical students with little or no background in programming or quantitative analysis.

Nov 16th 2026
4 Weeks
Data Processing Using Python (Coursera) Coursera
Nanjing University

Data Processing Using Python (Coursera)

This course is mainly for non-computer majors. It starts with the basic syntax of Python, to how to acquire data in Python locally and from network, to how to present data, then to how to conduct basic and advanced statistic analysis and visualization of data, and finally to how to design a simple GUI to present and process data, advancing level by level.

Nov 23rd 2026
5-12 Weeks
C++程序设计 (Coursera) Coursera
Peking University

C++程序设计 (Coursera)

讲授C++语言中和面向对象有关的概念和语法,如类和对象、运算符重载、继承和多态、类模板和算法模板、标准模板库等。目标是使得学生能够用C++语言,以面向对象的方法编写可维护性、可扩充性好的,较大规模的程序,初步领会面向对象程序设计方法的优势所在。

Nov 16th 2026
5-12 Weeks
VLSI CAD Part II: Layout (Coursera) Coursera
University of Illinois at Urbana-Champaign

VLSI CAD Part II: Layout (Coursera)

A modern VLSI chip is a remarkably complex beast: billions of transistors, millions of logic gates deployed for computation and control, big blocks of memory, embedded blocks of pre-designed functions designed by third parties (called “intellectual property” or IP blocks). How do people manage to design these complicated chips? Answer: a sequence of computer aided design (CAD) tools takes an abstract description of the chip, and refines it step-wise to a final design.

Nov 16th 2026
5-12 Weeks
Serverless Data Processing with Dataflow: Develop Pipelines (Coursera) Coursera
Google Cloud

Serverless Data Processing with Dataflow: Develop Pipelines (Coursera)

In this second installment of the Dataflow course series, we are going to be diving deeper on developing pipelines using the Beam SDK. We start with a review of Apache Beam concepts. Next, we discuss processing streaming data using windows, watermarks and triggers. We then cover options for sources and sinks in your pipelines, schemas to express your structured data, and how to do stateful transformations using State and Timer APIs.

Nov 16th 2026
3 Weeks
Relational Database Implementation and Applications (Coursera) Coursera
Illinois Tech

Relational Database Implementation and Applications (Coursera)

In today's data-driven world, the ability to work with relational databases is an essential skill for professionals in various fields. This course is designed to equip you with the knowledge and practical skills needed to become proficient in database management and application development. Whether you are pursuing a career as a database administrator, software developer, or data analyst, this course provides you with a strong foundation to excel in your chosen field.

Nov 16th 2026
5-12 Weeks
Problem Solving, Python Programming, and Video Games (Coursera) Coursera
University of Alberta

Problem Solving, Python Programming, and Video Games (Coursera)

This course is an introduction to computer science and programming in Python. Important computer science concepts such as problem solving (computational thinking), problem decomposition, algorithms, abstraction, and software quality are emphasized throughout. The Python programming language and video games are used to demonstrate computer science concepts in a concrete and fun manner. However, a learner can take the knowledge and skills from this course and apply them to non-game problems, other programming languages, and other computer science courses.

Nov 16th 2026
5-12 Weeks
Preparing for the Google Cloud Professional Cloud Architect Exam (Coursera) Coursera
Google Cloud

Preparing for the Google Cloud Professional Cloud Architect Exam (Coursera)

From the course: "The best way to prepare for the exam is to be competent in the skills required of the job." This course uses a top-down approach to recognize knowledge and skills already known, and to surface information and skill areas for additional preparation. You can use this course to help create your own custom preparation plan. It helps you distinguish what you know from what you don't know. And it helps you develop and practice skills required of practitioners who perform this job.

Nov 16th 2026
1 Week
Development of Real-Time Systems (Coursera) Coursera
EIT Digital

Development of Real-Time Systems (Coursera)

This course is intended for the Master's student and computer engineer who likes practical programming and problem solving! After completing this course, you will have the knowledge to plan and set-up a real-time system both on paper and in practice. The course centers around the problem of achieving timing correctness in embedded systems, which means to guarantee that the system reacts within the real-time requirements.

Nov 16th 2026
5-12 Weeks