DiffuseJavaScript Logo Welcome

You are now visiting the Diffuse JavaScript MOOC.

About This MOOC

Javascript is now diffuse since it runs on both sides of HTTP. To program diffuse applications supporting a number of potentially cooperating clients and mashing up information from multiple servers require to master the Javascript programming language, events, listeners, promises, workers, websockets: the mere content of this course!

This course is not an initiation to programming. It will rapidly focus on advanced features of Javascript from closures and prototypes to ECMAscript 2015 new features such as promises and generators. Additionally, more than 50 mechanically graded exercises are proposed via the CodeGradX infrastructure.

Discover this MOOC

This MOOC is hosted on eduNEXT.


To take benefit of this course, you need

What you will learn

This is a self paced MOOC organized in four weeks

All four parts are accompanied by exercises automatically graded.

Instructor: Christian Queinnec

Christian Queinnec's face

I started coding in Fortran in 1972 (at that time, without any access to a computer), then I switched to Lisp and Scheme around 1975 and wrote articles and books on these dynamically typed programming languages as a researcher at INRIA and some other places.

I heard about the Web around 1994 and was sure that it was the next hot topic. My main contribution in that area was a paper, published in 2000, on Continuation and Web programming where continuations, an obscure semantical topic, become the clear explanation for many weird behaviors of the Web.

Since 2000, I have been teaching Web programming but still enjoy coding Web servers in PHP or Perl, designing Javascript API and following the evolution of Javascript. I am now flabbergasted by ECMAscript 2015 and I am eager to share my knowledge on that marvellous language.