Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de bullshit tag:bullenscheisse.de,2011-06-11:/atom/ https://bullenscheisse.de/favicon.ico https://bullenscheisse.de/feed-logo.png 2018-04-11T19:26:00Z acrylamid Dear recruiter tag:bullenscheisse.de,2018-04-11:/2018/dear-recruiter 2018-04-11T19:26:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Earlier this day I wrote a <a href="https://twitter.com/zeitschlag/status/983991433840480258">thread on twitter</a>. I wanted this thread to be on my blog in an extended version. So here we go:</p> <p>A recruiter sent me a message on Stack Overflow today: He was looking for a Senior iOS Developer/iOS magician for a Berlin-based health startup promising the usual promises (Startup mentality, flexible working hours, a budget for conferences and hardware, cutting edge, international team, a decent salary...) He stumbled upon <a href="https://stackoverflow.com/users/5626642/nathan-mattes">my profile</a> and thought it to fit perfectly for that position. Although I told him that I’m not interested, he has made me think about some things.</p> <p>I’m neither a Senior iOS developer nor an iOS magician/ninja/rock star... I’ve been writing Enterprise iOS Apps as an employee for nearly two and a half years now and I consider myself to be a mediocre — sometimes really bad — iOS developer.</p> <p>I don’t like working after hours. “startup mentality” and “flexible working” sound to me like “lots of after hours”. I often feel ashamed of code, I wrote in the past and some hacks I wrote yesterday. I think that's a good sign: I got better since then. I don’t like “cutting edge-technology” as in my experience, the cutting edge moves pretty quickly.</p> <p>I want to write robust, well designed, accessible, maintainable, high-quality software. I’m failing too often to do so. A year, a month or a week ago, I failed more often, so I’m fine with that. Sometimes I wonder: Why the heck does my employer pay me 1742€ per month for the shitty work I’m doing?</p> <p>Oh, I think it’s important to share how much you earn. I make 1742€ per month for 30 hours per week after taxes and stuff. I’m unionized as I consider solidarity very important. I love to learn and to gain knowledge and share it with other people. Attending one conference a year isn’t enough to learn. A — formerly — secret dream of mine is attending <a href="https://en.wikipedia.org/wiki/Apple_Worldwide_Developers_Conference">Apple’s annual WWDC</a>.</p> <p>I want to improve and learn new things every single day and I want my employer to pay me for that. I’m white, young, and male and I want to use my privileges to make the world a better place for everyone. I want to work in a diverse team. I dislike hierarchies and plan offices and I value honest, constructive feedback. Oh, and communication on eye level. </p> <p>As I wrote earlier: I see myself as a mediocre developer, but I want to change that and develop myself both on a professional and personal level. This needs more time, more energy and more failing and will lead to a lot more frustration, I guess.</p> <p>My dream is to work in a diverse, inclusive environment. My dream is to work on an app I use myself on a daily basis. <a href="https://www.flightradar24.com">Flightradar24</a>, for instance, is one of those apps. But I’m too shy to apply for a job there. My dream is getting paid for developing open source software, learning and sharing my knowledge. My dream is getting paid enough to put enough money aside. You know, for when my washing machine and my glasses break at the same time and need to be replaced. Oh, and attending the aforementioned WWDC.</p> <p>At the moment I see my job as a tool that pays the bills and enables me to do more interesting things than developing Enterprise Apps in my spare time. I’d like to change that one day.</p> A ten year old machine tag:bullenscheisse.de,2018-04-09:/2018/a-ten-year-old-machine 2018-04-09T19:35:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Over a year ago, a good friend of mine gave me his old <a href="https://en.wikipedia.org/wiki/MacBook#Unibody_aluminum_model">Late 2008 13-inch MacBook</a>. It is one of these beautiful unibody aluminum machines, that look like the later 13-inch MacBook Pros. I have considered it too nice to throw it away, so I bought an SSD and upgraded the memory. This is still possible on these old MacBooks. Another necessity was to buy a new MagSafe Power Adapter. Then I was ready to go. It is pretty amazing that a nearly ten year old computer still works.</p> <p>Some things prevented me from using this computer on a more regular basis. That is, for instance, the version of OS X — it is not even macOS — that is officially supported on this machine. Although the Late 2008 MacBook runs OS X 10.11 “El Capitan”, which still receives updates from time to time, the newest release of Xcode needs at least macOS 10.13.2 “High Sierra”. And as an hobbyist iOS developer — it doesn’t pay any bills, for that reason I’m also employed as an iOS developer — I would like to have a machine capable of running a recent version of Xcode.</p> <p>Other reasons are the weight and the size, as I nearly always carry my personal computer with me. Compared to a 13-inch MacBook Air (1.35kg, up to 1.7cm), it feels pretty heavy with its weight of 2.0kg and its thickness of 2.41cm. It also lacks a backlit keyboard, has a worse built-in iSight camera, no card-reader, an old battery, <a href="https://support.apple.com/kb/SP500?viewlocale=en_US&amp;locale=en_US">and so on</a>.</p> <p>Nevertheless, Alex Repty <a href="https://twitter.com/arepty/status/921373010812162048">wrote nearly an entire game</a> on an aluminum MacBook in 2015 — it’s called <a href="http://www.cosmos-game.com">Cosmos</a> and I totally suck at it — and last year, Low End Mac published an “<a href="http://lowendmac.com/2017/ode-to-the-unibody-macbook/">Ode to the Unibody MacBook</a>”. So I guess, it’s still a good machine. </p> <p>Back in 2013 I bought a <a href="https://en.wikipedia.org/wiki/IPhone_(1st_generation)">1st generation iPhone</a> and used it for two weeks. It was an interesting experience, I even wrote a couple of blogposts (<a href="https://web.archive.org/web/20150421223813/http://blog.bullenscheisse.de:80/die-vorgeschichte">1</a>, <a href="https://web.archive.org/web/20150422143116/http://blog.bullenscheisse.de:80/die-vorbereitung/">2</a>, <a href="https://web.archive.org/web/20150423110827/http://blog.bullenscheisse.de:80/die-kandidaten/">3</a>, <a href="https://web.archive.org/web/20150422143111/http://blog.bullenscheisse.de:80/apps-apps-apps/">4</a>, <a href="https://web.archive.org/web/20130321003120/http://blog.bullenscheisse.de:80/das-iphone-experiment-wie-spotify-noch-unter-ios-3-1-3-lauft/">4.5</a>, <a href="https://web.archive.org/web/20150423111533/http://blog.bullenscheisse.de:80/das-iphone-experiment-halbzeit/">5</a>, <a href="https://web.archive.org/web/20150423104525/http://blog.bullenscheisse.de:80/das-iphone-experiment-fazit/">6</a>). Due to the fact that I limited myself I had to find new ways to do certain things: You want to listen to your music on Spotify? Okay, but you can’t do anything else then. You want to take pictures? Well, take this 2MP camera.</p> <p>Although everything worked out pretty well, it was a time consuming experience: The “widescreen iPod with touch controls”, the “revolutionary mobile phone” and the “breakthrough Internet communicator” felt quite slow in 2013.</p> <p>Now I want to repeat this with a ten year old computer: I want it to be my main machine for the next three weeks. </p> <p>To do so, I wanted to get rid of as many obstacles as I could. I couldn’t change neither weight nor size. Luckily, a friend pointed me to a tutorial on <a href="http://dosdude1.com/highsierra/">how to install macOS 10.13 “High Sierra” on an unsupported Mac</a>, so I could at least fix that. I installed “High Sierra” yesterday and everything went surprisingly well. Now my Late 2008 Aluminum MacBook, that doesn’t run High Sierra, runs High Sierra:</p> <p><img alt="Screenshot of Specs" src="https://bullenscheisse.de/img/IMG_155_Screenshot_Specs.png"/></p> <p>I use my computer for developing software (mostly apps for iOS), writing blogposts (like this one), recording a <a href="http://codestammtis.ch">podcast</a>, listening to music, writing tweets — as long as I can use a <a href="http://apps-of-a-feather.com">third-party twitter client</a> — and other kinds of communication. I don’t plan to build a whole video game,it so I can’t really say, what will be different — probably not a lot. I’m going to need more time for certain things, I guess, but that’s okay. </p> <p>I’m looking forward to the next couple of weeks and the experience of using a ten year old machine. Will it be frustrating? Will there be pain points? How many times will I have to switch back to the younger computer? Let’s see.</p> Internatsschüler unter sich tag:bullenscheisse.de,2018-04-02:/2018/internatsschueler-unter-sich 2018-04-02T12:57:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Marco betreibt ein kleines, feines Medienimperium. Neben <a href="https://www.unmus.de">unmus</a> — seinem Blog für längere Texte — schreibt er kürzere für die <a href="https://www.unmus.de/zimtwolke/">Zimtwolke</a>, lässt seine <a href="https://www.unmus.de/pinseldisko/">Pinsel tanzen</a> und fotografiert <a href="https://www.unmus.de/raketenstaub/">Raketenstaub</a>. Und er führt Gespräche mit Menschen, nimmt sie auf und stellt sie als <a href="https://www.unmus.de/zirkusliebe/">Zirkusliebe</a> ins Netz — neudeutsch: Podcast.</p> <p>Anfang des Jahres hatte ich die Ehre, <a href="https://www.unmus.de/zirkus012-internatsschueler-unter-sich/">einer dieser Menschen zu sein</a>. Wir spielen uns die Bälle zu und unterhalten uns über alles Mögliche:</p> <blockquote> <p>Wer sind die Iron Blogger? Wie ist das Leben in einem Internat? Sind da auch Jungen und Mädchen brav voneinander getrennt? Wie ist die Arbeit in einem Großkonzern? Muss man bei einem StartUp wirklich schuften ohne Ende? Die Welt verbessern oder doch lieber alles anzünden? Wer sind die Könige der Welt? Wo fängt der Kapitalismus an? Was ist der Sinn einer Aktiengesellschaft? Wer ist der reichste Mensch der ganzen Welt? Wem darf jetzt nicht die Luft ausgehen? Wie steht es um die Kommentarkultur in der Blogosphäre? Was verdienen Nathan und Marco mit ihren Blogs? Wer mag nicht aufstehen, wenn er auf der Coach liegt? Welches iPhone wackelt? Was zahlt Marco zur Not auch in Bar? Wer muss n'bissl vordenken? Gehört das Design zum Leseerlebnis? Wer hat eine Abmahnung von der AFD erhalten? Was geht nicht mehr von alleine weg?</p> </blockquote> <iframe width="100%" height="290" src="https://www.unmus.de/wp-content/plugins/podlove-podcasting-plugin-for-wordpress/lib/modules/podlove_web_player/player_v4/dist/share.html?episode=https://www.unmus.de/?podlove_player4=89" frameborder="0" scrolling="no"></iframe> <p>Lieber Marco, vielen Dank für die Einladung und das Gespräch.</p> Von A nach tag:bullenscheisse.de,2018-04-01:/2018/von-a-nach 2018-04-01T13:18:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor einigen Jahren fragte ich mich, wie ich in einigen Jahren leben möchte. Wo ich mich sehe. Es ist vergleichbar mit der Frage, wo ich mich in einem Jahr beruflich sehe, die in jedem meiner Personalgespräche eine Rolle spielte. Eine Frage, auf die ich nie eine Antwort habe. Ich mag das Gefühl, unterwegs zu sein. Zu reisen. Dabei andere Perspektiven zu sehen. Zu lernen, wie Probleme auf andere Art gelöst werden und darüber zu schmunzeln. Aus dem Fenster eines Zuges, eines Buses, eines Flugzeuges zu blicken. Auf dem Weg zu sein, von A nach... ja, nach wo eigentlich? </p> <p>Vor einigen Jahren erwuchs der Wunsch, dass ich mehr reisen möchte. In letzter Zeit geistert mir der Gedanke im Kopf, dass ich auf der Reise zum Reisen auf einem guten Weg bin. Ich reise gerne und bin dank Teilzeit an ziemlich vielen Wochenenden unterwegs — am liebsten und meistens mit leichtem Gepäck.</p> <p>Gestern lief ich. Vom Ferienhaus zum Meer. Der Gedanke schlich sich in meinen Kopf und begleitete mich auf dem Weg zurück. In den letzten Jahren kam ich im Rahmen meiner Möglichkeiten ganz gut rum. Habe ein paar neue Länder, Regionen und Städte gesehen. Und doch nur einen Bruchteil: Irland, England, Österreich, Ungarn, die Schweiz, Dänemark, Griechenland, die Vereinigen Staaten von Amerika, Sachsen, das Ruhrgebiet, Köln, Hamburg, Stettin, Dresden, Köln.</p> <p>Ich habe viel Zeit im Zug verbracht. Gemerkt, dass zehn Stunden Zug am Stück und vierzehn Stunden am Tag viel sind. Festgestellt, dass ein achtstündiger Flug, obwohl ich sehr, sehr gerne fliege, irgendwann einfach langweilig wird. Und trotzdem möchte ich die Reise fortsetzen. Mehr alleine reisen, länger reisen, weitere Strecken zurücklegen.</p> <p><img alt="" src="https://bullenscheisse.de/img/IMG_133_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_134_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_135_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_136_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_137_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_138_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_139_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_154_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_140_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_141_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_142_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_143_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_145_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_153_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_144_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_146_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_147_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_148_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_149_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_150_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_151_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_152_instagram.jpg"/></p> <p>Marco hat neulich übrigens seine <a href="https://www.unmus.de/instagram-on-unmus/">Fotos nach Hause geholt</a> und mich dadurch auf die Idee gebracht, wie ich diese Gedanken bebildere. Instagram ist für mich eine Art privates Fotoalbum, in dem ich ein oder zwei Fotos jeder Reise einklebe. Ich habe den jetzigen Urlaub genutzt, um die Reisebilder mal herunterzuladen und die schönsten hier in den Blog zu schieben, wobei ich zugeben muss, dass ich von Fotografieren eigentlich keine Ahnung habe</p> <p>Vor langer Zeit habe ich bei Maik mal ein paar <a href="https://www.langweiledich.net/so-machst-du-bessere-fotos/">Tricks für bessere Fotos</a> gefunden, die ich jedes Mal halbherzig zu beherzigen versuche.</p> pretix auf einem Uberspace tag:bullenscheisse.de,2018-03-23:/2018/pretix-auf-einem-uberspace 2018-03-23T11:21:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Im Oktober 2015 schrieb ich eine <a href="https://bullenscheisse.de/2015/pretix-auf-einem-uberspace-installieren/">Anleitung</a>, wie man <a href="https://github.com/pretix/pretix">pretix</a> auf einem <a href="https://uberspace.de">Uberspace</a> installiert. Nun ist heute nicht mehr Oktober 2015 und die alte Anleitung entsprechend nicht mehr aktuell. Mich haben mehrere Leute darauf hingewiesen. Ausserdem brauche ich aus <a href="https://bullenscheisse.de/2018/osstatus-com/">Gründen</a> selbst ab und an mal eine pretix-Instanz und habe mich entschlossen, die Anleitung mal zu überarbeiten und in diesem Blogpost auf einen neueren Stand zu bringen.</p> <h4>Einleitung</h4> <p>pretix ist ein Stück freie Software, mit dem man Tickets für Konzerte, Messen, Barcamps und sonstige Veranstaltungen verkaufen kann. Das Tool setzt auf <a href="https://www.djangoproject.com">Django</a> und benötigt Python 3. </p> <p>Es lässt sich unter <a href="https://docs.pretix.eu/en/latest/admin/installation/manual_smallscale.html">Linux</a> installieren, die Anleitung dafür kann man aber nicht eins zu eins auf die Ubernauten übertragen. Im Folgenden möchte ich beschreiben, was ich tun musste, um pretix auf einem Uberspace zumindest zum Laufen zu bringen. Der Benutzername für den Uberspace ist <code>barcamp</code>, der Uberspace selbst heisst <code>kaul</code>. Ich möchte noch darauf hinweisen, dass diese Installation eine SQLite-Datenbank nutzt. Die Dokumentation sagt dazu:</p> <blockquote> <p>If you have real users on your system you’ll really want to use</p> <p>A database (MySQL or PostgreSQL)</p> <p>A reverse proxy web server (nginx or Apache)</p> </blockquote> <p>Die Datenbank ist dieser Anleitung egal. Ausserdem fehlen noch ein, zwei andere Kleinigkeiten (siehe unten), um so Sachen wie SSL musst du dich ebenfalls selbst kümmern. Im Großen und Ganzen habe ich mich an die Anleitung der Ubernauten für <a href="https://wiki.uberspace.de/cool:django">Django</a> gehalten und sie mit besagter Installationsanleitung für Linux gekreuzt. </p> <p>Trotzdem gilt: Du wirst diese Anleitung nicht in dieser Form übernehmen können. <strong>Lies sie aufmerksam und benutze deinen eigenen Kopf, um Anpassungen zu machen</strong> Wenn du irgendwo nicht weiterkommst oder eine Anregung hast, dann freue ich mich natürlich über <a href="https://bullenscheisse.de/about/">Fragen und Feedback</a>.</p> <p>Wenn du — warum auch immer — keine eigene pretix-Instanz betreiben möchtest, kannst du ja mal darüber nachdenken, die gehostete Version zu nutzen. Raphael bietet die Software auch as a Service an — zu <a href="https://pretix.eu/about/de/pricing">sehr erschwinglichen Konditionen</a>.</p> <h4>Anleitung</h4> <h5>pretix-Installation an sich</h5> <p>In einem erste Schritt lege ich einen Ordner für die eigentliche pretix-Installation, die Virtual Environment und das Verzeichnis für die pretix-Daten an:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ mkdir pretix_installation [barcamp@kaus ~]$ cd pretix_installation</code></pre> <p>Anschließend richte ich die <a href="https://virtualenv.pypa.io/en/stable/">virtuelle Umgebung</a> mit Python 3.6 ein und aktiviere sie:</p> <pre class="highlight"><code>[barcamp@kaus pretix_installation]$ python3.6 -m venv env [barcamp@kaus pretix_installation]$ source env/bin/activate</code></pre> <p>Zwar gibt es pretix auch im <a href="https://de.wikipedia.org/wiki/Pip_(Python)">Python Package Index</a>, aber weil ich ein paar Uberspace-spezifische Anpassungen in der <code>settings.py</code> vornehmen muss, bringt das — zumindest nach meinem Kenntnisstand, vielleicht weißt du es besser, dann lass mich bitte an deinem Wissen teilhaben — wenig. Zeit, das entsprechende Repository auf Github zu klonen und in den Ordner zu wechseln:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix_installation]$ git clone https://github.com/pretix/pretix.git (env) [barcamp@kaus pretix_installation]$ cd pretix</code></pre> <p>Wenn du ein spezielles Release möchtest, wäre jetzt der richtige Zeitpunkt, den entsprechenden Branch oder Tag auszuchecken. Ich gehe davon aus, dass das Repository in einem Ordner namens <code>~/pretix_installation/pretix</code> liegt. Nun geht es daran, die Abhängigkeiten von pretix zu installieren:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ pip install -U gunicorn (env) [barcamp@kaus pretix]$ pip install -U -r src/requirements.txt</code></pre> <p>Danach muss ich — wie bereits erwähnt — die <code>settings.py</code> erweitern, wie bei den Ubernauten beschrieben:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ cat &lt;&lt; __EOF__ &gt;&gt; src/pretix/settings.py USE_X_FORWARDED_HOST = True __EOF__</code></pre> <p>Wie ebenfalls oben bereits erwähnt, braucht pretix ein Ordner, in dem es alle möglichen Daten ablegen kann. In diesem Beispiel ist es unter anderem die SQLite-Datenbank.</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ mkdir ../data_dir</code></pre> <p>pretix schaut an einigen Stellen nach der benötigten <a href="https://docs.pretix.eu/en/latest/admin/config.html">Konfigurationsdatei</a>, unter anderem im Home-Verzeichnis. Aus Bequemlichkeitsgründen lege ich sie deshalb einfach mal da an:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ cat &lt;&lt; __EOF__ &gt; ~/.pretix.cfg [pretix] instance_name=Frische Tickets! url=https://pretix.barcamp.kaus.uberspace.de currency=EUR datadir=/home/barcamp/pretix_installation/data_dir [database] ; Replace mysql with postgresql_psycopg2 for PostgreSQL backend=sqlite3 __EOF__</code></pre> <p>Wahrscheinlich — hoffentlich — wird deine anders aussehen. In der Konfigurationsdatei stehen alle möglichen Informationen, abhängig davon, was du alles nutzen möchtest. Beispielsweise steht hier die URL, unter der pretix erreichbar ist oder auch, wo sich das Verzeichnis für die Daten befindet.</p> <p>Hier sei nochmal ein Blick in die entsprechende <a href="https://docs.pretix.eu/en/latest/admin/config.html">Dokumentation</a> von pretix empfohlen — sie ist sehr gut. Danach initialisiere ich die Datenbank und lasse die statischen Dateien erstellen. Das hat mir bei etwas gedauert:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ python src/manage.py migrate (env) [barcamp@kaus pretix]$ python src/manage.py rebuild (env) [barcamp@kaus pretix]$ deactivate</code></pre> <p>Damit bin ich mit der Installation von pretix durch.</p> <h5>Deamon und Erreichbarkeit</h5> <p>Ich könnte pretix jetzt wie jede andere Django-Anwendung starten. Es würde jedoch nicht im Hintergrund laufen und wäre noch nicht aus dem Internet erreichbar. Darum kümmere ich mich jetzt. Zuerst brauche ich dafür einen Port. Die <a href="https://wiki.uberspace.de/cool:django#deamon_einrichten">Ubernauten empfehlen folgenden Weg</a>, den ich einfach mal guttenberge:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ DJANGOPORT=$(( $RANDOM % 4535 + 61000)); netstat -tulpen | grep $DJANGOPORT &amp;&amp; echo &quot;versuch's nochmal&quot;</code></pre> <blockquote> <p>wenn hier keine Ausgabe <code>versuch's nochmal</code> erscheint, passt alles. Wenn <code>versuch's nochmal</code> kommt - versuchs noch mal :)</p> </blockquote> <p>Danach richte ich den eigentlichen Service ein, der sich darum kümmert, dass pretix im Hintergrund läuft:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ test -d ~/service || uberspace-setup-svscan [barcamp@kaus ~]$ uberspace-setup-service pretix /home/barcamp/pretix_installation/env/bin/gunicorn --error-logfile ~/error-log --reload --chdir /home/barcamp/pretix_installation/pretix/src --bind 127.0.0.1:$DJANGOPORT --workers 4 pretix.wsgi --name pretix --max-requests 1200 --max-requests-jitter 50</code></pre> <p>Im letzten Schritt muss ich dafür sorgen, dass dieser Service aus dem Internet ansprechbar ist:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ mkdir /var/www/virtual/barcamp/barcamp.kaus.uberspace.de [barcamp@kaus ~]$ cat &lt;&lt; __EOF__ &gt; /var/www/virtual/barcamp/pretix.barcamp.kaus.uberspace.de/.htaccess RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteBase / RewriteRule ^(.*)$ http://127.0.0.1:$DJANGOPORT/$1 [P] RequestHeader set X-Forwarded-Proto https env=HTTPS __EOF__</code></pre> <p>Das war's.</p> <h5>Läuft bei mir</h5> <p>pretix wäre bei mir jetzt unter <a href="https://pretix.barcamp.kaus.uberspace.de">https://pretix.barcamp.kaus.uberspace.de</a> erreichbar.</p> <p><img alt="Startbildschirm von pretix" src="https://bullenscheisse.de/img/IMG_132_pretix.png"/></p> <p>Da sieht man denn natürlich nicht viel, weswegen ich mich unter <code>http://pretix.barcamp.kaus.uberspace.de/control/login?next=/control/</code> anmelden kann. Als Benutzername habe ich <code>admin@localhost</code>, als Passwort <code>admin</code> verwendet. <strong>Bitte denk daran, die Anmeldedaten zu ändern!</strong></p> <p><img alt="Anmeldebildschirm von pretix" src="https://bullenscheisse.de/img/IMG_99.png"/></p> <h4>Was noch fehlt</h4> <h5>Domain</h5> <p>Wie dir vielleicht aufgefallen ist, läuft pretix unter einer Subdomain — apropos Domain: <a href="https://pretix.barcamp.kaus.uberspace.de">pretix.barcamp.kaus.uberspace.de</a> ist wesentlich weniger lesbar als beispielsweise <a href="https://pretix.domain.tld">pretix.domain.tld</a>, du willst vielleicht also eine <a href="https://wiki.uberspace.de/domain">Domain</a> haben.</p> <p><del>Ich habe es zwischendrin mal hinbekommen, dass pretix auch in einem Unterordner lief, mir aber nicht aufgeschrieben, wie es geklappt hat und nun kann ich als Django/Python-Amateur das nicht mehr nachvollziehen. Falls jemand einen Hinweis hat, bin ich dankbar.</del></p> <p><a href="https://twitter.com/_rami_/status/978015739939577856">Raphael schrieb eben auf Twitter</a>, dass pretix im Unterordner schlicht nicht mehr unterstützt wird und üble Hacks braucht. Ich bin wohl auf so einen üblen Hack gestoßen und eventuell ist es gut, dass ich ihn nicht mehr nachvollziehen kann.</p> <h5>pretix-worker, Mails, MariaDB, Plugins...</h5> <p>Was ebenfalls nicht läuft, ist der in der pretix-Dokumentation erwähnte <em>pretix-worker</em>, ebenfalls fehlen sämtliche — bisweilen obligatorische — Zusatzssachen wie Mail, eine ordentliche Datenbank, <em>redis</em>, HTTPS, Plugins... Kurz: Sieh diese Anleitung bitte als einen ersten Schritt und kümmere dich anschliessend selbst darum, dass deine pretix-Installation gut und sicher läuft. Danke.</p> <h4>Links</h4> <ul> <li><a href="https://pretix.eu/about/de/">pretix im Netz</a></li> <li><a href="https://github.com/pretix/pretix">pretix auf Github</a></li> <li><a href="https://docs.pretix.eu/en/latest/">pretix-Dokumentation</a></li> </ul> Dein Freund und Rauswerfer tag:bullenscheisse.de,2018-03-15:/2018/dein-freund-und-rauswerfer 2018-03-15T11:51:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor ein paar Tagen gab es einen dieser Abende, an denen es so furchtbar kalt war. Gut verpackt lief ich vom Späti nach Hause, wobei der Späti mangels echter Spätis im Kiez eigentlich ein Discounter war. An einer Strassenecke parkte ein Polizeiwagen. Die beiden dazugehörigen Polizisten standen im Hauseingang eines Gebäudes, das seinerseits hinter dem Polizeiwagen stand. Ein Angestellter eines Sicherheitsdienstes hatte sie gerufen, weil sich ein Mensch in eben diesem Hauseingang schlafen gelegt hatte — es war ungefähr 22:00 Uhr.</p> <p>Man hörte ein wütendes Fluchen auf einer fremden Sprache. Ich hielt inne und beobachtete die Szene aus einigen Metern Entfernung, bis einer der Polizisten auf mich aufmerksam wurde. Was ich hier wolle, fragte er mich. Schauen, was Sie jetzt täten, entgegnete ich, schauen, was jetzt passiere. Der Plan war anscheinend, den schlafenden Menschen einfach in die Kälte zu schicken, weil er jegliche Hilfe abgelehnt hätte. In Notunterkünften würde er nur beklaut werden und dafür waren ihm seine Habseligkeiten verständlicherweise zu wichtig. Er — und nicht die Obdachlosigkeit — war ein Problem und der Job war nicht, das Problem zu lösen, sondern es loszuwerden.</p> <p>Ob er das richtig fände, wollte ich von dem Polizisten wissen und so fingen wir an zu diskutieren. „Obdachlose wollen doch so leben! Die haben es sich doch so ausgesucht!“ Ob er mal daran gedacht hätte, dass Schicksalsschläge Menschen aus ihrer Bahn werfen könnten, fragte ich. Auf die Frage, wie sein Leben aussehen könnte, wenn er einen lieben Menschen, beispielsweise eine Partnerin, verlieren würde, erwiderte er, dass er gar nicht verheiratet sei.</p> <p>Die Obdachlosen würden es in Berlin ausserdem ziemlich gut haben. Sie würden viel Geld verdienen und anders, als beispielsweise in Warschau, würden sie nicht verprügelt werden. Das sei übrigens der Grund, warum Warschau so sauber sei. Es klang unterschwellig so, als würde ihm das gefallen.</p> <p>Ich fragte ihn, wie sich Menschen einfach so in die Kälte zu entlassen, mit dem Selbstbild der Polizei als „Freund und Helfer“ oder „Da für dich“ vertrage. Ein „Freund und Helfer“ sei die Polizei seit dem Ende der Weimarer Republik nicht mehr. Ausserdem sei die Polizei eine Behörde. Und überhaupt. Wenn ich helfen wolle, solle ich „Gutmensch“ diesen Obdachlosen doch einfach mit zu mir nach Hause nehmen. „Dann können Sie sich um ihn kümmern! Dann kann er bei Ihnen alles vollscheißen und vollkotzen! Hat er letztens an der Straßenbahnhaltestelle auch getan!“ Er sei polizeibekannt und man schlage sich schon länger mit ihm rum.</p> <p>Unabhängig davon, ob der Mensch sich helfen lassen wollte oder nicht, finde ich, dass sich der Sicherheitsbediensteter hätte anders verhalten können. Natürlich kann ich nachvollziehen, dass er seinen Job machen möchte, aber er hätte bei dem Wetter vielleicht mal ein Auge zudrücken können. Die wenigsten Menschen verkriechen sich freiwillig im Eingangsbereich eines Hochhauses.</p> <p>Der Mensch, um den es ging, hatte sich während meiner Unterhaltung mit dem Polizisten aus dem Staub gemacht. Heute morgen sah ich ihn wieder. Er schlief vor dem Gebäude.</p> <p>Andere Länder gehen das Problem Obdachlosigkeit anders an, zum Glück. In <a href="http://www.zeit.de/gesellschaft/zeitgeschehen/2018-03/finnland-soziale-gerechtigkeit-grundwohnen-juha-kaakinen-interview/komplettansicht">Finnland</a> beispielse hat man ein anderes Konzept, um Menschen, die auf der Strasse leben, zu helfen. Ausserdem möchte ich noch zur <a href="https://www.berliner-stadtmission.de/aktuelles/kaeltehilfe-app/51abe73e12471c6a2f27744ead0f3829">Kältehilfe-App der Berliner Stadtmission</a> — danke Uli für den Hinweis — und zu <a href="https://www.brichbag.de">brichbag</a> verlinken.</p> <p>Ich wäre ein schlechter Sicherheitsdienstmitarbeiter.</p> Urteil am 6. Februar tag:bullenscheisse.de,2018-01-30:/2018/urteil-am-6-februar 2018-01-30T10:46:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor knapp zwei Wochen war die <a href="https://bullenscheisse.de/2018/gerichtstermin-wegen-wir-sind-afd-de/">mündliche Verhandlung</a> im Falle „Alternative für Deutschland (AfD) Bundesverband ./. Mattes, Nathan“. Zuerst möchte ich mich bei den Menschen bedanken, die nach Köln gekommen sind, um mir den Rücken zu stärken: Vielen Dank.</p> <p>Weil schon einige von euch gefragt haben, wie es gelaufen ist und ob ich jetzt direkt, ohne über „Los“ zu gehen, in den Knast gehe: Der Richter hat das Urteil für den 6.2. angekündigt. Als juristischer Laie würde ich sagen, dass die Verhandlung nicht allzu prickelnd für mich lief. Mehr wahrscheinlich in den nächsten Tagen.</p> osstatus.com tag:bullenscheisse.de,2018-01-24:/2018/osstatus-com 2018-01-24T17:56:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich sitze gerade an einer kleinen App fürs iPhone, einer Art <a href="https://play.google.com/store/apps/details?id=eu.pretix.pretixdroid&amp;hl=de">pretixdroid</a> für iPhone. Da liegen noch ein paar Abende Arbeit vor mir. Unter anderem speichert die App Dinge in der Keychain. Da es das erste Mal ist, dass ich irgendetwas schreibe, das etwas in die Keychain schreibt, stolpere ich hier und da noch gelegentlich und bekomme OSStatus-Codes. Da mir die Bedeutung von „-25299“ eher weniger sagt als „The item already exists.“, habe ich mal kurz das Internet durchforstet und stieß dabei auf <a href="https://www.osstatus.com">osstatus.com</a>.</p> Gerichtstermin wegen wir-sind-afd.de tag:bullenscheisse.de,2018-01-05:/2018/gerichtstermin-wegen-wir-sind-afd-de 2018-01-05T11:00:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Seit dem <a href="https://bullenscheisse.de/2017/update-zur-abmahnung-wegen-wir-sind-afd-de/">letzten Update zu wir-sind-afd.de</a> sind einige Monate ins Land gezogen, so wie die AfD leider in den Bundestag. Die Anwält_innen der AfD haben dann wenig später eine Klage vor dem LG Köln eingereicht. Ich werde es mir da demnächst <del>auf der Anklagebank</del> als Beklagter auf einem Sitzmöbelstück bequem machen dürfen.</p> <p>Der Gütetermin mit anschließender erste mündlicher Verhandlung findet am <strong>16. Januar 2018</strong> um <strong>13:00 Uhr</strong> im <strong>Sitzungssaal 235</strong> des <a href="https://www.google.de/maps/place/Landgericht+K%C3%B6ln/@50.9223221,6.9341594,17z/">LG Köln</a> statt. Die Verhandlung ist öffentlich. Wenn ihr also nichts Besseres zu tun habt, dann kommt doch rum und schaut euch das an. Ich freue mich sehr über Unterstützung. Weil Sicherheitskontrollen stattfinden, müsst ihr allerdings ein Ausweisdokument (Perso, Reisepass) mitbringen. Der Termin ist so wichtig, es gibt sogar eine <a href="https://bullenscheisse.de/2018/gerichtstermin-wegen-wir-sind-afd-de/PM_Muendliche_Verhandlung_AfD_Mattes.pdf">Pressemitteilung</a>.</p> <p>Ich möchte mich an dieser Stelle nochmal bei euch für eure Solidarität und meinem anwaltlichen Beistand für den anwaltlichen Beistand bedanken. Es gilt immernoch, was ich im Mai 2017 schrieb:</p> <blockquote> <p>In so einer Situation zu merken, dass man sowas nicht alleine durchstehen muss, tut unglaublich gut.</p> </blockquote> <p>Weil die Frage, wie man mich unterstützen kann, schon mehrfach kam — auch dafür: Danke. — möchte ich darauf noch kurz eingehen: Im Moment habe ich alles, was ich brauche. Im <em>worst case</em>, sprich: Wenn die Gegenseite den Prozess gewinnt, wäre ich zum einen die Domain los, zum anderen kämen für die erste Instanz knapp 6.000€ Prozesskosten auf mich zu. Falls das passiert, müsste ich euch doch um die eine oder andere Mark bitten.</p> <p>Bis dahin: Erfreut euch einfach weiterhin an Zitaten von Politiker_innen einer rechtsextremen, rassistischen, menschenverachtenden Partei, gut auffindbar unter <a href="https://wir-sind-afd.de/">wir-sind-afd.de</a>.</p> <p>Oh man, eine Pressemitteilung. Wie so ein Erwachsener.</p> Aus Scheiße Gold machen tag:bullenscheisse.de,2017-12-10:/2017/aus-scheisse-gold-machen 2017-12-10T10:01:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Die ZEIT sammelt heute <a href="http://www.zeit.de/mobilitaet/2017-12/deutsche-bahn-fahrplan-probleme-kunden/komplettansicht">Verbesserungsvorschläge</a> für die Deutsche Bahn. Das reicht von einem besseren Krisenmanagement und mehr Informationen, wenn etwas schief läuft, bis zu einer vereinfachten App.</p> <p>Im Großen und Ganzen bin ich beeindruckt von der Leistung der Bahn. Natürlich gibt es hier und da durchaus Verbesserungspotential, keine Frage. Trotzdem fahre ich gerne mit dem Zug und bin dankbar, dass ich sicher und einigermaßen entspannt und pünktlich ans Ziel komme.</p> <p>Worüber ich mich jedes Mal ärgere, sind die kostenpflichtigen Toiletten an Bahnhöfen. Anstatt sie selbst zu betreiben, zieht die Bahn es vor, dieses Angebot wohl aus Kostengründen von externen Partnerunternehmen anbieten zu lassen. Die bieten das sehr sichere Geschäft dann natürlich gerne an, weil Menschen einfach regelmässig pinkeln müssen. Und bereit sind, für die Befriedigung von Grundbedürfnissen Geld auszugeben.</p> <p>Am Berliner Hauptbahnhof beträgt der Preis für einen Toilettenbesuch einen Euro. Dafür bekomme ich einen 50-Cent-Gutschein, den ich bei einigen Geschäften im Bahnhof einlösen kann, wenn ich Brötchen, Burger, Kaffee oder Zeitschriften für einen bestimmten Mindestbestellwert kaufe — sprich: noch mehr Geld ausgebe.</p> <p>Man könnte auch sagen, dass die Firmen <a href="http://www.wc-fresh.com/">wc-fresh</a> und <a href="https://www.sanifair.de">Sanifair</a> aus Scheiße Gold macht, weil irgendjemand sparen und Toilettenkosten auf Kund_innen umlegen wollte.</p> <p>Mein Wunsch ist eigentlich ganz einfach: Liebe Bahn, macht die Toiletten bitte kostenlos. Sorgt dafür, dass sie sauber sind. Toiletten gehören für mich zum Service. Ja, es kostet Geld und ich verstehe, dass ihr, solange ihr als Privatunternehmen Geld verdienen müsst, Geld verdienen müsst. Aber mal ehrlich: </p> <p>Ihr erhöht die Ticketpreise mit einer Pünktlichkeit, von der eure Züge manchmal nur träumen können. Ihr habt Geld für Bahnhöfe, deren Kosten im Nachhinein — oh Wunder! — explodieren. Geld für Tunnel unter Stuttgart. Geld für Zugstrecken von <a href="https://de.wikipedia.org/wiki/Verkehrsprojekt_Deutsche_Einheit_Nr._8">Berlin nach Nürnberg</a>. Wie bitte? Was sagst du da? Das müsst ihr gar nicht alles selbst bezahlen, weil Steuerzahler_innen helfen? Und ausserdem gehörst du eh zu <a href="http://www.bundesfinanzministerium.de/Content/DE/Standardartikel/Themen/Bundesvermoegen/Privatisierungs_und_Beteiligungspolitik/Beteiligungspolitik/deutsche-bahn-ag.html">100% dem Bund</a>? Na großartig, dann könnt ihr es euch ja gleich umso mehr leisten, Toiletten in den Bahnhöfen kostenlos anzubieten. Oder etwa nicht?</p> Für nichts und wieder nichts tag:bullenscheisse.de,2017-12-09:/2017/fuer-nichts-und-wieder-nichts 2017-12-09T10:35:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>2013 konnte man einen <a href="https://de.wikipedia.org/wiki/Bitcoin">Bitcoin</a> für ungefähr 800 Euro kaufen. Damals gab es einen ersten Hype, auf dessen Höhepunkt ich ein bisschen Geld investierte. Im schlimmsten Fall würde ich das bisschen Geld verlieren, dachte ich mir, das könnte ich verkraften. Im besten Fall hätte ich halt ein bisschen verdient. Ich nahm mir vor, einfach mal zu schauen, was daraus wird.</p> <p>Ein paar Tage verfolgte ich regelmässig den Kurs, dann wurde es langweilig. Ausserdem beschäftigte ich mich mit anderen Dingen: Klausuren. Lohnarbeit. Menschen. Und irgendwann habe ich meine Investition dann tatsächlich vergessen.</p> <p>Mitte diesen Jahres wurde ich wieder daran erinnert: Die Kurse für Bitcoin kannten nur eine Richtung, viele Medien griffen das Thema auf und seitdem habe ich immer mal wieder einen Blick darauf geworfen. Vor ein paar Tagen habe ich bei einem Kurs von fast 12000 Euro pro Bitcoin verkauft. Mich plagte kurz ein schlechtes Gewissen, dass ich meinen Besitz und den Markt genutzt habe, um meinen Besitz zu mehren. Wie so ein gewissenloser Kapitalist.</p> <p>Ein Teil des Erlöses — 2013 waren es ungefähr 6,50 Euro, ausserdem vier Jahren Zeit und Angebot und Nachfrage — habe ich genutzt, um <a href="https://twitter.com/zeitschlag/status/939080296212959232">einen Küchentisch, Handtuchhalter und einige Küchenutensilien</a> zu kaufen. Man könnte also sagen: Ich habe für einen <a href="http://www.ikea.com/de/de/catalog/products/80091713/">neuen Tisch</a> etwas mehr als zwei Euro bezahlt.</p> <p>Ausserdem habe ich es im <a href="https://twitter.com/zeitschlag/status/920353831438909440">Späti</a> mal so richtig krachen lassen und alles gekauft, worauf ich Lust hatte: eine Pomelo, eine Spezi, Apfelsaft aus Apfelsaftkonzentrat, Orangensaft aus Orangensaftkonzentrat, eine Süßkartoffel, Nudeln, Pesto aus dem Glas und ein paar Grundnahrungsmittel haben mich 16 Euro gekostet. Später habe ich mir dann noch ein Eis gekauft.</p> <p>Vor fast drei Jahren war ich in der Schweiz und habe 3,93 Euro verdient, weil die Schweizer Nationalbank die Bindung des Franken an den Euro aufgehoben hat. <a href="https://bullenscheisse.de/2015/fuer-nichts/">Damals schrieb ich</a>:</p> <blockquote> <p>Ich habe 3,93 Euro verdient. Was habe ich dafür getan? Nichts. Fühlt es sich richtig und gut an? Nein.</p> </blockquote> <p>Dieses Jahre habe ich durch den Besitz von 7 Euro ungefähr 90 verdient. Was habe ich dafür getan? Ich habe vor ein paar Jahren Besitz riskiert und gewartet, sonst nichts. Fühlt es sich richtig und gut an? Nein. Immer noch nicht.</p> Einkaufszettl 0.6 tag:bullenscheisse.de,2017-12-05:/2017/einkaufszettl-0-6 2017-12-05T20:40:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Eine kurze Durchsage zum <a href="https://bullenscheisse.de/einkaufszettl/">Einkaufszettl</a>: Es gibt mal wieder eine neue Version im <a href="https://itunes.apple.com/de/app/einkaufszettl/id1016435355?l=de&amp;ls=1&amp;mt=8">App Store</a>.</p> <p><img alt="Screenshot vom iPhone X mit dem Einkaufszettl" src="https://bullenscheisse.de/img/IMG_131_Einkaufszettl_iPhone_X.png"/></p> <p>Das ursprüngliche Zeit war, endlich mal auf Barrierefreiheit zu achten und sie dort, wo sie fehlt, noch nachzurüsten. Heute morgen fiel mir auf, dass ich da nochmal Hand anlegen darf. Es ist beispielsweise nicht per VoiceOver ersichtlich, ob ein Produkt bereits auf der Liste steht oder schon gekauft wurde.</p> <p>Eine Folge davon, für mehr Barrierefreiheit zu sorgen, war, dass man nun in der App wählen kann, ob man sie wie bisher mit der Wischgeste bedienen möchte oder die Dinge lieber antappt, um sie auf den Einkaufszettl zu schreiben oder sie als gekauft zu markieren. Die App einzig und alleine mit der Wischgeste zu bedienen, habe ich zumindest mit VoiceOver nicht geschafft.</p> <p>Ende der Durchsage.</p> 60 Euro. Bedauerlicherweise. tag:bullenscheisse.de,2017-12-04:/2017/60-euro-bedauerlicherweise 2017-12-04T06:11:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich stieg vorhin in eine Regionalbahn. Dort lächelte mich ein Aufkleber des Verkehrsverbundes zum Thema Fahren ohne Fahrschein an:</p> <blockquote> <p><strong>Es hat sich nie weniger gelohnt.</strong> Nach den Gemeinsamen Beförderungsbedingungen müssen wir diesen Betrag (60€) von Ihnen erheben, wenn Sie öffentliche Verkehrsmittel ohne gültigen Fahrschein benutzen.</p> </blockquote> <p>Mich machen hier zwei Sachen traurig:</p> <ol> <li>Die Formulierung. Sie erweckt den Eindruck, dass es der Bahn leid täte, würde sie mich ohne gültigen Fahrschein erwischen. Eigentlich wollen sie mir dafür keine 60 Euro abknöpfen, seien aber aufgrund der Beförderungsbedingungen bedauerlicherweise dazu verpflichtet. Wenn es euch leid tut, dann setzt euch dafür ein, die gemeinsamen Beförderungsbedingungen zu ändern.</li> <li>Die Tatsache, dass das Benutzen des ÖPNV ohne Fahrschein 60 Euro kostet. Ein fahrscheinloser ÖPNV ist Teil einer Welt, in der ich gerne leben würde. 2013 schätzte man die Kosten dafür deutschlandweit auf <a href="http://www.tagesspiegel.de/berlin/diskussion-um-gratis-fahrten-in-berlin-kostenloser-nahverkehr-ist-in-anderen-staedten-gescheitert/9159568.html">rund 12 Milliarden Euro</a>. Jährlich. Grob überschlagen wären das pro Kopf in Deutschland und Monat etwa 12 Euro. Dass wir uns das leisten können, das steht ausser Frage. Wenn wir uns <a href="http://www.zeit.de/mobilitaet/2017-02/bus-bahn-oeffentlicher-nahverkehr-studie-grafiken/komplettansicht">Monatstickets leisten können</a>, können wir uns auch 12 Euro im Monat leisten, wenn man den fahrscheinlosen ÖPNV nicht über Steuern finanzieren könnte. Natürlich müsste massiv in Infrastruktur investiert werden, aber das wäre etwas, wovon alle profitieren würden. Es sollte uns das wert sein.</li> </ol> miniflux + unread tag:bullenscheisse.de,2017-11-27:/2017/miniflux-+-unread 2017-11-27T19:41:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor ein paar Tagen änderte sich wieder einmal alles. </p> <h4>Was bisher geschah</h4> <p>Zumindest, was mein Setup zum Lesen von <a href="https://de.wikipedia.org/wiki/RSS_(Web-Feed)">RSS-Feeds</a> betrifft. Bisher verwendete ich dafür über mehrere Jahre hinweg <a href="https://tt-rss.org/">Tiny Tiny RSS</a> — kurz: tt-rss — auf einem Uberspace, um diverser Feeds abzugrasen. Zum Lesen nutzte ich auf dem Mac, nachdem die Entwicklung von microRSS, einem Desktop-Client für tt-rss <a href="https://bullenscheisse.de/2015/microrss-ist-open-source/">Mitte 2015 eingestellt</a> worden war, die Weboberfläche von tt-rss. Für das iPhone hatte ich mir vor Ewigkeiten eine App namens „<a href="https://itunes.apple.com/de/app/tiny-reader-rss/id689519762?mt=8">tiny Reader RSS</a>“ gekauft, die ich seitdem verwendete.</p> <p>Dieses System war nicht perfekt, es gab durchaus Sachen, die echt genervt haben. So störte mich an der App beispielsweise, dass sie jedes Mal, wenn sie in den Vordergrund kam, eine Aktualisierung anstieß. Wenn du in der Berliner Ubahn bist, ist das echt nervig. Auch die Wischgesten in tiny RSS waren nervig, ebenso die Tatsache, dass die Originalansicht der Artikel in der App und nicht mittels Safari implementiert war.</p> <p>Ich konnte auch nicht sagen, dass die Weboberfläche von tt-rss umwerfend war. Sie war okay. Aber der <em>pain in the ass</em> war nie groß genug, um etwas zu ändern oder mich nach etwas Neuem umzuschauen. Stattdessen gewöhnte ich mich größtenteils an die Nachteile. Erspart euch das. <a href="https://twitter.com/search?f=tweets&amp;vertical=default&amp;q=%23f%C3%BCrwenigernervimleben&amp;src=typd">#fürwenigernervimleben</a></p> <p>Als Leah dann vor einigen Tagen ausgrub, welche <a href="https://twitter.com/_nazco_/status/929081977805987841">Kategorien es im Forum von tt-rss</a> gibt, Cheatha nachfragte und der <a href="https://discourse.tt-rss.org/t/a-category-named-gas-chamber/649">Entwickler von tt-rss sich wie ein Arschloch benahm</a>, sah ich den Zeitpunkt gekommen, mein Feedreader-Setup mal so zu überdenken, dass es nicht mehr auf tt-rss aufbaute.</p> <h4>Was ich will/brauche/will</h4> <p>Ich lese meine Feeds selbstverständlich absolut nie im Büro, dafür auf Toilette, in der Ubahn, im Bett, in Wartezimmern. Ich hätte also gerne eine Lösung, die eine iOS-App, die nicht bei jedem Aufruf alle Feeds synchronisiert, und eine zweckmässige, idealerweise hübsche Weboberfläche enthält. Wenn es noch einen nativen Client für den Mac gibt, sage ich auch nicht nein. Noch dazu wäre es schön, wenn die Lösung beispielsweise stündlich die Feeds abgrast.</p> <p>Idealerweise ist das ganze Open Source und ohne großen Aufwand auf einem <a href="https://uberspace.de/">Uberspace</a> installierbar. Und wenn es was kostet, ist das auch in Ordnung, schließlich nutze ich das täglich im Büro, auf Toilette, in der Ubahn, im Bett, in Wartezimmern.</p> <h4>Was ich mir angeschaut habe</h4> <p>Ich liebäugelte anfangs auch mit Diensten wie <a href="https://feedwrangler.net/welcome.html">Feedwrangler</a>, <a href="http://netnewswireapp.com/">NetNewsWire</a>, <a href="https://feedly.com/i/welcome">Feedly</a> oder <a href="https://feedbin.com/">Feedbin</a>, nahm dann aber relativ schnell wieder Abstand, weil ich eben etwas Selbstgehostetes haben wollte oder sie wie NetNewsWire nicht über ein Webinterface verfügten. Wenn ich mich eines Tages nicht mehr selbst um die Wartung kümmern möchte, komme ich darauf vielleicht zurück, fürs Erste waren die raus.</p> <p>Andere Kandidaten waren <a href="https://miniflux.net/">miniflux</a>, <a href="https://github.com/swanson/stringer">Stringer</a> und <a href="https://selfoss.aditu.de/">selfoss</a>, wobei ich selfoss hässlich fand und deswegen nur Stringer und miniflux in die engere Auswahl kamen. </p> <p>Kandidaten für die iOS-App waren <a href="https://www.goldenhillsoftware.com/unread/">Unread</a> und Reeder. felix schwenzel, der seit einem jahr <a href="http://wirres.net/article/articleview/10389/1/0/">ebenfalls miniflux nutzt</a>, hat dazu vor geraumer zeit mal <a href="http://wirres.net/article/articleview/7148/1/6/">einen artikel geschrieben</a>. Beide Apps können an verschiedene APIs gehängt werden, unter anderem auch an die <a href="https://feedafever.com/api">Fever API</a>, die viele Open Source-RSS-Services implementieren.</p> <h4>Wie es jetzt aussieht</h4> <p>Weil ich irgendwann aufgab, Stringer auf einem Uberspace installieren zu wollen, also quasi aus meiner eigenen Inkompetenz — vielleicht schafft es jemand, der*die mehr Ahnung als ich hat — wurde es schlussendlich miniflux.</p> <p>Als App für das iPhone habe ich mich für Unread entschieden, unter anderem deshalb, weil die App eine Testphase anbietet: Bevor ich Geld ausgebe, kann ich 50 Artikel lesen. Ich war anfangs skeptisch, ob das reicht, aber um ein Gefühl für die App zu kriegen und mich zu überzeugen, war es genug: Ich gab die 8,99€ aus.</p> <p>Dass es mit dem IAP ein paar mehr Themes in der App gibt, ist nett, aber mir reichen im Grunde zwei:</p> <p><img alt="Day-Theme, Night-Theme" src="https://bullenscheisse.de/img/IMG_130_Unread_Themes.PNG"/></p> <p>Mit das Beste an Unread im Vergleich zu tiny RSS ist die Tatsache, dass Unread die Synchronisierung der Feeds wesentlich eleganter im Hintergrund hinbekommt, sie offline vorhält und ich meine Feeds so auch in der Berliner Ubahn lesen kann. Ausserdem sind die Wischgesten ordentlich und nachvollziehbar implementiert und die ganze UX ist nicht so kacke.</p> <p>Ich bin alles in allem zufrieden damit. Wie es langfristig funktioniert, wird sich zeigen.</p> <h4>Wo ich auch Hürden gestoßen bin</h4> <p>Die einzige Hürde, die mir auffiel, war die Installation von miniflux. Zwar lässt sich miniflux auch mit MySQL betreiben, wenn man das in der <a href="https://twitter.com/zeitschlag/status/931816223817523200">Konfigurationsdatei konfiguriert</a>, aber die MySQL-Version meines Uberspace war zu alt. Das fand ich raus, weil ich bei der Installation von miniflux Encoding-Fehler sah. Lösung des Problems: Du willst <a href="https://wiki.uberspace.de/database:mysql#mariadb_100">MariaDB auf deinem Uberspace</a> nutzen. Dann klappt es auch mit der Installation.</p> <p>Ansonsten:</p> <h4>Was ich gut finde</h4> <p>Das jetzige Setup erledigt einfach seinen Job: Es lässt mich meine Feeds überall da lesen, wo ich möchte. Es nervt dabei nicht, es sieht dabei gut aus, Updates für miniflux lassen sich relativ problemlos einspielen und auch Unread wird regelmässig vom Entwickler aktualisiert.</p> <h4>Womit ich nicht zufrieden bin</h4> <p>Das Bindeglied zwischen App und miniflux ist wie geschrieben die Fever API. Damit fühle ich mich tatsächlich ein bisschen unwohl, weil Fever seit einigen Jahren nicht mehr weiterentwickelt wird. Und somit kümmert sich auch niermand um die API. Wenn der Entwickler von Unread sich jetzt entscheidet, die Fever API nicht mehr zu unterstützen, habe ich ein Problem. Wenn die Entwickler*innen von miniflux sich jetzt entscheiden, die Fever API nicht mehr zu unterstützen und stattdessen lieber an miniflux 2 arbeiten, habe ich ein Problem.</p> <p>Wenn es soweit ist, sehe ich weiter. Notfalls lerne ich PHP oder muss mir dann doch mal meinen eigenen Feedreader fürs iPhone schreiben.</p> <p><strong>Wie sieht dein RSS-Setup aus? Hast du Fragen?</strong></p> XNetflixions - Gastbeitrag bei condomsbydefault.de tag:bullenscheisse.de,2017-10-31:/2017/xnetflixions-gastbeitrag-bei-condomsbydefault-de 2017-10-31T12:55:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor knapp einer Woche habe ich einen <a href="http://condomsbydefault.de/xnetflixions-lasst-uns-ueber-guten-porn-reden/">Gastbeitrag für Condoms by Default</a> geschrieben. Er ist tendentiell leider eher NSWF, was aber weniger mit dem Inhalt, als vielmehr mit dem, was W als SFW ansieht, zu tun hat: Der Blogpost beschäftigt sich mit dem Thema, warum wir so wenig über Pornos und Sex reden. Und um Netflix geht es auch. Und um faire Pornos. Oh je, jetzt werde ich bestimmt nie wieder einen anderen Job finden. Wir sollten mal dringend über Pornos reden und darüber, was als NSFW angesehen wird.</p> <p>Die Idee, bei Djure einen Gastbeitrag zu veröffentlichen, hatte ich ein paar Tage vorher, den Mut, ihn anzusprechen, irgendwann nachts. Anfangs war ich mir unsicher, ob ich meinen Namen unter den Blogpost setzen möchte oder ob es nicht doch besser wäre, das ganze unter falschem Namen zu veröffentlichen. Als ich dann diesen Blogpost schrieb, dachte ich mir: „Du kannst dir nicht zum einen mehr Offenheit wünschen und dich dann hinter einem Pseudonym verstecken.“</p> <p>Das war dann auch der Grund, warum da jetzt mein Name drüber steht. Dabei habe ich gemerkt, dass ich eigentlich sehr gerne blogge. Das merke ich aber so ziemlich jedes Mal, wenn ich schreibe.</p> <p>Lieber Djure, vielen Dank, dass ich den Gastbeitrag bei dir verfassen durfte.</p> Life Is Strange tag:bullenscheisse.de,2017-10-04:/2017/life-is-strange 2017-10-04T05:48:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Am Wochenende — das dauerte dieses Mal von Donnerstag bis Dienstag, gerne mehr davon — habe ich das erste Mal <a href="https://de.wikipedia.org/wiki/Life_Is_Strange">Life is Strange</a> gespielt, bisher habe ich die erste Episode geschafft. Mir gefällt die Musik unglaublich gut, eigentlich könnte man das Spiel starten, im Hauptmenü verweilen und einfach nur der Musik lauschen. Aber dann würde man ihm Unrecht tun.</p> <p>In dem Spiel hat man Zugriff auf eine Art Tagebuch von Max, der Hauptfigur, in dem diverse Informationen abrufbar sind, unter anderem gibt es Interessantes zu den Charakteren zu lesen. Auf der Seite, die <a href="https://vignette.wikia.nocookie.net/rememberme/images/2/22/Warren_Entry.png/revision/latest?cb=20150209230731">Warren beschreibt</a>, sind einige mathematische Gleichungen zu sehen, beginnend mit:</p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mfrac><mrow><mi>x</mi><mo>-</mo><mn>1</mn></mrow><mn>4</mn></mfrac><mo>-</mo><mfrac><mn>4</mn><mrow><mi>x</mi><mo>-</mo><mn>1</mn></mrow></mfrac><mo>=</mo><mn>0</mn></mstyle></math> </p> <p>Als ich das sah, war mein Interesse geweckt. Auch wenn ich Informatik studiert habe, war ich nie besonders gut in Mathe. Es hat mir meistens Spaß gemacht, aber ich war eben nie besonders gut. Statistik und Stochastik sind mir bis heute beispielsweise ein Rätsel. Ich hatte das Bedürfnis, die Gleichung aus dem Spiel zu lösen — das, was in dem Buch stand, konnte nicht stimmen. Also kramte ich in meinem Kopf in einer Kiste mit der Aufschrift „Mathe 10. Klasse“ und begann, die beiden Brüche auf einen Nenner bringen, in dem ich jeden Bruch mit dem Nenner des anderen erweiterte:</p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mfrac><mrow><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mn>4</mn><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mfrac><mrow><mn>4</mn><mo>⋅</mo><mn>4</mn></mrow><mrow><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mn>4</mn></mrow></mfrac><mo>=</mo><mn>0</mn></mstyle></math> </p> <p>Danach ziehe ich beide Brüche auf einen Bruchstrich ...</p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mfrac><mrow><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>-</mo><mn>16</mn></mrow><mrow><mn>4</mn><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>=</mo><mn>0</mn></mstyle></math> </p> <p>... um anschliessend die zweite binomische Formale auszumultiplizieren</p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mfrac><mrow><msup><mi>x</mi><mn>2</mn></msup><mo>-</mo><mn>2</mn><mi>x</mi><mo>+</mo><mn>1</mn><mo>-</mo><mn>16</mn></mrow><mrow><mn>4</mn><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>=</mo><mn>0</mn></mstyle></math> </p> <p>Nun multipliziere ich beide Seiten der Gleichung mit <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mn>4</mn><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mstyle></math>, um den Bruch aufzulösen.</p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msup><mi>x</mi><mn>2</mn></msup><mo>-</mo><mn>2</mn><mi>x</mi><mo>+</mo><mn>1</mn><mo>-</mo><mn>16</mn><mo>=</mo><mn>0</mn><mo>⇒</mo><msup><mi>x</mi><mn>2</mn></msup><mo>-</mo><mn>2</mn><mi>x</mi><mo>-</mo><mn>15</mn><mo>=</mo><mn>0</mn></mstyle></math> </p> <p>Diese beiden Schritte hätte ich auch in umgekehrter Reihenfolge machen können.</p> <p>Hört ihr das? Wir haben eine <a href="https://de.wikipedia.org/wiki/Quadratische_Gleichung">quadratische Gleichung</a>, die nach der <a href="https://de.wikipedia.org/wiki/Quadratische_Gleichung#L.C3.B6sungsformel_f.C3.BCr_die_Normalform_.28p-q-Formel.29">pq-Formel</a> mit <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mi>p</mi><mo>=</mo><mrow><mo>-</mo><mn>2</mn></mrow><mo>,</mo><mi>q</mi><mo>=</mo><mrow><mo>-</mo><mn>15</mn></mrow></mstyle></math> schreit.</p> <p>Wir müssen noch überprüfen, ob die Diskriminante <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mi>D</mi></mstyle></math> negativ ist: <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mi>D</mi><mo>=</mo><msup><mi>p</mi><mn>2</mn></msup><mo>-</mo><mn>4</mn><mi>q</mi><mo>;</mo><mi>p</mi><mo>=</mo><mrow><mo>-</mo><mn>2</mn></mrow><mo>,</mo><mi>q</mi><mo>=</mo><mrow><mo>-</mo><mn>15</mn></mrow><mo>⇒</mo><mi>D</mi><mo>=</mo><mn>4</mn><mo>-</mo><mn>4</mn><mo>⋅</mo><mrow><mo>(</mo><mrow><mo>-</mo><mn>15</mn></mrow><mo>)</mo></mrow><mo>=</mo><mn>4</mn><mo>+</mo><mn>60</mn><mo>=</mo><mn>64</mn></mstyle></math>, passt also, her mit der <em>normalen</em> pq-Formel.</p> <p>Der Rest ist einsetzen und ausrechnen oder einen Taschenrechner bemühen:</p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub><mo>=</mo><mfrac><mrow><mo>-</mo><mi>p</mi></mrow><mn>2</mn></mfrac><mo>±</mo><msqrt><mrow><msup><mrow><mo>(</mo><mfrac><mi>p</mi><mn>2</mn></mfrac><mo>)</mo></mrow><mn>2</mn></msup><mo>-</mo><mi>q</mi></mrow></msqrt><mo>;</mo><mi>p</mi><mo>=</mo><mrow><mo>-</mo><mn>2</mn></mrow><mo>,</mo><mi>q</mi><mo>=</mo><mrow><mo>-</mo><mn>15</mn></mrow></mstyle></math> </p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub><mo>=</mo><mfrac><mn>2</mn><mn>2</mn></mfrac><mo>±</mo><msqrt><mrow><msup><mrow><mo>(</mo><mfrac><mrow><mo>-</mo><mn>2</mn></mrow><mn>2</mn></mfrac><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><mn>15</mn></mrow></msqrt></mstyle></math> </p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub><mo>=</mo><mn>1</mn><mo>±</mo><msqrt><mrow><msup><mrow><mo>(</mo><mrow><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><mn>15</mn></mrow></msqrt></mstyle></math> </p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub><mo>=</mo><mn>1</mn><mo>±</mo><msqrt><mrow><mn>16</mn></mrow></msqrt></mstyle></math> </p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub><mo>=</mo><mn>1</mn><mo>±</mo><mn>4</mn></mstyle></math> </p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mn>1</mn></msub><mo>=</mo><mn>5</mn><mo>,</mo><msub><mi>x</mi><mn>2</mn></msub><mo>=</mo><mrow><mo>-</mo><mn>3</mn></mrow></mstyle></math> </p> <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><mi>q</mi><mo>.</mo><mi>e</mi><mo>.</mo><mi>d</mi><mo>.</mo></mstyle></math> </p> <p>In die Ursprungsgleichung eingesetzt, ergeben sowohl <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mn>1</mn></msub></mstyle></math>, als auch <math xmlns="http://www.w3.org/1998/Math/MathML"><mstyle><msub><mi>x</mi><mn>2</mn></msub></mstyle></math> eine wahre Aussage. Diese Rechnung weicht ein bisschen von der aus dem Spiel ab. Da mir im Matheunterricht regelmässig Flüchtigkeits- und/oder Vorzeichenfehler unterlaufen sind, war ich immer noch skeptisch. Ich schoss mit Kanonen auf Spatzen und schmiss ein CAS an. Auch das bestätigte mir meine beiden Ergebnisse und ich war zufrieden.</p> <p><img alt="Screenshot vom CAS" src="https://bullenscheisse.de/img/Life_is_strange_CAS.png"/></p> <p>Warum die Gleichung mit Rechenfehlern auf der Seite von Warren in Max' Tagebuch stehen? Keine Ahnung, aber vielleicht erfährt man das irgendwann in einer der anderen Episoden.</p> Ich male mir die Welt tag:bullenscheisse.de,2017-09-19:/2017/ich-male-mir-die-welt 2017-09-19T17:55:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Im Moment habe ich den Eindruck, dass progressive Menschen – ich zähle mich dazu – zu viel auf rechte Provokationen und Ideen reagieren. Es ist wichtig, sich rechten Menschen und ihren Ideen entgegenzustellen und ihnen zu zeigen, dass ihre Ansichten nicht willkommen sind. Gleichzeitig habe ich den Eindruck, dass wir zu wenig konstruktiv agieren, aber über jedes Stöckchen, das Rechte uns hinhalten, springen.</p> <p>Auch Susanne von Literaturschock twitterte etwas ähnliches:</p> <blockquote class="twitter-tweet" data-lang="de"><p lang="de" dir="ltr">Wie wäre es, wenn wir endlich mal agieren, anstatt immer zu reagieren? Lasst uns endlich die Initiative ergreifen und selbst Themen machen! <a href="https://t.co/VyYG2MXTQ7">https://t.co/VyYG2MXTQ7</a></p>&mdash; Literaturschock (@literaturschock) <a href="https://twitter.com/literaturschock/status/909753840815263744">18. September 2017</a></blockquote> <p><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script></p> <p>Wir müssen uns für Menschlichkeit rechtfertigen. Menschen müssen sich dafür rechtfertigen, dass sie andere Menschen vor dem Ertrinken bewahren. Eigentlich sollten sich Menschen für Unmenschlichkeit rechtfertigen und verantworten müssen. Dafür, dass sie Menschen in den Tod schicken. Wir widerlegen Aussagen von Alice Weidel, während sie schon wieder die nächsten tätigt und Ängste und Vorurteile nutzt, um Wähler_innenstimmen zu bekommen.</p> <p>Dieser Blogpost ist quasi eine Folge meiner Session vom diesjährigen Barcamp in Stuttgart. Dort stand folgende Frage zur Diskussion: In was für einer Welt wollen wir leben, wenn Fakten keine Rolle spielen? Und warum? Mit „Welt“ war „Welt“ im Sinne von „Gesellschaft“ gemeint. Dass wir auf unseren blauen Planeten achten müssen, das versteht sich von selbst. Ohne Planet keine Gesellschaft.</p> <p>Auf dem Barcamp fand sich eine kleine, feine Runde zusammen, die darüber diskutierte. Wir hatten leider mehr als einmal das Problem, dass wir nicht mehr über die ideale Welt diskutierten, sondern darüber, was heute schief läuft. </p> <p>Auch wenn wir am Schluss genau dahin abgedriftet sind, war es eine sehr interessante Session. Ich möchte euch auf diesem Weg für die Teilnahme und den Austausch danken.</p> <p>Im Folgenden möchte ich gerne umreißen, in was für einer Gesellschaft ich gerne leben würde. Sie ist nicht perfekt, geschweige denn detailliert, vollständig oder gar bis zum Schluss durchdacht. Vielmehr stellt dieser Blogpost den Versuch dar, einen Gegenentwurf zu der Welt, wie Rechte/Konservative/... sie sich vorstellen, zu formulieren. Er ist keine Antwort und keine Anleitung, sondern vielmehr eine Sammlung loser Gedanken und Wünsche.</p> <p>Es gibt wesentlich klügere Menschen als mich und ich würde mich freuen, wenn du dir ebenfalls Gedanken dazu machst, in was für einer Welt du leben möchtest. Schreibe doch einen eigenen Blogpost oder verfasse einen Kommentar.</p> <h4>Keine Grenzen</h4> <p>Grenzen gibt es generell zu viele. Manche sind räumlicher oder geographischer Natur, andere menschlicher. Einige sind sinnvoll, viele konstruiert. Ich würde mir wünschen, dass wir zum Wohle aller daran arbeiten, Grenzen, die trennen, miteinander zu überwinden.</p> <p>Ich will in einer Welt leben, in der jeder Mensch leben kann, wo oder wie er_sie leben möchte. Niemand kann beeinflussen, wo er_sie geboren wurde, trotzdem wird er_sie heute dafür verantwortlich gemacht.</p> <p>Dort, wo du lebst, herrscht Krieg? Du sollst keine Angst haben müssen, mit deiner Familie dorthin zu gehen, wo Frieden herrscht. Du sollst keine Angst haben müssen, zurück in den Krieg geschickt zu werden. Dort, wo du lebst, herrschen Hunger oder Armut? Wenn dir keine_r hilft, sollte dich niemand daran hindern, dorthin zu gehen, wo es genug zu essen gibt. Du sollst keine Angst haben müssen, dorthin zurück geschickt zu werden, wo Armut oder Hunger herrschen. Dort, wo du lebst, gefällt es dir einfach nicht? Du sollst dahin gehen können, wo es dir mehr zusagt.</p> <p>Ich will in einer Welt leben, in der auf Inklusion und Barrierefreiheit geachtet wird und sie konsequent umgesetzt werden. Ich will in einer Welt leben, in der niemand diskriminiert wird. In der jeder Mensch die gleichen Rechte genießt, unabhängig davon, wo oder wie er_sie lebt. Ich möchte in einer Welt leben, in der jeder Mensch alleine aufgrund der Tatsache, dass er_sie ein Mensch ist, Rechte genießt, die ihm_ihr nicht abgesprochen werden können.</p> <p>Ich will in einer Welt leben, in der Freiheit höher gehalten wird als Sicherheit. Gleichzeitig möchte ich in einer Welt leben, in der jede_r die Grenzen seines_ihres Gegenübers respektiert.</p> <h4>Solidarität und Mitmenschlichkeit</h4> <blockquote> <p>Wir müssen alle mehr miteinander reden.</p> <p>Ist alles okay, Alter, biste glücklich mit deinem Leben </p> <p>— Veedle Kaztro, <a href="https://www.youtube.com/watch?v=On2tL3GeS7k">Mehr Glück als Verstand</a></p> </blockquote> <p>Ich möchte in einer Welt leben, in der Menschen nicht nur die Grenzen der Mitmenschen, sondern auch auf die Mitmenschen achten. Mit ihnen reden. Nachfragen. Bedingungslos Hilfe anbieten. Und dann bedingungslos helfen.</p> <p>Niemand sollte Angst haben müssen, nach Hilfe zu fragen. Niemand sollte sie einem Menschen verwehren können. Ich möchte in einer Welt leben, in der Leistung nicht erwartet oder gefordert, aber gewürdigt wird. Ich möchte in einer Welt leben, in der jede_r gibt, was er_sie kann, und sich das nimmt, was er_sie benötigt. Es gibt genug.</p> <p>Ich möchte in einer Welt leben, in der man einander vertraut. Gemeinsam Probleme löst. In der ich meine Haustür nicht abschließen muss. In der niemand Angst haben muss. Ich möchte in einer Welt leben, in der die Menschen mutig sind. Sich trauen, neue Dinge auszuprobieren und ein Scheitern nicht als Fehlschlag, sondern als Wissen wahrnehmen und miteinander teilen.</p> <p>Dass Menschen durch ein bedingungsloses Grundeinkommen genau dazu motiviert werden sollen, neue Dinge zu erproben, kam natürlich auch zur Sprache. <a href="https://twitter.com/stollen69">Torsten</a> formulierte in Hinblick darauf:</p> <blockquote> <p>Eine Gesellschaft sollte sich mit dem Gedanken anfreunden, einige Menschen, die nichts leisten können, ohne Bedingung versorgen zu können.</p> </blockquote> <p>Wir können das. Ohne Probleme. Es scheitert eher am Wollen. Es ist leider keine Frage der Finanzen, sondern mangelnder Mitmenschlichkeit.</p> <p>Für mich gehört dazu auch, dass Menschen unterschiedlich viel Hilfe benötigen und erhalten und sich niemand beschwert, dass jemand anderes mehr bekommt. Wir sind alle unterschiedlich. Menschen, denen das Leben mehr Steine als anderen in den Weg gelegt hat, sollten andere Menschen keine zusätzlichen in den Weg legen, sondern helfen, die vorhandenen zu entfernen.</p> <p>Auch das hat wieder mit Grenzen zu tun: Jemand legt dir Steine in den Weg oder grenzt dich aus? Lass uns die Steine gemeinsam aus deinem Weg räumen und die Grenze einreißen.</p> <h4>Sharing Society</h4> <p>Ich möchte in einer Welt leben, in der Besitz und Eigentum geteilt wird. <a href="https://www.gesetze-im-internet.de/gg/art_14.html">Artikel 14, Absatz 2 GG</a> beschreibt es sehr schön:</p> <blockquote> <p>Eigentum verpflichtet. Sein Gebrauch soll zugleich dem Wohle der Allgemeinheit dienen.</p> </blockquote> <p>Ich habe den Eindruck, dass Eigentum momentan eher dem Wohle Einzelner als dem der Allgemeinheit dient. Was aktuell (noch) nicht gut ist, war und ist aber nicht Thema dieses Beitrags.</p> <p>Ich fände es schön, wenn Menschen selbstlos ihren Besitz der Allgemeinheit zur Verfügung stellen würden, ohne eine Gegenleistung – sei es Geld, Gefallen oder Dinge – dafür zu verlangen, weil sie wissen, dass ihnen, wenn sie etwas benötigen, das sie nicht haben, geholfen wird.</p> <p>Natürlich kann man nicht alles teilen. Beispielsweise möchte ich nicht, dass jemand in meinen persönlichen Erinnerungsgegenständen wühlt. Die Grenze dessen, was geteilt werden kann, zu dem, was nicht geteilt werden sollte, ist schwer zu ziehen. Am ehesten kommt mir da die persönliche Grenze einer_s jeden Einzelnen in den Sinn.</p> <p>Ich möchte in einer Gesellschaft leben, in der Krankenhäuser, Bildungseinrichtungen, Netze (Strom, Wasser, Abwasser, Gas, Kommunikation, Verkehr, etc.) allen gehören. Jeder Mensch sollte sie nutzen dürfen. Ich finde es schwierig, dass mit gewissen Dingen Geld verdient wird. Gesundheit, Bildung und Mobilität dürfen keine Frage des Geldes sein.</p> <p>So wir uns Leitern, ein bisschen Mehl oder ein Bügeleisen von unseren Nachbar_innen leihen, sollten wir mehr miteinander teilen.</p> <h4>Ruhe, Besonnenheit und Verantwortung</h4> <p>In meiner idealen Welt stellt Lautstärke kein Argument dar. Die Menschen denken in Ruhe nach, sie diskutieren, sie streiten, sie sind sich uneinig, aber sie arbeiten auf einen Konsens hin. Sie spalten nicht. Sie handeln besonnen.</p> <p>Sie vertrauen einander und stellen niemanden unter Generalverdacht. Sie achten die Unschuldsvermutung.</p> <p>Gleichzeitig übernehmen sie freiwillig die Verantwortung für ihr Handeln. Ich möchte in einer Welt leben, in der niemand dem_der Anderen schadet. Ich will in einer Gesellschaft leben, in der Menschen vergeben.</p> <p>Und <em>menschlich</em> sind.</p> Elite. My ass. tag:bullenscheisse.de,2017-09-03:/2017/elite-my-ass 2017-09-03T15:45:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich war heute laufen, das erste Mal seit drei Wochen. Dazwischen saß ich gelegentlich auf dem Fahrrad und eigentlich möchte ich wieder mehr Sport treiben. Wenn ich laufe oder Rad fahre, nehme ich meistens (immer) mein Handy mit. Es zeichnet auf, wo ich mich zu welchem Zeitpunkt womit wie schnell bewege. Es motiviert mich, wenn ich sehe, wie weit ich gelaufen bin, wie schnell ich war, was ich erreicht habe.</p> <p>Die letzten vier Jahre nutzte ich dafür eine App, die in der Grundversion mit Werbung und ohne viele Features kostenlos ist. Die sogenannte „Elite“-Version, kaufbar per In-App-Purchase kostete 5,99€ pro Jahr. Dafür kann ich dann ein paar erweiterte Statistiken oder eine Historie sehen. 50 Cent pro Monat war mir diese Spielerei wert.</p> <p>Als ich mir heute die Laufschuhe angezogen habe, aus der Tür trat und die App startete, verkündete sie mir stolz, dass mein „Elite“-Abo abgelaufen sei. Für nur 10,99 Euro käme ich aber ein weiteres Jahr in den Genuss der „Elite“-Funktionen. Der Preis hat sich nahezu verdoppelt. Aus Frust lud ich mir dannn eine andere App herunter, die das gleiche macht, mich aber nicht mit Werbung begrüsst. Es war nicht mein bester Lauf.</p> <p>Ich höre mich sagen: „Mensch, Nathan, dann kostet dich diese Spielerei jetzt halt <a href="https://www.youtube.com/watch?v=yYEVSvwQQ_8">1</a> Euro pro Monat. Jetzt stell dich nicht so an!“. Es ärgert mich trotzdem. Wahrscheinlich werde ich in den sauren Apfel beißen und mir dieses Abo für ein weiteres Jahr holen. Ich hätte mir einfach nur vorher einen Hinweis gewünscht. „Hey, dein Abo läuft in einem Monat aus, willst du das nicht erneuern? Aus folgenden Gründen haben wir unseren Preis angepasst.“ fühlt sich wesentlich besser an als ein „Hey, dein Abo ist ausgelaufen! Doppelter Preis!“, wenn man sich eigentlich überhaupt nicht damit befassen will. Und wahrscheinlich hätte es auch dafür gesorgt, dass ich diese doofe „Elite“-Abo einfach verlängert hätte.</p> <p>Jetzt bin ich mir doch nicht mehr so sicher, ob ich es wirklich will oder ob mir die andere App nicht vollkommen ausreicht.</p> Update zur Abmahnung wegen wir-sind-afd.de tag:bullenscheisse.de,2017-05-17:/2017/update-zur-abmahnung-wegen-wir-sind-afd-de 2017-05-17T21:20:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Anfang April fand ich eine Abmahnung der <a href="http://www.hoecker.eu">Kölner Kanzlei Höcker</a> in meinem Emailpostfach. Weil seit Anfang April ein bisschen Zeit vergangen ist, bin ich euch ein Update schuldig.</p> <p>Die Alternative für Deutschland, manchmal abgekürzt mit AfD (was aber auch <em><a href="https://encrypted.google.com/search?hl=de&amp;q=aktenordner+für+dänemark">Aktenordner für Dänemark</a></em> bedeuten könnte. Oder <em><a href="https://bullenscheisse.de/img/IMG_129_Allgemeiner_Finanzdienst.png">Allgemeiner Finanzdienst</a></em>.) hatte die Kanzlei Höcker beauftragt, mir eine Abmahnung mitsamt Unterlassungserklärung zukommen zu lassen. Sie schrieben:</p> <blockquote> <p>Grund unserer Einschaltung ist, dass Sie die Domain wir-sind-afd.de registriert haben. Hierdurch wird das Namensrecht unserer Mandantin nach §12 BGB verletzt.</p> </blockquote> <p>Gleichzeitig hatte die Kanzlei Höcker einen <a href="https://www.denic.de/service/dispute/">DISPUTE-Antrag bei der Denic</a> gestellt. Das bedeutet, dass die Domain automatisch an die Alternative für Deutschland fällt, wenn ich sie lösche.</p> <p>Die Unterlassungserklärung hätte mich genau dazu verpflichtet: Ich sollte die Domain löschen. Außerdem soll ich für die Abmahnkosten der Alternative für Deutschland aufkommen. Die Kölner Kanzlei kam auf einen Streitwert von 30.000€, davon leiteten sich die Abmahnkosten von knapp 1400€ ab.</p> <p><img alt="Screenshot der Abmahnkosten" src="https://bullenscheisse.de/img/IMG_128_AfD_Abhmahnung.png"/></p> <p>Und weil das ganze so wahnsinnig dringend ist (vielleicht wegen der Bundestagswahl?), würde das keine Fristverlängerung dulden. Die Kanzlei Höcker schrieb:</p> <blockquote> <p>Eine Fristverlängerung kommt aufgrund der Dringlichkeit nicht in Betracht.</p> </blockquote> <p>Nach ein paar Tagen Panik und einem <a href="https://twitter.com/zeitschlag/status/849674082689929216">Hilferuf auf Twitter</a> hatte ich eine Kanzlei: <a href="http://www.beckerbuettnerheld.de/de/">Becker Büttner Held</a> baten um eine Fristverlängerung. Und, oh Wunder, auf einmal war dann doch eine Fristverlängerung möglich.</p> <p>Fristgerecht teilten meine Anwälte der Kölner Kanzlei dann mit, dass sie mir nur davon abraten könnten, die beigefügte Unterlassungserklärung zu unterzeichnen. Weiterhin schrieben sie:</p> <blockquote> <p>Eine Löschung oder Herausgabe der Domain durch unseren Mandanten wird nicht erfolgen.</p> </blockquote> <p>Die Reaktion der Kanzlei Höcker kam relativ schnell. Sie wollten wissen, ob sie meine Anwälte als Prozessbevollmächtigte in die Klage aufnehmen könnten. Das war am 25. April, seitdem ist es ruhig. Die Sache scheint aber noch nicht ausgestanden zu sein. Falls es Neuigkeiten gibt, mache ich mich bemerkbar.</p> <p>Bevor es noch untergeht, möchte ich mich noch bei allen bedanken, die mir irgendwie beistanden. Vielen Dank für Eure Retweets und Solidaritätsbekundungen und dass ihr mir den Rücken gestärkt habt. In so einer Situation zu merken, dass man sowas nicht alleine durchstehen muss, tut unglaublich gut. Und natürlich auch vielen Dank an meine Anwälte! Ihr seid super.</p> Gehalt - Ein kurzes Update tag:bullenscheisse.de,2017-05-10:/2017/gehalt-ein-kurzes-update 2017-05-10T14:40:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Letztes Jahr schrieb ich über mein <a href="https://bullenscheisse.de/2016/gehalt/">Gehalt</a>. In der Zwischenzeit haben sich zwei Dinge verändert:</p> <p>Zum Einen habe ich eine Gehaltserhöhung bekommen. Die Unterteilung in festen (95%) und variablen Anteil (5%) gibt es immer noch. Statt 36 100€ fix und 1 900€ variablen Anteil pro Jahr verdiene ich jetzt ein Zielgehalt von 41 800€ (39 710€/2090€), wenn ich Vollzeit arbeiten würde.</p> <p>Wenn. Denn zum Anderen bin ich Anfang 2017 in Teilzeit gewechselt und arbeite nur noch vier Tage die Woche. Das gibt natürlich weniger Geld (der fixe, monatliche Anteil sind brutto ~2650€), aber dafür gibt es etwas so viel Wertvolleres: Zeit.</p> Einkaufszettl 0.5.5 tag:bullenscheisse.de,2017-05-03:/2017/einkaufszettl-0-5-5 2017-05-03T07:48:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Wenn nur wenige Tage nach dem letzten Release eine neue Version vom <a href="https://bullenscheisse.de/einkaufszettl/">Einkaufszettl</a> erscheint, dann ist bisher immer irgendetwas faul gewesen. Ich habe die erste neue Version nicht sorgfältig genug getestet, ich habe einen Bug übersehen oder einen neuen eingebaut. </p> <p>Man könnte aber auch behaupten, dass jedes neue Release die App ein bisschen besser werden lässt, also alles halb so wild.</p> <p>So auch die Version 0.5.5, die einige Kleinigkeiten in den Einstellungen verbessert:</p> <blockquote> <ul> <li>Wenn Du dabei bist, die Reihenfolge der Kategorien zu ändern und merkst, dass Du damit nicht zufrieden bist, kannst Du die Änderungen einfach verwerfen, wenn Du auf "Zurück" tappst. (#21)</li> <li>Gleiches gilt für die Sichtbarkeit der Kategorien: Wenn Du nicht auf "Speichern" tappst, wird nichts gespeichert. (#22)</li> </ul> </blockquote> <iframe src="https://player.vimeo.com/video/215898294?color=cc0000&amp;title=0&amp;byline=0&amp;portrait=0" width="640" height="1140" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> <p>Das Update ist bereits durch die Review durch und steht seit zwei Tagen <a href="https://itunes.apple.com/de/app/einkaufszettl/id1016435355?l=de&amp;ls=1&amp;mt=8">im App Store zum Download bereit</a>. Auch wenn Apple letzte Woche die <a href="https://www.heise.de/newsticker/meldung/Viele-iPhone-Apps-nun-teurer-3701488.html">Preise für Apps angehoben hat</a>, den Einkaufszettl gibt's weiterhin für schlanke 99 Cent.</p> <p>Apropos schlank: Vor einigen Tagen dachte ich auf chaos.social über die Größe des Einkaufszettl nach. Dadurch, dass er mittlerweile auch Swift enthält, ist er auf knapp 10MB angewachsen, ziemlich viel für so eine kleine App.</p> <p>Testweise baute ich dann <a href="https://chaos.social/@zeitschlag/77998">mal sämtlichen Swift-Code aus</a>, die App wurde dann <a href="https://chaos.social/@zeitschlag/99492">mit nur 1MB auch wieder viel leichter</a>. Nichts desto trotz bietet Swift für mich als Entwickler auch einige Vorteile, deshalb jetzt die Frage: Willst Du lieber eine wirklich schlanke App oder sind 10MB für Dich auch in Ordnung? Was denkst Du dazu? Ich freue mich auf Deine Meinung.</p> <p>Das gilt natürlich auch für generelles Feedback zum Einkaufszettl. Du hast eine Frage, Dir ist ein Fehler aufgefallen oder Du hast eine Idee, die die App noch besser macht? Dann schreib Dein Feedback in die Kommentare, via <a href="https://twitter.com/zeitschlag">Twitter</a>, <a href="https://chaos.social/@zeitschlag/">Mastodon</a> oder auch als <a href="https://bullenscheisse.de/2017/einkaufszettl-0-5-5/mailto:einkaufszettl@bullenscheisse.de">Mail</a>. Vielen Dank!</p> Einkaufszettl 0.5.4 tag:bullenscheisse.de,2017-04-21:/2017/einkaufszettl-0-5-4 2017-04-21T21:01:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Es gibt Neuigkeiten zum <a href="https://bullenscheisse.de/einkaufszettl/">Einkaufszettl</a>. Also eigentlich gibt es nur eine neue Version im App Store. Ich zitiere mal aus den Release Notes:</p> <blockquote> <p>Diese Version wäre nicht notwendig gewesen, hätte der Entwickler ein bisschen mehr Sorgfalt an den Tag gelegt. Vielleicht wäre ihm der Bug, den diese Version behebt, dann aufgefallen:</p> <p>Wenn Du als Nutzer_in eigene Kategorien hinzugefügt hast, konnte es passieren, dass die Reihenfolge der Kategorien durcheinander kam.</p> <p>Vielen Dank an Manon, dass Du den Fehler gemeldet hast! Der Entwickler hat (hoffentlich) aus seinem Fehler gelernt und wird jetzt (noch) mehr Sorgfalt an den Tag legen.</p> </blockquote> <p>Das Update steht im App Store <a href="https://itunes.apple.com/de/app/einkaufszettl/id1016435355?l=de&amp;ls=1&amp;mt=8">zum Download bereit</a>. Hast Du Fragen oder Verbesserungsvorschläge? Dann freue ich mich darauf, von Dir zu hören! Hinterlasse hier doch einfach einen Kommentar oder schreibe mir eine <a href="https://bullenscheisse.de/2017/einkaufszettl-0-5-4/mailto:einkaufszettl@bullenscheisse.de">Email</a>.</p> Der Einkaufszettl - 2015 und 2016 tag:bullenscheisse.de,2017-03-18:/2017/der-einkaufszettl-2015-und-2016 2017-03-18T04:10:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>2016 war in vielerlei Hinsicht ein schlechtes Jahr: Donald Trump. Viele bekannte Menschen sind gestorben. Donald Trump. Kommen wir also schnell zum eigentlichen Thema: Dem <a href="https://bullenscheisse.de/einkaufszettl/">Einkaufszettl</a>.</p> <p>Du wirst dich jetzt fragen: Der Einkaufszettl? Gibt's den noch? Diese total billige App von - wie hieß er gleich noch? Ja, gibt's noch. Man munkelt, dass es sogar den einen oder anderen Nutzer neben mir gibt. Wieviele ihn aber tatsächlich nutzen, weiß ich nicht.</p> <p>Das eigentliche Thema dieses Blogposts ist es, ein paar Zahlen und Statistiken festzuhalten, wie sich der Einkaufszettl 2016 geschlagen hat. Und weil er im Herbst 2015 erschienen ist, möchte ich auch auf 2015 eingehen.</p> <h4>Verkäufe</h4> <p>Einige Unternehmen und Menschen legen ihre Zahlen offen oder blicken auf das vergangene Jahr zurück. Ich schätze diese Transparenz und den Mut:</p> <ul> <li>Marco Arment veröffentlichte die Verkäufe von <a href="https://overcast.fm/">Overcast</a> <a href="https://marco.org/2015/01/15/overcast-sales-numbers">in 2014</a>. </li> <li>Auch bei Monument Valley kann man nachlesen, <a href="http://blog.monumentvalleygame.com/blog/2015/1/15/monument-valley-in-numbers">wie es sich verkaufte</a>.</li> <li>The Omni Group blickt jedes Jahr zurück und voraus (<a href="https://www.omnigroup.com/blog/looking-back-looking-ahead-2017-edition">2016</a>, <a href="https://www.omnigroup.com/blog/looking-back-looking-ahead-2016-edition">2015</a>, <a href="https://www.omnigroup.com/blog/a-review-of-the-omni-groups-2014-and-our-plans-for-2015">2014</a>, <a href="https://www.omnigroup.com/blog/looking-back-at-2013-and-ahead-to-2014">2013</a>)</li> <li>Panic hat auch noch einen Jahresrückblick von <a href="https://panic.com/blog/the-2015-panic-report/">2015</a> im Angebot. Und <a href="https://panic.com/blog/the-2014-panic-report/">2014</a>.</li> <li>Die sinnwerkstatt hat eine <a href="https://www.ecogood.org">Gemeinwohl-Bilanz</a> für <a href="https://sinnwerkstatt.com/gemeinwohl-2013/">2013</a> veröffentlicht, ebenso die <a href="https://www.sparda-m.de/pdf/sparda-m/gemeinwohlbericht_2013_2014.pdf">Sparda-Bank in München</a>.</li> </ul> <p>Bei solchen Hochkarätern darf die beste Einkaufszettl-App natürlich nicht fehlen! Eigentlich wollte ich das letztes Jahr schon machen, aber da habe ich mich dann im Endeffekt nicht getraut.</p> <p>Als ich den Einkaufszettl im September 2015 in den App Store brachte, war ich ein bisschen stolz auf mich. Mir war (und ist) klar, dass es wesentlich bessere Einkaufszettel-Apps gibt, eine Liste von Alternativen findet ihr <a href="https://bullenscheisse.de/einkaufszettl/">hier in den FAQs</a>:</p> <blockquote> <p>Da wären zum Beispiel noch: <a href="http://www.milkforus.com/de/">Milk for Us</a>, <a href="https://itunes.apple.com/de/app/groceries-4/id707587897?l=en&amp;mt=8">Groceries 4</a>, <a href="https://getbring.com/#!/app">Bring!</a>, <a href="https://www.rememberthemilk.com/">remember the milk</a>, <a href="https://buymeapie.com/de">Buy me a pie!</a>, <a href="https://www.ourgroceries.com/overview">Our Groceries</a>, <a href="https://www.anylistapp.com/">anylist</a>, <a href="http://app.ponlist.de/">pon</a>...</p> </blockquote> <p>Eine Todo-Liste - nichts anderes ist der Einkaufszettl ja im Prinzip - ist heute das neue "Hello, World!": Jeder Anfänger programmiert sowas heutzutage. Außerdem wurde die <a href="https://itunes.apple.com/de/app/groceries-4/id707587897?l=en&amp;mt=8">Einkaufsliste</a>, die ich nutzte, nicht mehr weiterentwickelt. Grund genug also, einfach mal irgendwo anzufangen.</p> <h5>2015</h5> <p>Als ich Apple im April 2015 die $99 von meiner Prepaid-Kreditkarte abbuchen ließ, war ich ganz aufgeregt. Ich meldete ein Gewerbe an und kam mir richtig erwachsen vor. Gleichzeitig war ich so euphorisch und motiviert, ich setzte mir sogar ein Ziel: Die $99, die mich das Apple Developer Program gekostet hatte, sollte der Einkaufszettl wieder einspielen.</p> <p>Die Gewissheit, dass ich nicht darauf angewiesen war und bin, mit dem Einkaufszettl mein Lebensunterhalt zu verdienen, ließ es mich einfach probieren. Falls alle Stricke reißen würden, könnte ich das notfalls auch noch als Hobby verbuchen.</p> <p>Ich entwickelte also vor mich hin, entwarf das Icon, lernte viel, bastelte eine <a href="https://bullenscheisse.de/einkaufszettl/">kleine, einfache Website</a> und schrieb nebenbei meine Bachelorarbeit über ein ganz anderes Thema. Ich wollte den Einkaufszettl gut machen.</p> <p>Am 19. September 2015 war es dann soweit: Der Einkaufszettl 0.2 erreichte den App Store. 0.2 deswegen, weil mir 1.0 nicht angemessen erschien und er mir für eine 0.1 zu gut erschien.</p> <p>In der ersten öffentlichen Version konnte man noch nicht so wirklich viel. Es war die besagte Todo-Liste mit vordefinierten Produkten und der Möglichkeit, diese per Wisch-Geste als gekauft zu markieren.</p> <p>Am 30. Oktober, kam mit der Version 0.3 das erste Update. Ein Badge am Icon, die Möglichkeit, einzelne Produkte umzubenennen, und eine Erfolgsmeldung, falls man alle Einkäufe erledigt hatte, hielten Einzug.</p> <p>Anfangs verkaufte ich den Einkaufszettl für 1,99€, pro Verkauf blieben nach Steuern und Apples 30% ungefähr 1,10€. Das war einer der Gründe, warum ich ihn nicht für 99 Cent anbot. Davon wären mir 55 Cent geblieben und das war mir zu wenig.</p> <p>Über ein Jahr verteilt bräuchte ich also 90 Verkäufe. 7,5 Verkäufe im Monat erschienen mir realistisch. Ich war zu optimistisch.</p> <p><img alt="Übersicht über die Verkäufe vom Einkaufszettl im Jahr 2015" src="https://bullenscheisse.de/img/IMG_125_Einkaufszettl_2015.png"/></p> <p>2015 kauften zwölf Menschen den Einkaufszettl, drei nutzten einen Gutscheincode, einer davon war ich. Insgesamt betrug der Umsatz <strong>$27,32</strong>, von denen als Gewinn <strong>$16,16</strong> übrig blieben</p> <p>Trotz allem war ich stolz wie Bolle, als Anfang 2016 - ironischerweise an meinem ersten Arbeitstag als angestellter Vollzeit-iOS-Entwickler - die erste Überweisung von Apple kam: 11,13€.</p> <blockquote class="twitter-tweet" data-cards="hidden" data-lang="de"><p lang="de" dir="ltr">Die erste Auszahlung vom <a href="https://twitter.com/hashtag/einkaufszettl?src=hash">#einkaufszettl</a> ist da. Hab schon gekündigt. Rente, ich komme! <a href="https://t.co/rvguq82e3f">pic.twitter.com/rvguq82e3f</a></p>— Nathan (@zeitschlag) <a href="https://twitter.com/zeitschlag/status/684044337668321280">4. Januar 2016</a></blockquote> <p><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script></p> <p>Auch wenn etwas mehr als 11€ eher eine kleine Summe sind, es fühlte sich gut an: Du hast da was gemacht und du bist stolz darauf und dann bekommst Du Geld dafür. Das war ein schönes Gefühl.</p> <h5>2016</h5> <p>Nachdem ich mein Ziel, monatlich 7,5 Einkaufszettl zu verkaufen, 2015 nicht erreicht habe, wollte ich es 2016 erneut versuchen. Gleichzeitig nahm ich mir vor, mehr Zeit in das Projekt zu stecken. Notfalls würde ich es eben als Hobby verbuchen.</p> <p>Im Januar 2016 nahm ich meinen ersten richtigen Job nach dem Studium als angestellter iOS-Entwickler bei der <a href="https://de.wikipedia.org/wiki/T-Systems_Multimedia_Solutions">MMS</a> in Berlin an. Am 5. Februar 2016 kam der Einkaufszettl 0.4.0 in den App Store. Mit diesem Update kamen endlich die Kategorien. Vorher waren die Produkte einfach alphabetisch angeordnet, was - zugegebenermaßen - keine sonderlich gute Idee war - im Supermarkt stehen Basilikum und Baguette ja auch nicht direkt nebeneinander. Stattdessen waren jetzt die Produkte jetzt nach Kategorien sortiert. Zwei Wochen später kam dann das Bugfix-Release 0.4.1, weil ich bei der 0.4.0 nicht sorgfältig genug war.</p> <p>Ende März kam dann die nächste Auszahlung: 9,35€.</p> <p>Im April wollte Apple dann wieder die $99 für ein Jahr Apple Developer Program haben und bekam sie.</p> <p>Am 10. November erschien die Version 0.5. Nun konnte man die Reihenfolge der Kategorien händisch anpassen oder auch gleich alle Produkte einer Kategorie komplett ausblenden. Außerdem konnte man die Produkte, die noch auf dem Einkaufszettl stehe, als SMS/per Tweet/per Mail/... teilen. Am 30. November schob ich dann abermals ein Bugfix-Release 0.5.1 hinterher.</p> <p>Im Dezember investierte ich ein bisschen Geld und beteiligte mich mit <a href="https://www.pixelaffe.de/affiges/happypixmas-tag-5-25-euro-appstore-guthaben/">25€ am Adventskalender</a> von <a href="https://twitter.com/pixelaffe">Torsten</a>, was jedoch keinen einzigen Download brachte. Vorher hatte ich den Einkaufszettl lediglich über Twitter und im Blog "beworben". Zwischenzeitlich hatte ich überlegt, tatsächlich ein bisschen Werbung zu schalten, aber das scheiterte an zwei Dingen: Zum einen war es mir zu teuer, zum anderen - und das ist der wesentlich gravierendere Grund - ist der Einkaufszettl nicht so gut, wie ich ihn gerne hätte.</p> <p>2016 experimentierte ich über das Jahr hinweg ein bisschen mit dem Preis im App Store. Mal kostete die App 1,99€, mal war sie kostenlos oder für 99 Cent zu haben. Aktuell kostet sie 99 Cent, aber wer weiß, wie lange noch? Kauft sie lieber heute als morgen!!1!</p> <p>Wirklich Erfolg hatte ich mit den Preisanpassungen nicht, auch 2016 schaffte ich es mit dem Einkaufszettl nicht, die anvisierten $99 zu erwirtschaften. Dafür luden wesentlich mehr Menschen die App: Im Oktober gab es einen Peak, ich weiß bis heute nicht, wer oder was dafür verantwortlich ist. Dafür gab es 2016 auch lange Durststrecken, in denen niemand die App herunterlud:</p> <p><img alt="Übersicht über die Verkäufe vom Einkaufszettl im Jahr 2016" src="https://bullenscheisse.de/img/IMG_126_Einkaufszettl_2016.png"/></p> <p>In seinem zweiten Jahr kam der Einkaufszettl auf 10 verkaufte und 50 kostenlose Einheiten, insgesamt betrug der Umsatz <strong>$14,14</strong>, von denen als Gewinn <strong>$8,28</strong> blieben.</p> <p>Rückblickend bin ich ein bisschen enttäuscht, da ich gerne mehr Zeit in die App gesteckt hätte, war stellenweise aber einfach zu müde und hatte nach 8 Stunden iOS-Entwicklung nicht unbedingt Lust auf noch mehr iOS-Entwicklung.</p> <h5>Gesamt</h5> <p>Insgesamt kommt der Einkaufszettl auf <strong>75 Downloads</strong>, davon sind 22 (29,3%) bezahlt und 53 (70,7%) kostenlos. Wieviele Menschen die App wirklich nutzen, weiß ich nicht, ich tracke nichts. Ich freue mich aber über jeden einzelnen :-)</p> <p><img alt="Übersicht über die Verkäufe vom Einkaufszettl im Jahr 2016" src="https://bullenscheisse.de/img/IMG_127_Einkaufszettl_free_vs_paid.png"/></p> <p>Für 2015 und 2016 komme ich dadurch auf einen Umsatz von <strong>$41,46</strong> bei einem App-Store-Gewinn von <strong>$24,44</strong>. Gleichzeitig hatte ich Ausgaben von <strong>$198</strong> und <strong>25€</strong> (~$26,88), die Arbeitszeit oder die Gewerbeanmeldung rechne ich nicht rein. </p> <p>Alles in allem hat mich der Einkaufszettl also knapp <strong>$200</strong> gekostet. Aber das ist okay. Dafür habe ich viel gelernt und Spaß dabei.</p> <h4>Code</h4> <p>Laut Github besteht der Einkaufszettl aus 251 einzelnen Dateien. Das Repository besteht zu 71,1% aus Objective-C-Code und zu 19,4% aus Swift. Außerdem sind dadurch, dass ich fastlane nutze, 2,6% Ruby und 6,8% HTML im Repository vorhanden. 2015 und 2016 haben sich <strong>391 Commits</strong> angesammelt, mit fastlane-Commits und nicht eingeflossenen Features sind es 408.</p> <p>Wenn ich mir den Code, den ich 2015 geschrieben habe, heute anschaue, muss ich oft schmunzeln: Was habe ich damals gemacht? Habe ich das wirklich gemacht? In einigen Jahren wird mir das mit dem heutigen Code wahrscheinlich genauso gehen. Denn wie <a href="https://www.youtube.com/watch?v=E2MIpi8pIvY">John Ramero sagte</a>:</p> <blockquote> <p>Write your code for this game only - not for a future game. <em>You're going to be writing new code later because you'll be smarter</em>.</p> </blockquote> <h4>Fazit</h4> <p>Ich habe zwei Jahre in Folge mein selbstgestecktes Ziel nicht erreicht. Das ist jetzt nicht weiter schlimm, da es keine gravierenden Auswirkungen hat, frustrierend ist es aber schon ein bisschen. Dass ich bisher $200 da reingesteckt habe, tut mir auch nicht weiter weh, manche Leute geben für ihre Hobbies wesentlich mehr Geld aus.</p> <p>Auch wenn die letzten beiden wirtschaftlich nicht unbedingt erfolgreiche Jahre waren, wird es den Einkaufszettl auch 2017 weiter geben. Dadurch, dass ich mittlerweile in Teilzeit arbeite, sollte es jetzt nicht mehr an der Zeit scheitern. Das nächste Release wird es wohl bis Ende des Monats geben, die ersten Bugs sind schon wieder gefixt, an anderen arbeite ich noch, damit der Einkaufszettl mal gut wird. Auch wenn es viele bessere Einkaufszettl-Apps gibt, gibt es nur einen Einkaufszettl.</p> <p>Auf jeden Fall liegen die $99 für ein weiteres Jahr Mitgliedschaft im Apple Developer Program im April schon bereit. </p> <p>Die <a href="https://bullenscheisse.de/einkaufszettl/Einkaufszettl_2015_2016.numbers">Numbers-Datei</a> mit den Daten und Diagrammen aus diesem Blogpost, beziehungsweise eine <a href="https://bullenscheisse.de/einkaufszettl/Einkaufszettl_2015_2016.pdf">PDF-Version</a> davon, könnt ihr herunterladen, wenn euch die genauen monatlichen Downloads interessieren.</p> JF-Umfrage: Was ist dein Lieblingsessen? tag:bullenscheisse.de,2017-03-07:/2017/jf-umfrage-was-ist-dein-lieblingsessen 2017-03-07T06:45:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Neulich erwähnte ich, dass ich unter anderem die <a href="https://de.wikipedia.org/wiki/Junge_Freiheit">Junge Freiheit</a> in meinem Feedreader abonniert habe, um meine Filterblase aufzubrechen, wie ich schrieb. Mehr als einmal habe ich wegen der Artikel und ihrer unterschwelligen Aggressionen dort aufgeregt. Nun fiel mir dort vor ein paar Tagen eine Umfrage auf. Es wird gefragt:</p> <p>Der deutsche Staat hat 2016 Mehreinnahmen in Höhe von 24 Milliarden Euro erzielt. Haushaltsüberschuß: Für was sollte der Staat die Mehreinnahmen verwenden?</p> <p>Die Antwortmöglichkeiten scheinen besorgte Bürger_innen wohl in ihrer Weltanschauung und ihren Ängsten bestärken zu wollen: Mehr Geld für innere Sicherheit und Verteidigungsetat, denn in Deutschland herrscht das Chaos!!1! Gebt den hart arbeitenden Bürger_innen das zuviel gezahlte Geld zurück, denn nur ihnen ist es zu verdanken!!1! Weg mit dem Soli!!1! Oh, und mehr Geld für Bildung, das kommt immer gut.</p> <p><img alt="Umfrageergebnis der JF-Umfrage, was mit dem Haushaltsüberschuss passieren soll" src="https://bullenscheisse.de/img/IMG_124_JF_Umfrage_Ergebnisse.png"/></p> <p>Die Umfrage der JF zeigt sehr schön, wie man ein gewünschtes Umfrageergebnis erzielen kann: Man gibt einfach nur die Antwortmöglichkeiten vor, mit denen man selbst gut leben kann.</p> <p>Würde ich eine JF-Umfrage machen, würde ich Dich fragen:</p> <blockquote> <p>Was ist dein Lieblingsessen?</p> <ol> <li>Maultaschen.</li> </ol> </blockquote> <p>Schreib Deine Antwort bitte in die Kommentare.</p> Demokratie durch Los? tag:bullenscheisse.de,2017-02-13:/2017/demokratie-durch-los 2017-02-13T20:56:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich habe relativ viele RSS-Feeds abonniert, darunter sind Perlen wie <a href="http://unmus.de">unmus</a>, aber auch Alltägliches wie <a href="http://www.zeit.de/index">die Zeit</a> oder die Junge Freiheit, um meine Filterblase aufzubrechen. Im Alltag bleibt mir da leider gar nicht die Zeit, alle Artikel ausführlich zu lesen, geschweige denn meine Gedanken dazu zu notieren. Aber sie reicht, um sie zu markieren. Um sie später zu lesen. Um sie eventuell zu verbloggen.</p> <p>Ich gewöhne es mir gerade an, solche markierten Artikel im Urlaub zu lesen, am Wochenende, wenn ich Zeit habe, wenn ich Lust auf sie habe. Ein solcher Artikel, den ich mich markiert hatte, war "<a href="http://www.zeit.de/2017/04/rechtspopulismus-demokratie-wahlen-buergerversammlungen-politisches-system-griechenland/komplettansicht">Zur Wahl steht: Die Demokratie</a>" aus der Zeit.</p> <p>Dieser Artikel stellt ein sehr interessantes Konzept vor: Die Demokratie wie im antiken Griechenland. Im antiken Griechenland wurden die Menschen per Los und damit per Zufall in die Bürgerversammlung gewählt. Dort gab es keine "Wahl-Aristokratie", keine Demokratie von Berufspolitiker_innen, keine Demokratie der "wenige[n] der Klügsten und Guten", wie John Adams schrieb.</p> <blockquote> <p>Der Rechtsanwalt Thomas Jefferson, Sohn eines wohlhabenden Plantagenbesitzers, formulierte einige Jahre später [<a href="http://press-pubs.uchicago.edu/founders/documents/v1ch15s61.html">interessanterweise in einem Brief an John Adams</a>]: "Es gibt eine natürliche Aristokratie unter Menschen, die auf Tugend und Talent beruht. Ist nicht die beste Regierungsform diejenige, die am effektivsten die Auswahl dieser natürlichen Aristokraten für politische Ämter gewährleistet?</p> </blockquote> <p>Das liest sich so, als würden es John Adams und Thomas Jefferson 'einfachen' Menschen nicht zutrauen, politische Entscheidungen zu treffen. Es liest sich so, als müsste man den Großteil der Bevölkerung zu ihrem eigenen Schutz entmündigen. Dagegen müsste man doch irgendetwas unternehmen können!</p> <p>Und tatsächlich:</p> <blockquote> <p>Adams, Jefferson und Madison hatten genau das richtige Verfahren identifiziert, um eine Volksherrschaft einzuführen, in der ein sehr kleiner Teil des Volkes herrscht: Wahlen. Für wen würden sich die amerikanischen Bürger entscheiden, wenn nicht für die Sachkundigsten, Klügsten, Wohlhabendsten?</p> </blockquote> <p>Der Artikel erweckt den Eindruck, als wären Wahlen etwas Unfaires, nicht also das, als das sie für gemeinhin gesehen werden:</p> <blockquote> <p>Noch Mitte des 18. Jahrhunderts wiederholte Montesquieu fast wortgleich die Gedanken von Aristoteles: "Wahl durch Los entspricht der Natur der Demokratie, Wahl durch Abstimmung der Natur der Aristokratie."</p> </blockquote> <p>Dadurch, dass Wahlen eher der Natur der Aristokratie entsprechen, drängt sich der Eindruck auf, dass es auch in der heutigen Zeit noch solche Regierungen gibt, sonst würde die Zufallsdemokratie nicht als Mittel präsentiert, um etwas gegen Rechtspopulismus zu unternehmen: Gib den Menschen die Möglichkeit, sich zu beteiligen, zu gestalten. Vertraue ihnen, sie werden gute Entscheidungen treffen.</p> <p>Dass 'normale Menschen' durchaus gute, politische Empfehlungen treffen und somit Einfluss nehmen können, wird am <em><a href="https://en.wikipedia.org/wiki/Citizens'_Assembly_(Ireland)">Constitutional Convention</a></em> (seit 2016: <a href="https://en.wikipedia.org/wiki/Citizens'_Assembly_(Ireland)">Citizens' Assembly</a>) aus Irland festgemacht, das dort seit 2012 beratend tätig ist. 66 zufällig ausgewählte irische Bürger_innen, ein Vorsitzender und 33 Politiker_innen werden vom Parlament beauftragt, Empfehlungen für wichtige Fragen zu geben. Sie treffen sich regelmässig, hören sich Vorträge an, beraten, diskutieren und sprechen am Schluss eine Empfehlung aus. Und es scheint zu funktionieren:</p> <blockquote> <p>Wenn man die Bürger zwei Tage lang dabei beobachtet, wie sie Vorträge hören, diskutieren, Fragen stellen, kann man nicht anders, als Vertrauen in diesen Prozess zu schöpfen.</p> <p>From the outset at this meeting, I was very pleased that members of the Convention appeared to be especially conscious of their responsibilities as they considered an issue on which there were sincere and deeply-held views on both sides of the debate. (<a href="https://www.constitution.ie/AttachmentDownload.ashx?mid=c90ab08b-ece2-e211-a5a0-005056a32ee4">Quelle</a>)</p> </blockquote> <p>Die Constitutional Convention <a href="https://www.constitution.ie/AttachmentDownload.ashx?mid=42285e46-fae2-e211-a5a0-005056a32ee4">empfahl beispielsweise</a>, die irische Verfassung zu ändern, um Ehen für alle Menschen in Irland zu ermöglichen. Das irische Volk nahm diese Empfehlung in einem durchgeführten Referendum mit 62% an.</p> <p>Grundsätzlich halte ich diese Konzept der Zufallsdemokratie für eine interessante Idee, die zu funktionieren scheint. Ich halte sie sogar für so gut, dass ich es schade fände, wenn man sie nicht einfach mal ausprobieren würde. Natürlich müsste man dafür sorgen, dass - überspitzt formuliert - nicht auf einmal 66 Nazis in diesem Gremium sitzen. Irland löst das Problem, indem eine zufällige Gruppe, die die irische Bevölkerung repräsentiert, bestimmt wurde. Ein Grund, warum das Konzept in Irland funktioniert, ist außerdem, dass Regierung und Parlament sich der Verantwortung stellen, die Vorschläge des Gremiums zu hören und entsprechend zu behandeln. Die Menschen fühlen sich so ernst genommen.</p> <p>Ich bin vermutlich einer der letzten, die bereit sind, auf Forderungen von Nazis einzugehen. Natürlich kann man die Idee, mit der Zufallsdemokratie etwas gegen Rechtspopulismus unternehmen zu wollen, als Reaktion auf das Geschrei meist rechter Menschen zurückführen, man könnte es sogar soweit treiben, dass man behauptet, mit dieser Idee Rechtspopulisten entgegen zu kommen, dass Rechtspopulisten und -extreme mit ihrem Geschrei die politische Diskussion bestimmen. </p> <p>Hier gelingt dem Artikel aber etwas sehr schönes: Auf der einen Seite wird ein bisschen auf Menschen, die etwas anderes als die bisherige Demokratie fordern, zugegangen. Auf der anderen Seite wird ihnen ein Vorschlag unterbreitet, dem sie eigentlich nur zustimmen können. Die AfD fordert Demokratie in Reinkultur? Fein, unterbreiten wir ihnen doch einfach mal den Vorschlag von Demokratie in Reinkultur.</p> <p>So ganz ist der Vorwurf, dass Menschen durch ihr Geschrei die Diskussion in eine gewisse Richtung lenken, also nicht von der Hand zu weisen.</p>