<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://dennisppaul.de/feed.xml" rel="self" type="application/atom+xml" /><link href="https://dennisppaul.de/" rel="alternate" type="text/html" /><updated>2025-11-04T11:12:41+00:00</updated><id>https://dennisppaul.de/feed.xml</id><title type="html">Dennis P Paul</title><subtitle>Dennis P Paul, Gestalter</subtitle><entry><title type="html">Umfeld</title><link href="https://dennisppaul.de/umfeld" rel="alternate" type="text/html" title="Umfeld" /><published>2025-11-01T00:01:00+00:00</published><updated>2025-11-01T00:01:00+00:00</updated><id>https://dennisppaul.de/Umfeld</id><content type="html" xml:base="https://dennisppaul.de/umfeld"><![CDATA[<p><img src="/assets/2025-11-01-Umfeld-logotype.png" alt="Umfeld" /></p>

<p><em><a href="https://umfeld.org">Umfeld</a></em> is a C++ environment for audio- and graphics-based applications, inspired by the <a href="https://processing.org/">Processing.org</a> environment.</p>

<ul>
  <li><a href="https://umfeld.org">Umfeld Website</a></li>
  <li><a href="http://umfeld.dennisppaul.de">Umfeld Developer Diary</a></li>
  <li><a href="https://codeberg.org/Umfeld">Umfeld Repositories</a></li>
</ul>

<h2 id="why-umfeld">Why <em>Umfeld</em>?</h2>

<p>well, <em>Umfeld</em> is actually imitating <a href="https://processing.org">Processing.org</a> quite bluntly ;) or a compliment to the original <a href="https://processing.org">Processing.org</a> project, or a token of respect.</p>

<p>this project aims to supply a framework that allows writing applications that more or less look like original <a href="https://processing.org">Processing.org</a> sketches.</p>

<p><em>Umfeld</em> may also function as a statement on what is good and valuable about the <a href="https://processing.org">Processing.org</a> <em>idiom</em> while at the same time disconnecting it from one specific group, application or project … maybe a bit like markdown in that sense.</p>

<p><em>Umfeld</em> is yet another programming environment for designers, makers, and artists. so why does it exist? and why not use <a href="https://processing.org">Processing.org</a>, <a href="https://openframeworks.cc">OpenFrameworks</a>, <a href="https://libcinder.org">Cinder</a> or any of the other frameworks out there?</p>

<p>well, the main reason why we even created <em>Umfeld</em> was basically to have a C++ derivative of Processing.org that stays very close to the <em>original</em> idiom. while Cinder and OpenFrameworks, for example, are fantastic projects, they differ quite a lot from the <em>Processing.org Idiom</em> ( i.e a <code class="language-plaintext highlighter-rouge">setup()-draw()</code> structure, <code class="language-plaintext highlighter-rouge">stroke()+fill()</code> and shape-based drawing, etcetera ). <em>Umfeld</em>, however, literally imitates core Processing classes and functions.</p>

<p>why not use the original Java-based <em>Processing.org</em> then? there are a few key aspects that just cannot and probably will never be resolved due to limitations imposed by Java. while Java is a very well-designed language and does many things better than C/C++, it has some drawbacks.</p>

<p>the most important benefit of moving to C/C++ is the availability of many extremely powerful and widespread libraries and APIs ( e.g OpenGL, OpenCV, FFmpeg, PortAudio ) that can be natively used and integrated into applications and sketches without the need for a native binding library. while many of these libraries have been fully or partly made accessible in Processing through native bindings, oftentimes these libraries or their bindings introduce significant overhead ( technically, administratively, etcetera ), are not at the current version, are incompatible with newer versions of OSes, or do not expose all functionality ( e.g unstable webcam support on macOS ). while this also happens with C/C++ libraries and APIs, the problems are greatly reduced. also, there is still a significant number of libraries and APIs not available for Java-based Processing or that are impossible to port because of limitations posed by Java VM implementations ( e.g multi-channel audio ).</p>

