About

My name is Johannes and I create interactive spaces.

I used to draw comics and write a blog about philosophy of aesthetics.

Now I program and make electronic music.

In 2018 2 friends and me founded the ABC*-Festival. It is a free festival for installed spaces. We had 3 installments in the Gängeviertel in 2019 and work together with Hallo e.V. for 2021.

Frappant is an art gallery and off-space of which I am part of.

I am a volunteer inspirer at Hacker Schools, an alternative education program.

The XYZ*-Projekt is an event format with access to knowledge and excess to music as it’s main goal. It was founded as an outlet of ABC*-Festival in 2019.

I started freelance work as a webdeveloper in 2017.

I went to study Human Computer Interaction at the Universität Hamburg in 2018, but dropped out after the first semester. I started working as a permanently employed software developer in 2019.

During the pandemic of 2020 I started playing electric guitar. Which led to pedals. Which led to building pedals. Which led to synthesizers. Which led to building synthesizers.

I work with free and open source tools only (GIMP, Inkscape, Godot, Typora, Scribus, Atom, LibreOffice suite and KeePassX) on a Linux laptop. All websites and web-based projects are static websites, mostly build with HUGO and hosted either with Netlify or Surge.

I can write HTML, CSS, JavaScript and PHP. I have a good understanding of Python and Java.

I have build projects with Raspberry Pi, Arduino and Micro:bit.

I know how to work with Laravel, Wordpress, Netlify CMS, and Shopify. I have experience working with Git, Shell, Docker, SCSS, jQuery, Node JS and React.

hardware

Ausgang 4 [WIP]

The “Ausgang 4” is a 4 HP 3.5 to 6.3 jack adapter with monitoring LED’s.

Kind 32

The “Kind 32” is a passive utility breakout board for the Moog semimodular series in 16HP. It features 4 attenuators, 4 A/B switches and 4 switched multiples.

BOM: - 4 lin 100k pots, panelmount - 6 SPDT switches, panelmount - 32 3.5 jacks, panelmount

Dirigent 4 [WIP]

The “Dirignet 4” is a 6 HP solo and mute module with 4 channels, essential for my live techno sets.

Zeitgeist 128

The “Zeitgeist 128” is a bpm based, 4 HP, programmable clock module featuring 4 outputs with monitoring LEDs and a 7 segment display. It is based on an Arduino Nano 3.

software

ABC*-Festival

The ABC*-Festival is a Hamburg based art festival. Their website serves as an announcement page, program and archive.

Colors change on every page load. The wireframe logo is completely interactive. And there is a Beatle’s song. Cool, huh?

Luna

is a moonphase calender for the Nokia 8110 4G.

Luna is developed as a packaged web app that can be loaded with adb sideload on any device with open bridge. I developed it specifically for my Nokia 8110 4G running a custom ROM. Luna uses suncalc by mourner for it’s calculations.

A somewhat working webversion can be found here.

Code can be found on Github: github.com/branko3000/luna.

Kai Lietzke

Kai Lietzke is a Hamburg based Video- and Photographer. His website serves as a platform agnostic résumé.

Videos and photos can be sorted and uploaded with a custom CMS. Videos are hosted on a private cloud server. High resolution images with fullscreen mode, animated previews for all videos.

Design by me. Build with HUGO, hosting and CMS by Jonas Bögle.

Tram21

is a typographic drumcomputer.

Is it concrete poetry? Is it a drumcomputer?

Tram21 was programmed long before I knew before about sequencers, esolangs and especially ORCA (which is both btw). It currently uses samples and rather bad js timeout functions. But I plan to use actual soft synthesis and eloquent timing in the future.

Tram interpretes different ASCII signs as specific drums (’~’ as a snare for instance). The length of the line the sign was written on determines the notelength. Unknown characters are treated as silence, so is ‘-’. You can choose presets with uppercase letters, set bpm with numbers and add comments with ‘#’.

