edX: Liberating Programming: System Development for Everyone

 with  David Harel and Dr. Michal Gordon

The world around us is immersed in technology. This technology is ultimately driven by programming and is governed by its laws. As a result, high-level knowledge of means for programming ‒ past, present, and most importantly, future ‒ has become of crucial interest to many.

This course is designed to teach almost anyone about the essence of programming. You'll learn about diverse types of existing programming paradigms, about how programming has evolved over the years, and, significantly, about what lies ahead in the future.

In the main part of the course, we will present some visual, diagrammatic programming languages for reactive systems, as well as some of the more recent, playful, and intuitive approaches to programming.

We aim to help people interested in technology, as well as budding computer science students, to better understand the various approaches to programming that increasingly shape our lives.


  1. Introduction to programming. The development of programming languages. Reactive systems.
  2. Visual programming languages and visual formalisms. The challenges of visual languages, and an overview of the visual languages in the course.
  3. Introduction to the executable programming language of Statecharts. The concepts of hierarchy and orthogonality.
  4. Advanced statechart features. The semantics of Statecharts.
  5. The paradigm of behavioral programming. The executable language of live sequence charts (LSCs). Event unification.
  6. Advanced concepts in LSCs: choice, forbidden scenarios and more.
  7. Controlled natural language and interfaces to programming. Show and Tell, Drag and Drop.
  8. Summary and the future of programming.
0 Student
Cost Free Online Course
Provider edX
Language English
Hours 2-3 hours a week
Calendar 8 weeks long

Disclosure: To support our site, Class Central may be compensated by some course providers.

+ Add to My Courses
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

Reviews for edX's Liberating Programming: System Development for Everyone
Based on 0 reviews

  • 5 star 0%
  • 4 star 0%
  • 3 star 0%
  • 2 star 0%
  • 1 star 0%

Did you take this course? Share your experience with other students.

Write a review

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free