<p>in addition to this, due to the nature of C/C++ and the way <em>Umfeld</em> is implemented, applications and sketches developed with <em>Umfeld</em> can be built and deployed with a very(!) small memory and CPU footprint. this means that applications and sketches can potentially run on smaller or older hardware like, e.g Raspberry Pi. some modules can even be excluded from a build to reduce the footprint even more. <em>Umfeld</em> can even run <em>truly</em> headless ( i.e it does not require any virtual offscreen graphics driver if no window is required ).</p>

<p>furthermore, <em>Umfeld</em> uses CMake as a build system. CMake is very well-designed and more or less easy to learn and extend. this also means that <em>Umfeld</em> applications and sketches can be developed in more or less any text editor or IDE ( e.g Visual Studio Code, Zed, CLion, Vim ). it does not require proprietary build systems like Xcode.</p>

<p>and finally, although C and especially C++ is known for its horrific errors, confusing error messages, and volatile behavior at times, with the advent of LLM-based programming assistants, the entry threshold can be greatly reduced. trust the process. PS ( if <em>vibe coding</em> is even a thing this should be easy ;) )</p>

<p>PS note the character of this project is that features will be added as they are needed. it might partly replicate but not fully emulate the original <a href="https://processing.org">Processing.org</a> environment.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Wellenteilchen</title><link href="https://dennisppaul.de/wellenteilchen" rel="alternate" type="text/html" title="Wellenteilchen" /><published>2023-01-01T09:00:00+00:00</published><updated>2023-01-01T09:00:00+00:00</updated><id>https://dennisppaul.de/Wellenteilchen</id><content type="html" xml:base="https://dennisppaul.de/wellenteilchen"><![CDATA[<p><img src="/assets/2023-01-01-Wellenteilchen-00.jpg" alt="Wellenteilchen" /></p>

<p>Wellenteilchen is a series of musical machines that draw upon techniques of simulation to produce sound scapes and musical expressions that play with notions of <em>zoopomorphization</em> and emergence.</p>

<p><img src="/assets/2023-01-01-Wellenteilchen-01.jpg" alt="Wellenteilchen" /></p>

<p><img src="/assets/2023-01-01-Wellenteilchen-02.jpg" alt="Wellenteilchen" /></p>

<p><img src="/assets/2023-01-01-Wellenteilchen-03.jpg" alt="Wellenteilchen" /></p>

<p><img src="/assets/2023-01-01-Wellenteilchen-04.jpg" alt="Wellenteilchen" /></p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Klangstrom</title><link href="https://dennisppaul.de/klangstrom" rel="alternate" type="text/html" title="Klangstrom" /><published>2022-02-26T23:00:00+00:00</published><updated>2022-02-26T23:00:00+00:00</updated><id>https://dennisppaul.de/Klangstrom</id><content type="html" xml:base="https://dennisppaul.de/klangstrom"><![CDATA[<p><img src="/assets/2022-02-27-KLST_SHEEP_dpp.jpg" alt="KLST_SHEEP" /></p>

<p><em>Klangstrom</em> (KLST) is an infrastructure to facilitate generative, networked, embedded sound + music + composition. <em>Klangstrom</em> is comprised of two software libraries ( <em>Klang</em> a node+text-based sound synthesis library and <em>Strom</em> a node+text-<del>based</del> generative composition library ), an embedded hardware platform, and a programming environment to allow seamless development of generative, networked, embedded sound + music + composition applications.</p>

<p><img src="/assets/2022-02-27-KLST_TINY_dpp.jpg" alt="KLST_TINY" /></p>

<p><img src="/assets/2022-02-27-KLST_all_boards.jpg" alt="KLST_all_boards" /></p>

<p>The project is open source. Soft- and hardware can be found under <a href="https://github.com/dennisppaul/klangstrom-arduino">Klangstrom for Arduino</a> + <a href="https://github.com/dennisppaul/klangstrom-hardware">Klangstrom Hardware</a>.</p>

<p>The project is a work in progress and the development process can be followed on the <a href="https://klangstrom.dennisppaul.de">Klangstrom Developer Diary</a>.</p>

<p>This project is developed in collaboration with <a href="https://www.jacobremin.com">Jacob Remin</a>.</p>

