The lectures consist of much live coding, practical guidance, code-review and dialogue around how we can improve the architecture and design of the program code. This requires an active participation and an open positive atmosphere during the lectures. The idea of the lectures is to enthuse and broaden the perspectives around large-scale software development.
The lectures are compulsory, since the course is based on our joint dialogue and the active participation that is included in it.
Main contents: functional programming, code quality, readability, maintainability, cooperation, version management (git), global state, dependencies, mathematical functions, persistent data structures, handling of the state of applications, reactive programming, web development, testability, test as documentation, comparison with object-oriented programming, atomic updating of state, concurrency, DSL, LISP and REPL.
The programming languages Clojure and ClojureScript are used to realize the course content in a project. Thereby, the course will also give solid knowledge in LISP Clojure, Clojure Special and REPL workflow.
Every week,the students will be shown a video with a conference presentation. The idea is that it should give inspiration and open new doors. During the lectures, we will reflect on the contents.