to dada, or not to dada

Computer Lib

In 1974, during the advent of personal computers, Ted Nelson published a book called "Computer Lib", describing how computers will become popular and affect our lives. He makes it clear how important it is that people understand how computers work, not only be able to use them, but deeply understand how they work and what they are capable of.

Almost 50 years later we live in a world where computers are omnipresent and affect every aspect of our lives. Computers are in control of more than we would like to admit. More than ever we need to understand very deeply how computers work.

You can and must understand computers NOW

Courses and Workshops

In the spirit of "Computer Lib" I would like to organize workshops and courses in which we explore what computers do and understand how they work in order to feel more in control of our computerized lives.

This is a work-in-progress list of courses and workshops that I have or would be interested in giving. I am very much open to suggestions for further topics.

Courses are generally in English as most of the ressources on the topic are in English. I also speak German and French.

If you are interested in organizing or attending a course or workshop please contact me via email at pukkamustard [at] posteo [dot] net.

The course materials are freely available on Gitlab.

I Git it!

Git is a a version control system that helps you track computer files and changes made to them. It is an extremly powerfull tool for organizing code and collaborating with others.

This is a workshop introducing basic concepts of Git and how to use them for basic organization of files as well as online collaboration.

The workshop was first held in November 2019 with graduate students of the SLF Davos.

Software Design: Coding with Style

Software is a growing organism. New ideas are exlored, features are added and functionalities are changed. Software becomes more complex and at the same time very messy. The art of keeping software tidy and elegant is called Software Design.

Software Design is a very important skill to ensure correctness and quality of your code. Equally important, it keeps the code base aesthetically pleasing and working with it enjoyable.

This workshop/course is an introduciton into the art of Software Design. We want to learn how to build more elegant and more enjoyable code by:

Workshop will include interactive exercises.

Beep beep: Networks and how computers talk to each other

Computer are all around us. Even more frightening: they talk to each other constantly.

In this workshop we want to listen in on what computers are talking about, how they talk to each other and how complex computer networks work:

This workshop focuses on lower-level functioning of computer networks. For a more high-level introduction to an existing network, the Internet, see the next course.

The workshop will include interactive exercises.

A series of tubes: A crash course to the internet

The Internet is a global interconnected computer network. It is also what we use when we watch videos, send messages and check the news. But how does it all work?

In this workshop we want to explore how the Internet works by exploring the various levels of protocols and technologies, including:

The workshop will include interactive exercises.

The Art of Computer Programming: Algorithms and Data structures

An introduction to basic algorithms and data structures.

Scientific Computation with Julia

An introduction to the Julia programming language.