<p>Learn more about the project in the <a href="https://klangstrom-for-arduino.dennisppaul.de">Klangstrom for Arduino Documentation</a> or by watching <a href="https://www.youtube.com/playlist?list=PLXJNr6N-Bu4NeoNwKa9-DVlPSJbEKzRIH">Klangstrom Videos</a>.</p>

<p><img src="/assets/2022-02-27-KLST-app-icon.png" alt="KLST_ICON" style="width: 128px;" /></p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Wellen</title><link href="https://dennisppaul.de/wellen" rel="alternate" type="text/html" title="Wellen" /><published>2021-12-24T17:00:00+00:00</published><updated>2021-12-24T17:00:00+00:00</updated><id>https://dennisppaul.de/Wellen</id><content type="html" xml:base="https://dennisppaul.de/wellen"><![CDATA[<p><img src="/assets/2021-12-24-wellen-logo-website.png" alt="Wellen Logo" /></p>

<p><em>wellen</em> is a framework for exploring and teaching generative music making and algorithmic compositions. it facilitates simple ways of playing musical notes, facilitates easy access to low-level digital signal processing (DSP) and supplies rhythm and timing as well as some <em>standard</em> muscial mechanics. the library acts as an adapter to various sound in- + outputs like MIDI, OSC, or digital/analog audio.</p>

<p>the library is open source + hosted on github <a href="https://github.com/dennisppaul/wellen">wellen</a>.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Teilchen</title><link href="https://dennisppaul.de/teilchen" rel="alternate" type="text/html" title="Teilchen" /><published>2021-12-14T17:00:00+00:00</published><updated>2021-12-14T17:00:00+00:00</updated><id>https://dennisppaul.de/Teilchen</id><content type="html" xml:base="https://dennisppaul.de/teilchen"><![CDATA[<p><img src="/assets/2021-12-14-teilchen-showreel.gif" alt="Teilchen Showreel" /></p>

<ul>
  <li><em>teilchen</em> is a simple physics library based on particles, forces, constraints and behaviors.</li>
  <li><em>teilchen</em> is also a collection of a variety of concepts useful for modeling with virtual physics and behaviors. nothing new, nothing fancy, except maybe for the combination of forces ( <em>external forces</em> ) and behavior ( <em>internal forces</em> ).</li>
  <li><em>teilchen</em> is also a <a href="http://processing.org" title="Processing.org">processing.org</a>-style library.</li>
  <li><em>teilchen</em> is a german word and a synonym for <em>Partikel</em> which translates to the english <em>particle</em>.</li>
</ul>

<p>the library is hosted on github <a href="https://github.com/dennisppaul/teilchen">teilchen</a>.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Infrastructure</title><link href="https://dennisppaul.de/infrastructure" rel="alternate" type="text/html" title="Infrastructure" /><published>2020-11-10T23:00:00+00:00</published><updated>2020-11-10T23:00:00+00:00</updated><id>https://dennisppaul.de/Infrastructure</id><content type="html" xml:base="https://dennisppaul.de/infrastructure"><![CDATA[<p><img src="/assets/2020-11-11-infrastructure.png" alt="Infrastructure" /></p>

<pre style="background-color: #202020; font-size: 12px; line-height: 14px;"><code style="color: #FFF; background-color: #202020; font-size: 12px; line-height: 12px;">
INFRASTRUCTURE AS ART/DESIGN

- INFRASTRUCTURE THRIVES ON POTENTIALS
- INFRASTRUCTURE IS EVER ONLY REALIZED THROUGH IT S USE
- INFRASTRUCTURE MUST LURE INTO DESIRING POSSIBLE FUTURES
- INFRASTRUCTURE IS EMPATHIC
- INFRASTRUCTURE THRIVES ON ALTRUISM BUT IS NOT LIMITED TO SUCH NOTIONS
- INFRASTRUCTURE MAY BE CRITICAL OR DISRUPTIVE
- INFRASTRUCTURE MAY CONNECT TO EXISTING INFRASTRUCTURES
- INFRASTRUCTURE MAY HACK EXISTING INFRASTRUCTURES
- INFRASTRUCTURE MAY NOT REVEAL ITSELF AS AN ART/DESIGN WORK IMMEDIATELY OR EVER
- INFRASTRUCTURE IS NOT CONFINED TO WIKIPEDIA’S DESCRIPTION OF *INFRASTRUCTURE*
- INFRASTRUCTURE LURKS BELOW AND HOVERS ABOVE AT THE SAME TIME
- INFRASTRUCTURE IS THE *NATIVE MATERIAL UNDERNEATH A CONSTRUCTED PAVEMENT*

