04 — Courses & Programs

Thinking and Creating with Code

300 CHF per month 250 hours
  • Self-paced, online learning
  • Launchpad level
  • Personalized support

Enrollment opens this Summer

How do we turn our ideas into real world applications? In order to make computers do what we want them to do, we need to be able to communicate with them - that is, we need to understand code. The goal of this course is to enable you to understand how to turn concepts in human language into computer language.

In Thinking and Creating with Code, we’ll walk you through how to think about problems in the way that computers do, and how to implement ideas in the popular programming languages Python and JavaScript, which you’ll learn along the way.

The course is taught at what we're calling the "launchpad" level. This means that, first, it is designed for learners who have some background in HTML and CSS and how to work with data and databases. These topics are covered in our beginner-level 50 Things You Need to Know About the Internet and 50 Things You Need to Know About Data courses if you would like to refresh your knowledge before you begin.

Second, this course is also designed to ensure that you have all the pre-requisite knowledge you would need to "launch" yourself into any of our intermediate level programs: Applied Data Science - Machine Learning, Full Stack Web Development or Applied Data Science - Communication & Visualization. The curiculum of the Thinking and Creating with Code course has been built with the pre-requisites for those programs in mind.

These course details are subject to change; please refer to the program outline at the time of registration.

Course Details

  • Using “boxes" to store different kinds of information: variables and data types
  • Grammar rules for speaking to computers: programming syntax
  • Putting the pieces together: functions, loops and conditionals
  • Working with “boxes” that store lots of information: arrays and dictionaries
  • Recycling and re-using code: libraries and frameworks
  • Modeling the real world: objects and classes


This course is taught at the launchpad level. You should have the following tools, skills and abilities prior to registering for this course:

  • English at B2 level
  • A computer with a minimum internet connection of 2Mbps download / 512kbps upload, enabling you to stream videos with sound and to effectively participate in video chats.
  • Basic understanding of HTML and CSS
  • Basic understanding of databases and data structures
  • Working experience with git
  • Previous experience with text editors such as Atom or SublimeText
  • Familiarity with computer environments (what is a program, file systems, file formats, command line)