Most interesting parts are layering insane amounts of duplicate lines, playing beat patterns with ‘ctrl+x’ and ‘ctlr+v’ and writting “beat poems”.

Code can be found on Github: github.com/branko3000/tram21

Online version: branko3000.github.io/tram21

Bomberhase

is an arcade game about a pyromaniac rabbit.

The game was written in gdscript using the Godot engine. It is still early in development and currently not a priority. It’s an infinite arcade game that is basically reverse tower defense.

Idea and game design are somewhat based on the game Towerbag by Matheus Cunegato.

You can play an older version in browser on itch.io

CMLRPG

is a sandbox for building DnD style RPGs for the developer console.

This is a library to build text (and emoji) based RPGs out of JSON or JS files. Th library has a agnostic interface alowing to output generated responses anywhere, not just the developer console.

Features include: procedural maps, simple pick up/drop inventory, a simple reload,dodge, shoot combat system, XP, levels, character stats and a super verbose text generator with placeholder variables for in game parameters and arrays for different syntax options. You can create custom tiles, items, enemys and task based campaigns with specific locations and encounters.

Code and extensive readme can be found on Github: github.com/branko3000/cmlrpg

GTSCHLK

Gabriela Gottschalk is a performing artist and has multiple creative agencys. This is her personal website.

ORCA mods

are modifications I did on the esoteric sequencing language ORCA.

ORCA is an esoteric programming language that was developed for usage as a sequencer for various audio applications. It is an elektron.js app developed by hundredrabbits. I primarily use it to sequence my monophonic Mother 32.

I changed various things, adding new operators (like transpose “T”), changing logic and maths to use known operators (“+” for add, “-” for substract and so on) and adding in interactive backgrounds that can be manipulated through the inbuild command line.

Code and documentation can be found on Github: github.com/branko3000/orcamods

Puncheurz

Puncheurz is a young alternative cycling team. Their website seeks to capture their mischievous spirit.

Featuring quirky fullscreen backgrounds and an intro video, glitchy headlines and navigation, animated team shots and an image gallery.

Build with HUGO hosted with Netlify, made accessible with Netlify CMS.

Design by me, photos and videos by Kai Lietzke

XYZ-Projekt

The XYZ-Projekt is a Hamburg based event series looking to combine education and ave culture.

Anke Lietzke

Anke Lietzke is an interior architect. Her website is minimal and presents her and her work as clean and straightforward.

Popzirkus [WIP]

Popzirkus is a quirky creative agency, lead by Gabriela Gottschalk.

Chixxclique [WIP]

Chixxclique is a creative agency, lead by Gabriela Gottschalk. Their website envokes their understatement, femininity and coolness.

Hydrator3000

is a small educational app for learning JS and staying hydrated.

This project teaches the basics of JS with an app to track water consumption. It was used in Hackerschool workshops.

An online version can be found here.

Code can be found here on Github.

An editable repl can be found here.

Java/Micro Cesar

two educational programs teaching cryptography and Java/JS

Both programs teach the basics of object oriented programming language and cryptography using the Cesar’s chiffre. I’ve used both for workshops at Hackerschools.

Microcesar is supposed to be ran on a BBC micro:bit and can be used to exchange encrypted messages over the radio module.

Code for Microcesar can be found on Github: github.com/branko3000/microcesar.

Code for Javacesar can be found on Github: github.com/branko3000/javacesar.

OH! [WIP]

OH! is the casual business site of Gabriela Gottschalk

Freaky Drive [WIP]

Freaky Drive is the driving school where I got my license. They needed a new website. This is it.

I worked for

Camel, Volvo and Evonik as part of an agency

visual

Tanzen ist Posen

a comic about dancing in an empty club.

This comic is based upon a night in the the Yoko club in Hamburg.

They later denied to hang this piece by the toilet door. Their reasoning was: “Es passt aktuell nicht in die Venue”.

I learned about the word “Venue” that day.

Out of protest I hung this comic in 20 different locations in Hamburg.