</code></pre>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">NMI-011 A Computer Mouse Instrument</title><link href="https://dennisppaul.de/nmi-011-a-computer-mouse-instrument" rel="alternate" type="text/html" title="NMI-011 A Computer Mouse Instrument" /><published>2018-11-28T23:00:00+00:00</published><updated>2018-11-28T23:00:00+00:00</updated><id>https://dennisppaul.de/NMI-011_A_Computer_Mouse_Instrument</id><content type="html" xml:base="https://dennisppaul.de/nmi-011-a-computer-mouse-instrument"><![CDATA[<p><img src="/assets/2018-11-29-NMI-011-front.jpg" alt="NMI-011-front" /></p>

<p>NMI-011 is a musical instrument that is played with a computer mouse device. once a mouse device is connected, pressing the mouse button plays a note, while moving the mouse device changes pitch, amplitude and sound characteristics.</p>

<p><img src="/assets/2018-11-29-NMI-011-back.jpg" alt="NMI-011-back" /></p>

<p>Custom Printed Circuit Board + Silkscreen<br />
99×21×10 mm</p>

<p><img src="/assets/2018-11-29-NMI-011-use.jpg" alt="NMI-011-use" /></p>

<p>NMI-011 was released as a small series of 10 devices and was purchasable at <em>Studio Paul Paul</em>.</p>

<p>See also <a href="./nmi-010-a-computer-keyboard-instrument">NMI-010 A Computer Keyboard Instrument</a>.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">NMI-010 A Computer Keyboard Instrument</title><link href="https://dennisppaul.de/nmi-010-a-computer-keyboard-instrument" rel="alternate" type="text/html" title="NMI-010 A Computer Keyboard Instrument" /><published>2017-09-19T23:00:00+00:00</published><updated>2017-09-19T23:00:00+00:00</updated><id>https://dennisppaul.de/NMI-010_A_Computer_Keyboard_Instrument</id><content type="html" xml:base="https://dennisppaul.de/nmi-010-a-computer-keyboard-instrument"><![CDATA[<p><img src="/assets/2017-09-20-NMI-010-front-640×480.jpg" alt="NMI-010-front" /></p>

<p>NMI-010 is a musical instrument that is played with a computer keyboard. once a keyboard is connected, pressing a character or number key plays a note.</p>

<p><img src="/assets/2017-09-20-NMI-010-back-640×480.jpg" alt="NMI-010-back" /></p>

<p>Printed Circuit Board + Silkscreen <br />
85×39×10 mm</p>

<p><img src="/assets/2017-09-20-NMI-010-use-640×480.jpg" alt="NMI-010-use" /></p>

<p><img src="/assets/2017-09-20-NMI-010-booklet-cover.jpg" alt="NMI-010-booklet-cover" /></p>

<p><img src="/assets/2017-09-20-NMI-010-booklet-spread.jpg" alt="NMI-010-booklet-spread" /></p>

<p>NMI-010 was released as a small series of 10 devices and was purchasable at <em>Studio Paul Paul</em>.</p>

<p>See also <a href="./nmi-011-a-computer-mouse-instrument">NMI-011 A Computer Mouse Instrument</a>.</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Nullstecker</title><link href="https://dennisppaul.de/nullstecker" rel="alternate" type="text/html" title="Nullstecker" /><published>2013-09-28T23:00:00+00:00</published><updated>2013-09-28T23:00:00+00:00</updated><id>https://dennisppaul.de/Nullstecker</id><content type="html" xml:base="https://dennisppaul.de/nullstecker"><![CDATA[<p><img src="/assets/2013-09-29-nullstecker-T.jpg" alt="nullstecker-T" /></p>

