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

An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Nov 2nd 2026
5-12 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Nov 2nd 2026
4 Weeks
Programming Mobile Applications for Android Handheld Systems: Part 1 (Coursera) Coursera
University of Maryland, College Park

Programming Mobile Applications for Android Handheld Systems: Part 1 (Coursera)

This course introduces you to the design and implementation of Android applications for mobile devices. You will develop an app from scratch, assuming a basic knowledge of Java, and learn how to set up Android Studio, work with various Activities and create simple user interfaces to make your apps run smoothly.

Oct 26th 2026
5-12 Weeks
Pixel Art for Video Games (Coursera) Coursera
Michigan State University

Pixel Art for Video Games (Coursera)

This course is aimed to give you the tools and knowledge you need to start creating simple art for video games made in the Unity game engine. Through the aesthetic of pixel art we will explore artistic principals like shape language, color theory, and composition as well as show you a step by step workflow for creating assets that you can use to make your own games.

Nov 2nd 2026
5-12 Weeks
Estruturas de dados Python (Coursera) Coursera
University of Michigan

Estruturas de dados Python (Coursera)

Este curso apresentará as estruturas de dados centrais da linguagem de programação Python. Vamos superar os fundamentos da programação de procedimentos e explorar como podemos usar as estruturas de dados integradas do Python, como listas, dicionários e tuplas, para realizar análises de dados cada vez mais complexas. Este curso cobrirá os capítulos 6 a 10 do livro “Python para Todos”. Este curso aborda o Python 3.

Nov 2nd 2026
5-12 Weeks
VFX with Adobe After Effects from Novice to Expert (Coursera) Coursera
EDUCBA

VFX with Adobe After Effects from Novice to Expert (Coursera)

Embark on a transformative journey into Adobe After Effects, gaining fundamental and advanced skills. Explore the intricacies of the interface, create compositions and master timeline dynamics. Dive into hands-on experiences, shaping proficiency in animation, advanced text techniques, and masking for enhanced visual effects. Discover the profound impact of light, colors, and perspective, refining chroma keying, compositing, and motion tracking skills. Immerse yourself in 3D integration, lighting, and tracking for dynamic storytelling.

Nov 2nd 2026
5-12 Weeks
Programming Fundamentals (Coursera) Coursera
Duke University

Programming Fundamentals (Coursera)

Programming is an increasingly important skill, whether you aspire to a career in software development, or in other fields. This course is the first in the specialization Introduction to Programming in C, but its lessons extend to any language you might want to learn. This is because programming is fundamentally about figuring out how to solve a class of problems and writing the algorithm, a clear set of steps to solve any problem in its class.

Nov 2nd 2026
4 Weeks
Programming Reactive Systems (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Programming Reactive Systems (Scala 2 version) (Coursera)

Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Nov 2nd 2026
5-12 Weeks
Parallel programming (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Parallel programming (Scala 2 version) (Coursera)

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm. We'll start the nuts and bolts how to effectively parallelize familiar collections operations, and we'll build up to parallel collections, a production-ready data parallel collections library available in the Scala standard library.

Nov 2nd 2026
4 Weeks