bullshit https://bullenscheisse.de/ de Tue, 22 May 2018 20:27:00 GMT https://bullenscheisse.de/rss/ acrylamid 0.7.10 #dbhackathon https://bullenscheisse.de/2018/dbhackathon/ <p>Ich wollte schon lange mal an einem Hackathon teilnehmen. Vor ungefähr einem halben Jahr — Mitte Dezember 2017 — fand dann der <a href="https://dbmindbox.com/en/db-opendata-hackathons/hackathons/hackathon-8-db-open-data/">achte #dbhackathon</a> in Berlin statt, veranstaltet von der Deutschen Bahn. Aber was ist das überhaupt, so ein Hackathon? Wikipedia sagt dazu:</p> <blockquote> <p>Ein Hackathon (Wortschöpfung aus „Hack“ und „Marathon“) ist eine kollaborative Software- und Hardwareentwicklungsveranstaltung. Alternative Bezeichnungen sind „Hack Day“, „Hackfest“ und „codefest“. Ziel eines Hackathons ist es, innerhalb der Dauer dieser Veranstaltung gemeinsam nützliche, kreative oder unterhaltsame Softwareprodukte herzustellen. </p> <p>— Quelle: <a href="https://de.wikipedia.org/wiki/Hackathon">Internet</a></p> </blockquote> <p>Ein Hackathon scheint vom Konzept her ein bisschen zu sein wie ein Barcamp: Jemand stellt den Platz, das Internet, Daten, Catering, kalte Getränke — gewissermaßen den Rahmen bereit und lädt ganz viele Leute ein. Diese Menschen füllen den Rahmen dann mit Inhalten: Sie entwickeln in der gegebenen Zeit in Teams oder alleine Dinge und Prototypen, probieren Ideen und lernen dabei.</p> <p>Häufig gibt es ein Überthema — bei meinem ersten Hackathon war das Motto „Open Data“. Die Bahn und einige Partnerunternehmen stellten Schnittstellen und Datensätze zur Verfügung, die man nutzen konnte, aber nicht musste.</p> <h4>Der Rahmen</h4> <p>Der Hackathon startete an einem Freitag um 17:00 Uhr in der <a href="https://dbmindbox.com/de/ueber-uns/">DB Mindbox</a> direkt unter dem <a href="https://de.wikipedia.org/wiki/Bahnhof_Berlin_Jannowitzbrücke#S-Bahnhof">S-Bahnhof Jannowitzbrücke</a>. Jede*r Teilnehmer*in bekam ein Tshirt und nach einigen kurzen Einführungsvorträgen, in denen das Programm vorgestellt und ein Überblick über die mitgebrachten Daten gegeben wurde, startete ab 20:00 die sogenannte <em>Hacknight</em>: Ab dann hatten die Teams bis Samstag Nachmittag Zeit, an ihren Projekten zu arbeiten. Am Samstag um 16:30 Uhr konnten dann die Ergebnisse präsentiert werden.</p> <p>Es gab dabei keinen Zwang, die angebotenen APIs und Datensätze zu nutzen, geschweige denn, am Samstag etwas vorstellen zu müssen. Diesen Nicht-Druck fand ich sehr angenehm. Ich kam ohne Projektidee oder Team zur Mindbox und stöberte dann einfach ein bisschen in dem, was die Bahn zur Verfügung stellte. Als Ziel hatte ich mir lediglich vorgenommen, das Projekt, an dem ich dann schlussendlich arbeiten würde, einigermaßen abzuschließen und am Ende vorzustellen.</p> <h4>Der eigentliche Hackathon</h4> <p>Es zeichnete sich relativ schnell ab, dass es eine App werden würde. Damit verdiene ich meine Brötchen und ich muss mich nicht erst in etwas einarbeiten, bevor ich überhaupt startklar bin. Klar ist einer der Grundgedanken, etwas zu lernen, aber es erschien mir mit meinem Ziel vor Augen einfach pragmatischer.</p> <p>Nachdem ich dann so in den mitgebrachten Daten der Deutschen Bahn stöberte, kam mir ein Gedanke:</p> <blockquote> <p>Gibt es eine einfache, elegante Möglichkeit, mir schnell den Gleisabschnitt für einen bestimmten Wagen ausgeben zu lassen, in dem ich beispielsweise meine Reservierung habe? Quasi einen Wagenreihungsplan in <em>besser</em>?</p> </blockquote> <p>Wenn ich vermeiden wollte, die Waggons im Zug zu durchqueren, ging ich dafür bisher immer zum ausgedruckten Wagenreihungsplan am jeweiligen Gleis. Dort steht dann üblicherweise eine Traube von Menschen, die ebenfalls herausfinden möchten, wo ein bestimmter Wagen hält, weil sie ebenfalls keine Lust haben, sich durch volle Waggons quetschen zu müssen. Warum geht das nicht eleganter? Einfacher? Warum geht das nicht mit dem Smartphone?</p> <p>Ich fand raus, dass der Wagenreihungsplan auch im DB Navigator integriert ist:</p> <p><img alt="Integration vom Wagenreihungsplan in den DB-Navigator" src="https://bullenscheisse.de/img/IMG_156_WRP.png"/></p> <p>Aber das fühlte sich nicht gut an, nicht zuende gedacht, zu kompliziert. So als hätte jemand den analogen, ausgedruckten Wagenreihungsplan genommen und einfach in die App gegossen. Warum interessiert mich, wie der ganze Zug auf dem Gleis hält, wenn ich nur wissen will, dass Wagen 23 in Abschnitt E ist? Das geht doch bestimmt besser.</p> <p>Durch einen glücklichen Zufall hatte die Bahn auch die Daten der Wagenreihungspläne mitgebracht — ich hatte also ein Projekt. Anschliessend formulierte ich ein Ziel und schrieb eine kurze Nachricht im Hackathon-internen Slack-Channel.</p> <p>Dann fing ich an, mich in die Wagenreihungsplandaten zu graben, entwarf eine sehr einfache App und übersah, dass vier Menschen mich im Slackchannel angeschrieben hatten: Sie wären interessiert. Kurze Zeit später setzten wir uns zusammen, ich stellte ihnen die Idee und das, was ich bisher herausgefunden und entworfen hatte. Wir verteilten die Aufgaben und dann ging es um kurz nach 21:00 Uhr wirklich los mit der Hacknight.</p> <p><img alt="Einfache grafische Oberfläche der WRP-App" src="https://bullenscheisse.de/img/IMG_157_WRP.png"/></p> <p>Die vier hatten im Gegensatz zu mir keine Erfahrung in der iOS-Entwicklung, aber sie waren alle motiviert und Informatikstudenten. Zwei bastelten die UI, zwei kümmerten sich um das Datenmodell und einer behielt das große Ganze im Blick. Und so arbeiteten wir und tauschten uns regelmässig aus. Es wurde später und später und immer mehr Menschen gingen nach Hause oder legten sich einfach irgendwo in die Mindbox, um zu schlafen. Ich blieb dran und arbeitete hochmotiviert weiter.</p> <p>Morgens um sechs fielen mir immer wieder die Augen zu. Ich wurde immer müder, aber war immernoch unglaublich motiviert, nur noch nicht zufrieden. Ich wollte mich von dieser Müdigkeit nicht aufhalten lassen, ich arbeitete weiter, merkte aber, wie mir das <a href="https://twitter.com/zeitschlag/status/941924076234444800">Denken immer schwerer fiel</a>.</p> <p>Irgendwann gegen acht Uhr morgens hatte ich dann einen Stand, mit dem ich mit einigermaßen guten Gewissen schlafen konnte. Ich fuhr nach Hause, legte mich ins Bett und schlief ungefähr fünf Stunden.</p> <p>Als ich aufwachte, war ich sehr unausgeschlafen und mürrisch. Ich war unsicher, ob das, was ich bis in die Morgenstunden zusammengebaut habe, gut genug war, um es vorzustellen. Ich tat, was ich in so einer Situation meistens tue: Ich suche Feedback und <a href="https://twitter.com/zeitschlag/status/942014594666631174">twittere</a>. Das Feedback war positiv und sorgte dafür, dass Lebensgeister und Motivation zurückkehrten.</p> <p>Ich sprang unter die Dusche, anschliessend aufs Fahrrad und war um kurz vor zwei wieder in der Mindbox. Einige aus meinem Team waren ebenfalls wieder da und so besprachen wir uns bei Kuchen und Pizza zum Frühstück. Wir fixten noch ein paar Kleinigkeiten, änderten hier noch ein paar Farben und dort noch ein paar Schriftarten. Und dann hatten wir etwas vorzuweisen. Ich entwarf <a href="https://github.com/zeitschlag/dbhackathon8/blob/master/Docs/presentation.pdf">ein paar Folien</a> und meldeten unser Projekt zur Vorstellung an.</p> <p>Nach einem Probedurchlauf der Präsentation, noch mehr Pizza und Kuchen wurden dann die Projekte vorgestellt. Jedes Team hatte zwei Minute Zeit, die Ergebnisse zu präsentieren. </p> <p>Ein Team konnte mithilfe der Mobilfunkdaten <a href="https://github.com/renemeye/internet_timer_ui/">berechnen</a>, wie lange das WLAN im Zug noch funktioniert oder wie lange man noch warten muss, bis man nach dem Tunnel wieder Internet hat. Sie hatten es ausserdem in den frühen Morgenstunden in freier Wildbahn getestet. Ein anderes Team hatte ein <a href="https://github.com/martintaraz/router4">alternatives Routing implementiert</a>, mit dessen Hilfe man beispielsweise im Winter Zugverbindungen finden kann, auf denen man möglichst wenig umstiegen muss.</p> <p>Angespannt stellte ich dann den Wagenreihungsplan vor, inklusive Live-Demo. Die Müdigkeit und der wenige Schlaf forderten ihren Tribut und ich war sehr hart in meiner Wortwahl. Das bekam ich dann auch direkt auf Twitter <a href="https://twitter.com/orless/status/942070564038103040">gespiegelt</a> — vollkommen zu recht. Später <a href="https://twitter.com/zeitschlag/status/942075978066558976">entschuldigte</a> ich mich dafür.</p> <p>Anschliessend kürte die Jury nach einer Beratung dann die Projekte, die gewonnen hatten – der Wagenreihungsplan war einer von ihnen!</p> <p>Jedes Teammitglied eines <em>Winning Project</em> bekam einen Reisegutschein für die Bahn per Post zugesandt. Irgendwann gingen wir alle nach Hause und ich flog nach einer weiteren sehr kurzen Nacht in den Weihnachtsurlaub.</p> <p>Als ich den Reisegutschein vor einigen Tagen einlösen wollte, stellte ich fest, dass man das nur im Reisezentrum machen kann. Ich musste schmunzeln, buchte meine Reise dann halt im Reisezentrum und nahm mir vor, endlich mal über den Hackathon zu bloggen.</p> <p>Vor einigen Wochen machte die Bahn dann im DB-Navigator nochmal prominent auf den integrierten Wagenreihungsplan aufmerksam. Da musste ich dann tatsächlich schmunzeln.</p> <p><img alt="Screenshot vom Hinweis zur Wagenreihung" src="https://bullenscheisse.de/img/IMG_158_Wagenreihung.PNG"/></p> <h4>Fazit</h4> <p>Insgesamt war der Hackathon eine unglaublich interessante Erfahrung. Es hat mich selbst überrascht zu sehen, wie unglaublich konzentriert ich an etwas arbeiten kann, wenn ich entsprechend motiviert bin, bereit, auch über meine Grenzen zu gehen. </p> <p>Unter Zeitdruck eine Lösung — und in diesem Fall auch das dazugehörige Problem — zu finden, war spannend, ebenso wie der Umgang mit Hindernissen, die einfach so auftauchen. Im Idealfall versucht man natürlich vorher, solche Probleme zu vermeiden. Kommen sie trotzdem, macht man sich Gedanken, um eine möglichst gute Lösung zu finden. Beim Hackathon war mir das nicht immer möglich, es musste möglichst schnell eine Lösung her, die das Problem aus dem Weg räumt:</p> <p><em>Normalerweise würdest du einen XML-Parser mit Bordmitteln selbst schreiben? Vergiss es, du hast keine Zeit, nimm ein Framework dafür. Du willst die Daten lieber aus einer Datenbank als aus 20 Megabyte Textdateien lesen? Ja, ist ja schön, aber dafür hast du jetzt keine Zeit.</em></p> <p>Insgesamt war ich dann aber doch ganz zufrieden, zumal ich mein selbstgestecktes Ziel ja erreicht hatte. Das Ergebnis finde ich auf eine gewisse Art und Weise angemessen, auch wenn die Codequalität gefühlt ziemlich schlecht ist (<a href="https://github.com/zeitschlag/dbhackathon8">Github</a>). Und auch wenn der Hackathon spannend war, so war er auch unglaublich anstrengend, und ich kann und möchte nicht jeden Tag so massiv über meine Grenzen gehen. Ausserdem werde ich das nächste Mal vielleicht nicht direkt am nächsten Tag früh morgens verreisen.</p> <p>Trotz allem war es mit Sicherheit nicht mein letzter Hackathon. Dafür ist der Rausch, in dem ich gerarbeitet habe, eine zu starke Droge.</p> <h4>Weitere Links</h4> <ul> <li>Die Bahn hat ein <a href="https://www.youtube.com/watch?v=BehfYZnXH3M">kurzes Video</a> vom Hackathon gedreht</li> <li>Auf der <a href="https://dbmindbox.com/de/db-opendata-hackathons/hackathons/hackathon-8-db-opendata/">Website</a> findet man ausserdem einige Bilder, sowie eine Übersicht aller Projekte</li> <li><a href="https://twitter.com/dbhackathon">@dbhackathon auf Twitter</a></li> </ul> Tue, 22 May 2018 20:27:00 GMT tag:bullenscheisse.de,2018-05-22:/2018/dbhackathon Open Source https://bullenscheisse.de/2018/open-source/ <p>Vor dem Osterurlaub schlich sich ein Gedanke in meinen Kopf. Was würde passieren, wenn ich den Quellcode für das, was ich privat programmiere, einfach veröffentlichen würde? Ich finde das <a href="https://de.wikipedia.org/wiki/Open_Source">Open Source</a>-Prinzip wichtig und vor ein <a href="https://bullenscheisse.de/2014/alte-geraete/">paar Jahren fragte ich</a>: </p> <blockquote> <p>Was würde Apple denn davon halten, die kompletten iOS-Versionen von Geräten, die softwareseitig nicht mehr unterstützt werden, unter eine freie Lizenz zu stellen? Dass es zumindest die Chance gibt, dass sich Softwareentwickler_innen alter Geräte, die noch funktionieren, annehmen können? Mit Updates versorgen?</p> </blockquote> <p>Warum habe ich selbst meinen eigenen Quellcode eigentlich nicht veröffentlicht? Gute Frage. Ich fragte mich selbst.</p> <p>Zuerst machten sich da dann Angst breit. What could possibly go wrong? Was würden die Menschen denken? Von mir? Meine Code? Würde ich jemals wieder einen Job bekommen, wenn die Leute sehen, was für eine Grütze ich schreibe?</p> <p>Ich beschäftigte mich mit der Angst und freundete mich mit ihr an. Kurz darauf verschwand sie, wie so oft, wenn man sich mit seiner Angst beschäftigt. Ich fragte auf <a href="https://chaos.social/@zeitschlag/99746433600656775">Mastodon</a> nach Erfahrungen und war irgendwann bereit, mein Zeug ins Netz zu stellen. Im Optimalfall würde ich etwas lernen, weil mich jemand auf einen Fehler hinweist. Im schlechtesten Fall würde nichts passieren. Total öde.</p> <p>Den Anfang machte Anfang April dieser Blog — sein Quellcode liegt jetzt unter anderem auf <a href="https://github.com/zeitschlag/blog">GitHub</a>. Weil ich eine <a href="https://github.com/zeitschlag/blog/blob/master/README.md">README-Datei</a> wollte, merkte ich, in welchem Zustand der Blog war und so räumte ich erstmal ein bisschen auf, lernte nebenbei etwas über Lizenzen, die Blogsoftware und dass ich sie lange <em>komisch</em> genutzt hatte. Zum Schluss hatte ich ein besseres Gefühl und eine ordentliche README. Alles in allem war das ein guter Start.</p> <p>Als Nächstes folgte dann der Quelltext für den <a href="https://bullenscheisse.de/einkaufszettl/">Einkaufszettl</a>, ebenfalls auf <a href="https://github.com/zeitschlag/einkaufszettl">GitHub</a>. Seitdem ist er auch im App Store <a href="https://itunes.apple.com/de/app/einkaufszettl/id1016435355?l=de&amp;ls=1&amp;mt=8">kostenlos</a>, vorher hat er mal einen, mal zwei Euro gekostet. Ich möchte aber nicht, dass jemand, der die App nicht selbst bauen kann, benachteiligt wird. Sind wir mal ehrlich: Bei dieser App wird das kaum jemanden kümmern, aber es geht mir ums Prinzip.</p> <p>Vor Jahren hatte ich mal <a href="https://bullenscheisse.de/2017/der-einkaufszettl-2015-und-2016/">ein Ziel</a>:</p> <blockquote> <p>Die $99, die mich das Apple Developer Program gekostet hatte, sollte der Einkaufszettl wieder einspielen.</p> </blockquote> <p>Das hat seitdem nie auch nur ansatzweise geklappt, aber das war in Ordnung. Auch für den Einkaufszettl habe ich ein bisschen aufgeräumt, seitdem aber keine Zeit und Liebe mehr in das Projekt gesteckt. Das möchte und werde ich in den nächsten Tagen ändern.</p> <p>Eventuell sollten wir beim <a href="https://codes.uber.space">Codestammtisch</a> mal über <em>Side Projects</em> reden.</p> <p>Ein anderes Projekt, dessen Quelltext ich veröffentlichen wollte, wenn es in einem entsprechend fertigen Zustand ist, ist <a href="https://gitlab.com/zeitschlag/ipretix">iPRETIX</a> — eine Art <a href="https://github.com/pretix/pretixdroid">pretixdroid</a> für iOS. Ich hatte Anfang des Jahres angefangen, das damals in einem privaten git-Repo — deshalb noch GitLab — zu bauen. Nun habe ich es konsequenterweise und in einem unfertigen Zustand auch direkt veröffentlicht. Auch iPRETIX möchte ich in den nächsten Tagen vorantreiben.</p> <p>Vielleicht sollte ich verbloggen, auf welche Hindernisse ich in den nächsten Tagen bei der Entwicklung vom Einkaufszettl und von iPRETIX stoße und wie ich damit umgehe. Würde das jemand lesen wollen?</p> Sun, 13 May 2018 21:06:00 GMT tag:bullenscheisse.de,2018-05-13:/2018/open-source Es geht weiter https://bullenscheisse.de/2018/es-geht-weiter/ <p>Letzte Woche habe ich also zum ersten Mal in meinem Leben einen Arbeitsvertrag gekündigt — so richtig schriftlich und ordentlich. Wie so ein Erwachsener. Und fast fristgerecht. Wie so ein Profianfänger.</p> <p>Es fühlte sich ein bisschen so an, als hätte ich Schluss gemacht. Eine Beziehung beendet. Und ich war selbst etwas überrascht, dass es mir mehr zusetzte als gedacht. Der Arbeitsplatz war der Grund, warum ich vor zweieinhalb Jahren von Heidelberg nach Berlin gezogen bin. Diese zweieinhalb Jahre waren interessant, lehrreich, schön und bisweilen auch anstrengend. Es war der erste Job nach dem Studium und ich werde wohl noch geraume Zeit dankbar dafür sein, dass ich die Firma mir diese Chance gegeben hat.</p> <p>Der Arbeitsplatz war nicht schlecht — ganz im Gegenteil. Vielleicht ist auch das ein Grund, warum mir die Entscheidung nicht leicht fiel. Seit geraumer Zeit habe ich allerdings gemerkt, dass ich immer unzufriedener werde. Dass ich sehr bequem wurde. Dass ich noch andere Firmen, Umgebungen, Dinge, Menschen kennenlernen, Erfahrungen sammeln und wachsen möchte.</p> <p>Letzte Woche habe ich eine Entscheidung getroffen — ob es eine gute war, wird sich zeigen. Sie wurde von viel Auf und Ab, viel Dafür und Dagegen, vielen Zweifeln und Angst und noch mehr „Was wäre, wenn“ begleitet. Jetzt ich blicke nach vorne. Auf jeden Fall ist sie jetzt da. Jetzt geht es weiter — es geht immer weiter.</p> Mon, 07 May 2018 21:55:00 GMT tag:bullenscheisse.de,2018-05-07:/2018/es-geht-weiter Dear recruiter https://bullenscheisse.de/2018/dear-recruiter/ <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> Wed, 11 Apr 2018 19:26:00 GMT tag:bullenscheisse.de,2018-04-11:/2018/dear-recruiter A ten year old machine https://bullenscheisse.de/2018/a-ten-year-old-machine/ <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> Mon, 09 Apr 2018 19:35:00 GMT tag:bullenscheisse.de,2018-04-09:/2018/a-ten-year-old-machine Internatsschüler unter sich https://bullenscheisse.de/2018/internatsschueler-unter-sich/ <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> Mon, 02 Apr 2018 12:57:00 GMT tag:bullenscheisse.de,2018-04-02:/2018/internatsschueler-unter-sich Von A nach https://bullenscheisse.de/2018/von-a-nach/ <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> Sun, 01 Apr 2018 13:18:00 GMT tag:bullenscheisse.de,2018-04-01:/2018/von-a-nach pretix auf einem Uberspace https://bullenscheisse.de/2018/pretix-auf-einem-uberspace/ <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> Fri, 23 Mar 2018 11:21:00 GMT tag:bullenscheisse.de,2018-03-23:/2018/pretix-auf-einem-uberspace Dein Freund und Rauswerfer https://bullenscheisse.de/2018/dein-freund-und-rauswerfer/ <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> Thu, 15 Mar 2018 11:51:00 GMT tag:bullenscheisse.de,2018-03-15:/2018/dein-freund-und-rauswerfer Urteil am 6. Februar https://bullenscheisse.de/2018/urteil-am-6-februar/ <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> Tue, 30 Jan 2018 10:46:00 GMT tag:bullenscheisse.de,2018-01-30:/2018/urteil-am-6-februar osstatus.com https://bullenscheisse.de/2018/osstatus-com/ <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> Wed, 24 Jan 2018 17:56:00 GMT tag:bullenscheisse.de,2018-01-24:/2018/osstatus-com Gerichtstermin wegen wir-sind-afd.de https://bullenscheisse.de/2018/gerichtstermin-wegen-wir-sind-afd-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> Fri, 05 Jan 2018 11:00:00 GMT tag:bullenscheisse.de,2018-01-05:/2018/gerichtstermin-wegen-wir-sind-afd-de Aus Scheiße Gold machen https://bullenscheisse.de/2017/aus-scheisse-gold-machen/ <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> Sun, 10 Dec 2017 10:01:00 GMT tag:bullenscheisse.de,2017-12-10:/2017/aus-scheisse-gold-machen Für nichts und wieder nichts https://bullenscheisse.de/2017/fuer-nichts-und-wieder-nichts/ <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> Sat, 09 Dec 2017 10:35:00 GMT tag:bullenscheisse.de,2017-12-09:/2017/fuer-nichts-und-wieder-nichts Einkaufszettl 0.6 https://bullenscheisse.de/2017/einkaufszettl-0-6/ <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> Tue, 05 Dec 2017 20:40:00 GMT tag:bullenscheisse.de,2017-12-05:/2017/einkaufszettl-0-6 60 Euro. Bedauerlicherweise. https://bullenscheisse.de/2017/60-euro-bedauerlicherweise/ <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> Mon, 04 Dec 2017 06:11:00 GMT tag:bullenscheisse.de,2017-12-04:/2017/60-euro-bedauerlicherweise miniflux + unread https://bullenscheisse.de/2017/miniflux-+-unread/ <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> Mon, 27 Nov 2017 19:41:00 GMT tag:bullenscheisse.de,2017-11-27:/2017/miniflux-+-unread XNetflixions - Gastbeitrag bei condomsbydefault.de https://bullenscheisse.de/2017/xnetflixions-gastbeitrag-bei-condomsbydefault-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> Tue, 31 Oct 2017 12:55:00 GMT tag:bullenscheisse.de,2017-10-31:/2017/xnetflixions-gastbeitrag-bei-condomsbydefault-de Life Is Strange https://bullenscheisse.de/2017/life-is-strange/ <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> Wed, 04 Oct 2017 05:48:00 GMT tag:bullenscheisse.de,2017-10-04:/2017/life-is-strange Ich male mir die Welt https://bullenscheisse.de/2017/ich-male-mir-die-welt/ <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> Tue, 19 Sep 2017 17:55:00 GMT tag:bullenscheisse.de,2017-09-19:/2017/ich-male-mir-die-welt Elite. My ass. https://bullenscheisse.de/2017/elite-my-ass/ <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> Sun, 03 Sep 2017 15:45:00 GMT tag:bullenscheisse.de,2017-09-03:/2017/elite-my-ass Update zur Abmahnung wegen wir-sind-afd.de https://bullenscheisse.de/2017/update-zur-abmahnung-wegen-wir-sind-afd-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> Wed, 17 May 2017 21:20:00 GMT tag:bullenscheisse.de,2017-05-17:/2017/update-zur-abmahnung-wegen-wir-sind-afd-de Gehalt - Ein kurzes Update https://bullenscheisse.de/2017/gehalt-ein-kurzes-update/ <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> Wed, 10 May 2017 14:40:00 GMT tag:bullenscheisse.de,2017-05-10:/2017/gehalt-ein-kurzes-update Einkaufszettl 0.5.5 https://bullenscheisse.de/2017/einkaufszettl-0-5-5/ <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> Wed, 03 May 2017 07:48:00 GMT tag:bullenscheisse.de,2017-05-03:/2017/einkaufszettl-0-5-5 Einkaufszettl 0.5.4 https://bullenscheisse.de/2017/einkaufszettl-0-5-4/ <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> Fri, 21 Apr 2017 21:01:00 GMT tag:bullenscheisse.de,2017-04-21:/2017/einkaufszettl-0-5-4