Curry

an idiographic comic about the Curiosity mars rover.

The battery life of the Curiosity marsrover extends it’s planned use time. Inspired by this webcomic.

Sascha Hommer liked this comic a bit.

Curry

an idiographic comic about the Curiosity mars rover.

The battery life of the Curiosity marsrover extends it’s planned use time. Inspired by this webcomic.

Sascha Hommer liked this comic a bit.

Es rieselt laut

an alternative christmas card.

My mom did not like this christmas card.

Es rieselt laut

an alternative christmas card.

My mom did not like this christmas card.

Niemand hatte die Emus vor dem Hasen gewarnt

an alternative easter card.

My mom did not like this card either.

Niemand hatte die Emus vor dem Hasen gewarnt

an alternative easter card.

My mom did not like this card either.

Grafische Relativitätstheorie

a series of linoleum prints about the theory of relativity.

These graphics were part of a presentation for the final round of Jugend Präsentiert 2017.

Grafische Relativitätstheorie

a series of linoleum prints about the theory of relativity.

These graphics were part of a presentation for the final round of Jugend Präsentiert 2017.

written

Das Streichholz

A play about the sense of life in a vacuum.

PDF

Auf Clubtoiletten

A collection of haiku

Entry for the Berliner Festspiele 2019.

Contact

Impressum

Angaben gemäß § 5 TMG

Johannes Hassenstein

Freiberuflicher Webgestalter, Entwickler und Texter

Hebbelstraße 11b

22085 Hamburg

Kontakt

E-Mail: johannes.hassenstein@PM.ME

Verantwortlich für den Inhalt nach § 55 Abs. 2 RStV

siehe Angaben gemäß § 5 TMG

Streitschlichtung

Die Europäische Kommission stellt eine Plattform zur Online-Streitbeilegung (OS) bereit: https://ec.europa.eu/consumers/odr. Unsere E-Mail-Adresse finden Sie oben im Impressum. Wir sind nicht bereit oder verpflichtet, an Streitbeilegungsverfahren vor einer Verbraucherschlichtungsstelle teilzunehmen.

Haftung für Inhalte

Als Diensteanbieter sind wir gemäß § 7 Abs.1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich. Nach §§ 8 bis 10 TMG sind wir als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt. Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntnis einer konkreten Rechtsverletzung möglich. Bei Bekanntwerden von entsprechenden Rechtsverletzungen werden wir diese Inhalte umgehend entfernen.

Unser Angebot enthält Links zu externen Websites Dritter, auf deren Inhalte wir keinen Einfluss haben. Deshalb können wir für diese fremden Inhalte auch keine Gewähr übernehmen. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber der Seiten verantwortlich. Die verlinkten Seiten wurden zum Zeitpunkt der Verlinkung auf mögliche Rechtsverstöße überprüft. Rechtswidrige Inhalte waren zum Zeitpunkt der Verlinkung nicht erkennbar. Eine permanente inhaltliche Kontrolle der verlinkten Seiten ist jedoch ohne konkrete Anhaltspunkte einer Rechtsverletzung nicht zumutbar. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige Links umgehend entfernen.

Urheberrecht

Die durch die Seitenbetreiber erstellten Inhalte und Werke auf diesen Seiten unterliegen dem deutschen Urheberrecht. Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechtes bedürfen der schriftlichen Zustimmung des jeweiligen Autors bzw. Erstellers. Downloads und Kopien dieser Seite sind nur für den privaten, nicht kommerziellen Gebrauch gestattet. Soweit die Inhalte auf dieser Seite nicht vom Betreiber erstellt wurden, werden die Urheberrechte Dritter beachtet. Insbesondere werden Inhalte Dritter als solche gekennzeichnet. Sollten Sie trotzdem auf eine Urheberrechtsverletzung aufmerksam werden, bitten wir um einen entsprechenden Hinweis. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige Inhalte umgehend entfernen.