Computational Thinking with Javascript 1: Draw & Animate (Coursera)

Offered by University of Glasgow,
Computational Thinking with Javascript 1: Draw & Animate (Coursera)

This is the first course in a sequence of four courses that develops essential 21st century computational thinking (CT) skills using the popular JavaScript language as a vehicle. At the end of this first course you will: know a framework for CT to help you learn about it and work with others; be developing your CT skills so that you can more easily work with digital technology of all kinds; be able to read and write programs in JavaScript that involve drawing and animation, using a specialised library; and post your creations on the web so that others can appreciate your skills.

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

This course is suitable for: complete beginners; those who have taken an introductory course in any programming language and want to learn more deeply about the thinking and learning skills they are starting to develop; those who wish to learn Javascript in a supportive environment.
The follow-on courses explore the manipulation and analysis of data, such an important aspect of our lives now, again in a highly supportive environment, and then we move the context to mainstream web--based platforms so that you can use these skills more widely.
Course 1 of 4 in the Computational Thinking with JavaScript Specialization.

What You Will Learn
A key problem solving framework to use new technologies in any problem domain.
Experience using the framework with Javascript and animated graphics.

Syllabus

WEEK 1
Introductions - and starting out with CT using graphics in JavaScript
This module introduces the instructors for this course and for the longer Computational Thinking with Javascript specialisation. A framework for understanding computational thinking is introduced and first steps are taken with Javascript, applying it in the context of simple graphics - drawing and animation.

WEEK 2
Solving problems / programming a task
In this module, you take the foundations you have learned about computational thinking, some early programming constructs, and your program reading skills, and you start to learn about writing programs for tasks.

WEEK 3
More complex drawings, and how to handle their descriptions
As our drawings become more complex, their descriptions will quickly become unwieldy. To counter this, we introduce programming language constructs that allow highly complex drawings to be described in just a few lines. They're a bit harder to understand at first, but in the long term, they're essential.

WEEK 4
Animations - and consolidating what we've learned so far
Drawing still pictures is one thing - but the process-oriented element of programming lends itself to animation - an activity taking place over time. In this module, we'll make use of all we've learned so far to create animations. Functions will be used in a new and important way - as a so-called "callback" - which form the foundation of interactive programming as we'll see in Course 3 of the specialisation.

  • A key problem solving framework to use new technologies in any problem domain.
  • Experience using the framework with Javascript and animated graphics.
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Code Yourself! An Introduction to Programming (Coursera) Coursera
University of Edinburgh,Universidad ORT Uruguay

Code Yourself! An Introduction to Programming (Coursera)

Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.

Aug 3rd 2026
5-12 Weeks
The Unix Workbench (Coursera) Coursera
Johns Hopkins University

The Unix Workbench (Coursera)

Unix forms a foundation that is often very helpful for accomplishing other goals you might have for you and your computer, whether that goal is running a business, writing a book, curing disease, or creating the next great app. The means to these goals are sometimes carried out by writing software. Software can’t be mined out of the ground, nor can software seeds be planted in spring to harvest by autumn. Software isn’t produced in factories on an assembly line. Software is a hand-made, often bespoke good. If a software developer is an artisan, then Unix is their workbench.

Aug 3rd 2026
4 Weeks
Introduction à la programmation orientée objet (en Java) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Introduction à la programmation orientée objet (en Java) (Coursera)

Ce cours introduit la programmation orientée objet (encapsulation, abstration, héritage, polymorphisme) en l'illustrant en langage Java. Il présuppose connues les bases de la programmation (variables, types, boucles, fonctions, ...). Il est conçu comme la suite du cours « Initiation à la programmation (en Java) ».

Aug 16th 2026
5-12 Weeks
Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera) Coursera
Pontificia Universidad Católica de Chile

Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera)

Decía Steve Jobs que “todo el mundo debería aprender a programar un ordenador porque esto te ayuda a pensar”. Hoy en día la programación es una herramienta fundamental para el desarrollo de la tecnología moderna. Este curso te introduce en el mundo de la programación en el lenguaje Python.

Aug 10th 2026
5-12 Weeks
Foundations of Data Science: K-Means Clustering in Python (Coursera) Coursera
University of London,Goldsmiths, University of London

Foundations of Data Science: K-Means Clustering in Python (Coursera)

This MOOC, designed by an academic team from Goldsmiths, University of London, will quickly introduce you to the core concepts of Data Science to prepare you for intermediate and advanced Data Science courses. It focuses on the basic mathematics, statistics and programming skills that are necessary for typical data analysis tasks.

Aug 10th 2026
5-12 Weeks
Learn Firebase (Coursera) Coursera
Scrimba

Learn Firebase (Coursera)

In this comprehensive course, aspiring front-end developers will discover the transformative capabilities of Firebase. By leveraging Firebase's cloud architecture, you can seamlessly incorporate a wide array of features into your applications using HTML, CSS, and JavaScript. This newfound flexibility is underpinned by Firebase's cloud functions, which empower you with dynamic functionalities.

Aug 10th 2026
3 Weeks
Principles of Computing (Part 2) (Coursera) Coursera
Rice University

Principles of Computing (Part 2) (Coursera)

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class.

Aug 10th 2026
4 Weeks
Build LLM Apps with LangChain.js (Coursera) Coursera
DeepLearning.AI

Build LLM Apps with LangChain.js (Coursera)

JavaScript is the world’s most popular programming language, and now developers can program in JavaScript to build powerful LLM apps. This course will show webdevs how to expand their toolkits with LangChain.js, a popular JavaScript framework for building with LLMs, and will cover useful concepts for creating powerful, context-aware applications.

Aug 10th 2026
1 Week
Programming Languages, Part A (Coursera) Coursera
University of Washington

Programming Languages, Part A (Coursera)

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.

Aug 10th 2026
5-12 Weeks