<p><em>nullstecker</em> is a very simple hack consisting of 220 V power plugs modifed to trigger short circuits when plugged into the wall, shutting down all electricity.</p>

<p><em>nullstecker</em> turns 220 V sockets into weak points of a crucial infrastructure that is usually ignored, hidden away, and forgotten about. in a minute yet aggressive and disruptive gesture <em>nullstecker</em> exposes our dependency on this unwanted infrastructural <em>child</em>, leaving us with a notion of the fragility of our technological lifestyle.</p>

<p><img src="/assets/2013-09-29-nullstecker-01.jpg" alt="nullstecker-01" /></p>

<p><img src="/assets/2013-09-29-nullstecker-02.jpg" alt="nullstecker-02" /></p>

<p><img src="/assets/2013-09-29-nullstecker-03.jpg" alt="nullstecker-03" /></p>

<p><img src="/assets/2013-09-29-nullstecker-04.jpg" alt="nullstecker-04" /></p>

<p><img src="/assets/2013-09-29-nullstecker-05.jpg" alt="nullstecker-05" /></p>

<p><img src="/assets/2013-09-29-nullstecker-06.jpg" alt="nullstecker-06" /></p>

<p><img src="/assets/2013-09-29-nullstecker-OBJ.jpg" alt="nullstecker-OBJ" /></p>

<p>The object is a reaction to a call issued by the Art Hack Day project <a href="https://www.arthackday.net/events/going-dark">Going Dark</a> hosted and exhibited at <a href="https://www.leapknecht.de/">Lab for Electronic Arts and Performance (LEAP)</a> (2013) and at <a href="https://www.hek.ch/programm/events/event/critical-make-turning-functionality.html">Critical Make</a>, Haus der elektronischen Künste Basel (2015).</p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Rauchwolken und Luftschlösser</title><link href="https://dennisppaul.de/rauchwolken-und-luftschlosser" rel="alternate" type="text/html" title="Rauchwolken und Luftschlösser" /><published>2012-09-19T23:00:00+00:00</published><updated>2012-09-19T23:00:00+00:00</updated><id>https://dennisppaul.de/Rauchwolken_und_Luftschloesser</id><content type="html" xml:base="https://dennisppaul.de/rauchwolken-und-luftschlosser"><![CDATA[<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-001.jpg" alt="" /></p>

<p>Foldable poster for the <a href="https://rauchwolkenundluftschloesser.de/symposium/en">Symposiom</a> (18th – 20th October 2012, University of the Arts Bremen) of the ongoing project »<a href="https://rauchwolkenundluftschloesser.de/">Rauchwolken und Luftschlösser</a>« I organize in collaboration with my college <a href="https://www.andreasick.de/">Prof. Dr. Andrea Sick</a>.</p>

<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-002.jpg" alt="" /></p>

<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-001-detail.jpg" alt="" /></p>

<p><em>Vulcano eruptions, large scale fires and nuclear desasters produce massive cloud formations from smoke particles that not only drift across the skies, but also across the media. On the other hand, castles in the air can be defined as products of wishful thinking and figments of the imagination. Air castles and smoke clouds can only be spaces in so far, as they are impacted by the presence of things, people and surrounding circumstances. Yet these impacts for the most part can only be of passing duration and might only lead to the creation of temporary spaces. Both of these forms of agglomeration are being understood here as prominent features of a process that involves media, technology, politics, culture and literature in the gauging and the demarcation of spaces. This allows crossovers between and the overlaying of the »actual« and the »imgaginary,« while spaces can be shown off in all their eventfulness.</em></p>

<p>For more information about the project visit our <a href="https://rauchwolkenundluftschloesser.de/">dedicated website</a>.</p>

<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-005-detail-768x576.jpg" alt="" /></p>

<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-006-detail-768x576.jpg" alt="" /></p>

<p>The poster is partly generated by an algorithm that transforms stacks of images into outlines and arranges them in a 3-dimensional landscape.</p>

<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-004-detail.jpg" alt="" /></p>

<p><img src="/assets/2012-09-20-Rauchwolken_und_Luftschloesser/RuL-poster-003-detail.jpg" alt="" /></p>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary></entry></feed>