Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de bullshit tag:bullenscheisse.de,2011-06-11:/atom/ https://bullenscheisse.de/favicon.ico https://bullenscheisse.de/feed-logo.png 2018-11-29T18:46:00Z acrylamid Gedruckte Zeitungen und Notizbücher tag:bullenscheisse.de,2018-11-29:/2018/gedruckte-zeitungen-und-notizbuecher 2018-11-29T18:46:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor rund zwei Wochen <a href="https://bullenscheisse.de/2018/ich-will-gerade-nicht/">blug</a> ich über Zeitungen. Seitdem ist fast nichts passiert: Ich habe mir jeweils Donnerstag zwei gedruckte Ausgaben vom <a href="https://www.freitag.de">Freitag</a> gekauft. Und beide Ausgaben tatsächlich gelesen. Aber weil Traditionen meistens problematisch sind, verhindere ich die Bildung einer neuen gleich mal — und kaufe mir den neuen Freitag Freitag.</p> <p>Einen Text in einer gedruckten Zeitung zu lesen ist etwas anderes als denselben Text auf dem Tablet zu lesen. Das hat weniger mit dem Text als viel mehr mit dem Medium zu tun. Eine Zeitung kann ich in einzelne Bücher zerlegen und falten. Wenn ich das Gleiche — und dasselbe — mit einem Tablet versuche, mache ich das kaputt, versehe es mit einem Hashtag — <a href="https://twitter.com/search?f=tweets&amp;vertical=default&amp;q=%23bendgate&amp;src=typd">#bendgate</a> klingt doch gut — und heule online ein bisschen rum.</p> <p>Apropos Hashtag: In der <a href="https://www.freitag.de/ausgaben/4718">letzten Aufgabe vom Freitag</a> gab es neben einem tollen Titelthema auch einen Text über Hashtags. Die Zeitung hatte vor ein paar Wochen <a href="https://twitter.com/search?q=%23unten&amp;src=typd">#unten</a> ins Leben gerufen und nun diskutierten zwei Männer in einem Doppelinterview darüber, was Hashtag-Debatten ändern. Darf ich kritisch fragen, warum keine Frau dabei war? Dieses <a href="https://www.freitag.de/autoren/der-freitag/im-zeichen-des-schlagworts">Gespräch</a> findet sich auch online — offenbar kippt der Freitag über die Woche verteilt Texte aus der Zeitung eins zu eins ins Netz. Unerhört. Finde ich gut.</p> <p>Auf der allerletzte Seite drehte sich dieses Mal alles von A bis Z um Werkzeuge und in einem kleinen Beitrag zu diesem Thema auch um Notizbücher im Allgemeinen und Moleskine im Speziellen. Jan C. Behmann gab einen Dialog wieder, den er einmal beim Kauf eines Moleskine-Notizbuches ohne Linien zum Nach-Oben-Klappen führte:</p> <blockquote> <p>Verkäuferin — ich: Ist zum Nach-Oben-Klappen — weiß ich/Ist ohne Linien — kann ich/Ist für Journalisten — bin ich. </p> </blockquote> <p>Wie Behmann bin auch ich ein großer Fan von Notizbüchern ohne Linien und auch ich habe schon das eine oder andere — Fake News: Ich habe aufgehört zu zählen — von Moleskine gekauft. Nur weiß ich nicht, ob ich das mit ohne Linien kann. Im Gegensatz zu ihm bin ich auch kein Journalist, aber ich mag die, die man nach oben aufklappen kann, auch ziemlich gerne.</p> <p>Was ich aber nicht kann, ist auf dem iPad ohne Linien zu schreiben, da muss ich die Linien in meiner Notizbuch-App immer aktivieren. Ausser ich male, dann nicht. Im begrenzten — und gleichzeitig doch so unbegrenzten — Raum eines Moleskine funktioniert das aber wesentlich besser, da kann ich auch mit ohne Linien schreiben. Vielleicht hat gedrucktes und manchmal beschriebenes Papier doch so seine Stärken?</p> Ich will gerade nicht. tag:bullenscheisse.de,2018-11-15:/2018/ich-will-gerade-nicht 2018-11-15T22:10:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich bin krankgeschrieben. Irgendwann am letzten Wochenende habe ich mir eine Erkältung eingefangen, die den Spieß dann kurzerhand umdrehte und mich ihrerseits nicht mehr losließ. Nun verbringe ich meine Zeit also zwischen Schlaf, Aspirin Complex und Kamillentee auf dem Sofa. Eine Staffel „The Punisher“ habe ich ebenso hinter mir wie diverse Artikel der <a href="https://www.nytimes.com">New York Times</a> und vier Teile einer großartigen, vierteiligen arte-Dokumentation über die <a href="https://www.arte.tv/de/videos/075596-000-A/mission-wahrheit-die-new-york-times-und-donald-trump-1-4/">Zeitung aus New York und Donald Trump</a>. O tempora, o mores.</p> <p>Und dann lese ich ein Interview mit Julian Reichelt, der die BILD mit eben jener New Yorker Zeitung vergleicht:</p> <blockquote> <p>Aber ich weiß aus eigener Erfahrung, dass wir zu den ganz wenigen verbliebenen Medienmarken gehören, die tatsächlich in Journalismus vor Ort investieren. Wir nehmen wahnsinnige Kosten auf uns, um sicherzustellen, dass unsere Reporter vor Ort sind. [...] Wir sind da, wo die „Post“ oder die „New York Times“ sind, oder umgekehrt: Die sind da, wo wir sind. [...] „BILD“ verdient mit Journalismus so viel Geld, dass wir uns grandiosen Journalismus leisten können.</p> <p>— Julian Reichelt (<a href="https://go-public.jimdofree.com">Quelle</a>)</p> </blockquote> <p>Interessant, dass Reichelt „grandiosen Journalismus“ und „BILD“ in einem Satz erwähnt, so als wäre es das Ziel, das Geschäftsmodell von BILD, grandiosen Journalismus zu fabrizieren und damit Geld zu verdienen. Die Anwälte von Axel Springer drückten das vor mehr als drei Jahren ein bisschen anders aus:</p> <blockquote> <p>Das Kerngeschäft der Klägerin ist die Vermarktung von Werbung. Journalistische Inhalte sind das Vehikel, um die Aufmerksamkeit des Publikums für die werblichen Inhalte zu erreichen.</p> <p>— <a href="https://www.golem.de/news/adblock-plus-axel-springer-sieht-journalismus-nur-als-vehikel-fuer-werbung-1509-116587.html">Quelle</a></p> </blockquote> <p>Doch zurück zu Reichelt: Die Schülerzeitung des Gymnasium Othmarschen — seiner ehemaligen Schule — hat ihn in Berlin besucht, besagtes <a href="https://go-public.jimdofree.com">Interview</a> geführt und eine — gefühlt bessere — <a href="https://go-public.jimdofree.com/die-innere-wahrheit-des-julian-reichelt/">Analyse</a> geschrieben.</p> <p>Da kommt mir auf dem Sofa eine Idee: Warum nicht mal wieder einen Blogpost schreiben zu einem Thema, von dem ich keine Ahnung, aber auch als Aussenstehender eine Meinung habe? Wie Reichelt verbringe ich viel Zeit auf Twitter — ich bin also auf jeden Fall qualifiziert genug für einen Text mit ungefähr 280 Zeichen oder mehr, den ich mir — wie Reichelt wahrscheinlich auch — von niemandem absegnen lassen muss.</p> <p>Zeitungen sind so ein Thema — sie faszinieren mich. Wir beide haben eine, gemeinsame, aber auch relativ einseitige Geschichte. Als ich in die Grundschule ging, habe ich gerne und viel Zeitungen gelesen: Täglich die Tageszeitung, die meine Eltern abonniert hatten, gelegentlich Wochenzeitungen und Magazine in Arztpraxen. Damals — und während der ersten Jahre auf dem Gymnasium — gab es das Internet für mich noch nicht. Nachrichten kamen aus dem Radio oder eben aus der Zeitung.</p> <p>Der Teil, der mir neben dem ersten <a href="https://de.wikipedia.org/wiki/Zeitungsbuch">Buch</a> immer am besten gefallen hat, war „Aus aller Welt“ beziehungsweise „Weltweit“ — da gab es oft Schau- und andere Bilder und jede Menge unnützes Wissen. Den Sportteil fand ich immer langweilig und auch den Lokalteil blätterte ich morgens vor oder mittags nach der Schule ziemlich schnell durch. So ging das jeden Tag, unter der Woche, am Wochenende, in den Ferien. Nur an einem Tag bekam ich die Zeitung überhaupt nicht, an das Datum kann ich mich auch 17 Jahre später gut erinnern: Es war der 12. September 2001.</p> <p>Als ich ein paar Jahre später die Schule wechselte, änderte sich etwas: Von nun an las ich Zeitung in der gedruckten Form morgens nur noch am Wochenende und unter der Woche mittags — ich nahm mir oft mehr Zeit für die Lektüre. Und auf einmal war auch der Lokalteil interessant — der Sportteil hingegen war es immer noch nicht und wird es auch nie werden. Später kam dann das Internet. Und Werbeblocker.</p> <p>Während der Ausbildung zog ich nach Heidelberg und las ich die <a href="https://www.rnz.de">Rhein-Neckar-Zeitung</a> als RSS-Feed und im Internet. Irgendwann führte die RNZ dann eine Paywall ein: Nach zehn gelesenen Artikeln im Monat sollte ich zahlen. Diese Paywall ließ sich sehr einfach umgehen und so las ich weiter. Irgendwann zwischendrin beteiligte ich mich dann noch am Crowdfunding der <a href="https://krautreporter.de">Krautreporter</a>, aber im Endeffekt war ich zu ungeduldig für die langen, wenn auch tollen Texte. Und dann ist da noch der Stapel <a href="https://www.brandeins.de">brand einsen</a>, der über die letzten Jahre langsam, aber sicher angewachsen ist.</p> <p>Auch in Berlin las ich weiter interessiert die Heidelberger Zeitung. Weil ich jetzt aber zum ersten Mal in meinem Leben viel Geld verdiente, hatte ich ein schlechtes Gewissen, dass ich umsonst Texte las, die von Menschen geschrieben wurden. Und so schloss ich ein RNZonline-Abo ab. Die Zugangsdaten kamen per Post. </p> <p>Nach ungefähr einem Jahr waren die Heidelberger Neuigkeiten dann nicht mehr wirklich interessant und ich kündigte wieder. Dann passierte lange Zeit nichts, ich klickte nur ein paar hundert, wenn nicht gar tausend Mal auf „Gerade nicht“, „Schon dabei“ und „Jetzt nicht, ich will weiterlesen“ oder las einen Artikel dann eben gar nicht, wenn ich dafür meinen Werbeblocker hätte deaktivieren müssen.</p> <p><img alt="" src="https://bullenscheisse.de/2018/ich-will-gerade-nicht/Gerade_nicht.jpeg"/></p> <p>Dabei ist Journalismus wichtig, in der heutigen Zeit vielleicht so wichtig wie nie zuvor: Er sollte mir etwas — in Form von Geld — wert sein. Nur: Wieviel? Netflix, Apple Music und Werbeblocker haben mich da wohl ein bisschen kaputt gemacht — schuld sind immer die anderen. Was bin ich bereit, für Journalismus auszugeben? Was sind er und die Menschen, die die Texte schreiben und die Bilder aussuchen mir wert? Was sind sie Dir wert?</p> <p>Mit diesen Hintergrundgedanken zog ich vor ein paar Tagen fest entschlossen aus, Abonnent einer Zeitung zu werden. Preisgünstig sollte es sein, so als Wiedereinstiegsdroge, von der ich mich notfalls auch schnell wieder trennen können will. Rund fünf Euro pro Ausgabe der ZEIT? Das wären 2001 umgerechnet 9,78 Mark gewesen, im Monat 39,12 Mark — danke, aber vielleicht später. 11,90 Euro pro Monat für ein digitales Abo der RNZ wie damals, um mein Gewissen zu beruhigen? Netter Versuch. Oder doch eher ein Abo der Berliner Zeitung, monatlich kündbar für 22,90 Euro? Tagesspiegel für 31,99 Euro? Das sind ja fast elf Döner — in Mark will ich das gar nicht erst umrechnen. Was wäre mit Kiez-Journalismus à la <a href="https://www.prenzlauerberg-nachrichten.de">Prenzlauer Berg Nachrichten</a>?</p> <p>Jetzt mal ehrlich: Weder die 39 Mark und 12 Pfennig, noch 11,90 Euro und auch nicht fast elf Döner würden mich arm machen, aber gefühlt eben schon. Neben Twitter scheinen falsche Gefühle eine weitere Gemeinsamkeit von Reichelt und mir zu sein — so langsam wird das echt gruselig.</p> <p>Was will ich eigentlich? Ich will mich nicht entscheiden müssen und notfalls monatlich kündigen können — danke Netflix. Eine gedruckte Zeitung als PDF? Das ist eher so 2001. Gebt mir eine App, am liebsten hätte ich aber dann doch einen werbefreien <a href="https://de.wikipedia.org/wiki/RSS_(Web-Feed)">RSS-Feed</a>. Und ich will mich nicht jedes Mal irgendwo anmelden müssen. Gleichzeitig will ich keine Werbung und auch nicht getrackt werden. Und natürlich das volle Programm: Tagesaktuelle Nachrichten, Hintergrundartikel, grandiosen Journalismus, schlechte Wortwitze, investigative Reportagen — gebt mir <strong>ALLES</strong>.</p> <p><img alt="" src="https://bullenscheisse.de/2018/ich-will-gerade-nicht/NYT_Instagram.jpeg"/></p> <p>Beeinflusst durch die arte-Dokumentation liebäugelte ich dann mit einem digitalen Abo der New York Times. Zwei Euro die Woche? Schon eher das, was mir für den Anfang vorschwebte. Mehr Geld kann ich ja später immer noch ausgeben. Trotzdem zögerte ich noch, weil es für diesen Preis doch bestimmt auch ein digitales Abo einer deutschen Zeitung geben muss. Ich ging auf Toilette und Instagram. Und da erwartete mich ein Angebot der Times: „Now just <del>€2</del> €1 a week.“. Das entbehrt nicht einer gewissen Ironie: Ein Mitarbeiter der Timer bezeichnete Facebook und Google als die eigentlichen Konkurrenten aller Printmedien: Unternehmen würden ihre Werbebudgets jetzt nicht mehr in Print stecken, sondern eben in Facebook, Google und Instagram.</p> <p>Wenige Minuten später war das Abo dann trotzdem abgeschlossen, die deutschen Zeitungen vergessen, mein Gewissen zumindest für einige Tage beruhigt. Bis jetzt.</p> <p>In einem anderen Leben wäre ich selbst gerne einmal Journalist geworden. Die einzige Zeitung, an der ich bisher mitgerarbeitet habe, war allerdings die Abi-Zeitung — wahrscheinlich habe ich von Zeitung und Presse ungefähr soviel Ahnung wie von kleinen Kindern. Für die Schulzeitung war ich immer zu faul/feige. Stattdessen hat es nun gerade einmal zu unregelmässigen Blogposts gereicht. Und einem Job, bei dem ich für Journalismus eigentlich genug Geld ausgeben könnte.</p> Ein Jahr Codestammtisch tag:bullenscheisse.de,2018-11-12:/2018/ein-jahr-codestammtisch 2018-11-12T18:06:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Wer mir auf Twitter folgt, dürfte es schon lange mitbekommen haben: Seit einem Jahr nehmen ein sehr guter Freund und ich gemeinsam einen Podcast auf — seit Ende August mit erschreckender Regelmäßigkeit. Alle zwei Wochen erscheint eine Folge des <a href="https://codestammtis.ch">Codestammtisch</a> und es ist mir wichtig, das einfach mal in meinem Blog zu erwähnen.</p> <p>Beim Codestammtisch reden Max und ich ein Getränk lang über alle möglichen Themen mit einem Bezug zur Softwareentwicklung: Es gibt eine Folge zum Thema <a href="https://codestammtis.ch/2018/10/29/cst014-versionskontrolle/">Versionskontrolle</a>, es gibt eine Folge, in der wir uns über unsere Erfahrungen mit <a href="https://codestammtis.ch/2018/09/03/cst010-dear-recruiter/">Recruiter*innen</a> unterhalten, wir hatten bisher drei Gäste und sogar zwei Folgen zum Thema <a href="https://codestammtis.ch/2018/10/01/cst012-scrum/">Scrum</a>.</p> <p>Und seit heute gibt es auch eine Folge zum Codestammtisch selbst, quasi eine <a href="https://codestammtis.ch/2018/11/12/cst015-ein-jahr-codestammtisch/">Meta-Folge</a>. Zum Einjährigen haben wir das vergangene Jahr Revue passieren lassen und ein bisschen unsere Pläne für das nächste Jahr skizziert. Happy Birthday 🎁🎉🎊</p> <p>Und wie bei jedem ordentlichen Geburtstag eines Kleinkindes gibt es Dinge, mit denen das Kleinkind manchmal nichts anzufangen weiß — Wein zum Beispiel. Eventuell merkt man, dass ich selbst keine Kinder und somit viel Erfahrung damit habe. Im <a href="https://bullenscheisse.de/2018/voucher-fuer-den-35c3-gesucht/">letzten Blogpost</a> suchte ich einen Voucher oder ein Ticket für den 35C3 und fand schliesslich eins. Dieses Ticket wird jetzt beim Codestammtisch verlost. Was du tun musst, kannst du in der <a href="https://codestammtis.ch/2018/11/12/cst015-ein-jahr-codestammtisch/">Podcastfolge</a> hören.</p> <p>Wie angekündigt möchten wir das Ticket an jemanden geben, die es sich nicht leisten kann, zum Congress zu fahren. Für Unterkunft und Fahrtkosten machen wir notfalls einen Topf auf, das wird schon. Ich wünsche mir, dass das Ticket nicht an einen weißen Cis-Mann geht, weil es für weiße Cis-Typen leichter als für alle anderen ist, an einer solchen Veranstaltung teilzunehmen. Außerdem rennen auf dem Congress schon genug davon rum — guckt mich an, ich bin ein Teil davon.</p> <p>Auf ins zweite Jahr, wir haben viel vor!</p> Voucher für den 35C3 gesucht tag:bullenscheisse.de,2018-11-01:/2018/voucher-fuer-den-35c3-gesucht 2018-11-01T16:52:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Anfang Oktober hatte ich kein Geld und dann startete auf einmal aus heiterem Himmel der <a href="https://tickets.events.ccc.de/35c3/">Vorverkauf</a> für den 35C3, den diesjährigen Congress.</p> <p>Jemand schenkte mir das Geld für das Ticket und das hat mich ein bisschen sprachlos gemacht. Unendlich dankbar bin ich immer noch. Ich habe mir selbst gesagt, dass ich das an jemand anderes weitergeben möchte. Und jetzt habe ich wieder Geld und möchte das einlösen: Ich möchte einem Menschen, der es sich sonst nicht leisten könnte, das Ticket für den Congress zahlen.</p> <p>Es gibt eine Bedingung: Auf dem Congress turnen genug weiße, heterosexuelle Männer rum, noch mehr braucht es nicht. Ich möchte jemanden aus einer unterrepräsentierten Gruppe unterstützen und das Ticket zahlen.</p> <p>Dafür brauche ich erstmal einen Voucher. Die normalen Voucher sind vergriffen — danke für diverse Hinweise auf Mastodon und Twitter — aber es gibt, soweit ich weiß, noch Engel-Voucher. Und so einen hätte ich gerne.</p> <p><strike>Wenn du noch einen Engel-Voucher hast, den du nicht mehr brauchst, oder jemanden kennst, der einen Engel-Voucher hat — und den nicht mehr benötigt — dann lass uns doch zusammenarbeiten: Du hast den Voucher, das dazugehörige Ticket geht auf mich.</strike></p> <p><strong>Update: Ich habe wen gefunden, der ein Ticket loswerden wollte. Danke Constantin.</strong></p> <p>Mit dem Ticket alleine ist es aber gegebenenfalls nicht getan. Aber das sind Herausforderungen, um die wir uns später kümmern können. Jetzt lasst uns erstmal einen Voucher suchen. <strike>Ich freue mich über <a href="https://twitter.com/zeitschlag">DMs</a>, <a href="https://chaos.social/@zeitschlag">Mastodon-DMs</a> oder <a href="http://bullenscheisse.de/about">Emails</a>, wenn ihr mir da weiterhelfen könnt.</strike></p> Barcamp Rhein-Neckar 2018 in Heidelberg tag:bullenscheisse.de,2018-09-23:/2018/barcamp-rhein-neckar-2018-in-heidelberg 2018-09-23T17:32:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Am 22. und 23. September 2018 fand das dritte <a href="https://barcamp-rhein-neckar.de">Barcamp Rhein-Neckar</a> zum dritten Mal im <a href="http://www.dezernat16.de">Dezernat 16</a> in Heidelberg statt. Nachdem wir es <a href="https://bullenscheisse.de/2015/bcrn15/">2015</a> gegründet und <a href="https://bullenscheisse.de/2016/barcamp-rhein-neckar-2016-in-heidelberg/">2016</a> wiederholt haben, war ich natürlich auch dieses Jahr wieder dabei. Das Team um Adrian und Valentin hat Großartiges geleistet.</p> <p>Das BCRN — eigentlich, so habe ich gelernt, müsste es es „HeidelCamp“ oder „RheinNeckarCamp“ heißen — ist eines der kleineren Barcamps in Deutschland, aber vielleicht gerade deswegen ein sehr feines. Dieses Jahr gab es eine Kooperation mit <a href="https://de.wikipedia.org/wiki/Wikipedia:WikiDACH/2018">WikiDACH</a>, dem deutschsprachigen Wiki-Barcamp. Weil beide Camps sonst wahrscheinlich nicht stattgefunden hätten, schlossen sich die Orga-Teams einfach kurzerhand zusammen und organisierten eins für alle.</p> <p>Was mich wieder einmal beeindruckt hat, war das Themenspektrum der Sessions: Am Anfang hielt <a href="https://chaos.social/@cheatha">Cheatha</a> gemeinsam mit mir eine sehr spontane <strong>Einführung in git und Github</strong>. Jemand hatte sich das gewünscht und wir nutzten eben den ersten Sessionslot für die Vorbereitung. Danach erzählte Cindy von ihrer <strong>Depression und Antidepressiva</strong>, einige Tage vorher hatte sie einen <a href="https://piranhapudel.de/antidepressiva-ein-persoenlicher-bericht-wspd2018/">Blogpost</a> zu genau diesem Thema geschrieben.</p> <p>Anschliessend erzählte uns <a href="https://twitter.com/legerdemain">Mikka</a> — von Beruf Neuropsychologe — in einem unterhaltsamen Vortrag, <strong>was Katzen mit einer Zombieapokalypse zu tun haben</strong> und was man unter anderem braucht, um eine auszulösen — Stichwort: <a href="https://de.wikipedia.org/wiki/Toxoplasma_gondii">Toxoplasma gondii</a>.</p> <p><img alt="" src="https://bullenscheisse.de/2018/barcamp-rhein-neckar-2018-in-heidelberg/BCRN18_Toxoplasma_gondii.jpeg"/></p> <p><a href="https://twitter.com/seppini">Sebastian</a> gab uns dann einen Einblick, wie es sich anfühlt, eine <strong>Legasthenie</strong>, auch bekannt als <a href="https://de.wikipedia.org/wiki/Lese-_und_Rechtschreibstörung">Lese- und Rechtschreibstörung</a> zu haben. Ich habe versucht, diese Session als Sketchnotes festzuhalten, natürlich in Schreibschift. Ganz am Ende erwähnte Sebastian, dass Schreibschrift für Menschen mit Legasthenie die Hölle ist.</p> <p><img alt="" src="https://bullenscheisse.de/2018/barcamp-rhein-neckar-2018-in-heidelberg/BCRN18_Legasthenie.jpeg"/></p> <p>Weil ich das erst seit knapp einer Woche mache, freue ich mich über Feedback und Verbesserungsvorschläge.</p> <p>Vor dem Abendbrot diskutierten wir noch, <strong>warum es legitim ist, Nazis zu boxen und was man sonst gegen den Rechtsruck in der Gesellschaft tun kann</strong>, bevor wir nach einer leider etwas zu langen Pause Bier kaufen gingen und in einer sehr kleinen Runde <strong>PowerPoint-Karaoke</strong> spielten. Damit ging der erste Tag vorbei.</p> <p>Der Qualitätssonntag begann mit einer gemeinsamen Session von <a href="https://twitter.com/ittnerfa">Frieder</a> und <a href="https://twitter.com/uwebartholomaei">Uwe</a> zum Thema <strong>New Work und Mensch+Arbeit</strong>. Uwe erzählte unter anderem, wie <a href="https://twitter.com/proclimaDE">pro clima</a> aufgebaut ist und Frieder sprach etwas genereller über neue Arbeit. Auch hier habe ich mich wieder versucht, die Session aufzuzeichnen und auch hier freue ich mich über Feedback:</p> <p><img alt="" src="https://bullenscheisse.de/2018/barcamp-rhein-neckar-2018-in-heidelberg/BCRN18_Mensch_Arbeit.jpeg"/></p> <p>Vor dem Mittagessen — es gab Kartoffel-Kürbis-Eintopf mit Kichererbsen — nahm uns 🐈-🧟‍♀️-Mikka mit zur <strong>Entstehung der ersten <a href="http://barcamp.org/w/page/400184/BarCamp">BarCamps</a></strong>. Die „Bay Area Rejects“, die von Tim O'Reillys <a href="https://en.wikipedia.org/wiki/Foo_Camp">Friends of O'Reilly's-Camp</a> geworfen wurden, machten kurzerhand ihr eigenes Ding im Büro von <a href="https://en.wikipedia.org/wiki/Socialtext">Socialtext</a>. Zwischendrin erschwerte das <a href="https://wordpress.org/news/2005/02/strayhorn/">Release von Wordpress 1.5</a> die Organisation, am Ende hat aber alles geklappt. Und das mit einer Vorlaufzeit von knapp einer Woche — sie hatten laut Mikka sogar Bierflaschen mit einem eigenen Ettikett. Mikka hatte auch einige Funfacts parat, beispielsweise zum Namensschema von *-Camps: Während „Bar“ eben für „Bay Area Rejects“ steht, sollte jedes andere Camp dieses Präfix durch etwas eigenes ersetzen: Das Saarcamp macht es bezüglich der Benennung besser als das Barcamp Rhein-Neckar, weil das Barcamp Rhein-Neckar eben nicht von „Bay Area Rejects“ ins Leben gerufen wurde. Hätten wir das 2014 mal gewusst.</p> <p>Vielleicht sollte ich Wordpress auch mal wieder eine Chance geben.</p> <p>In der vorletzte Session erzählte uns <a href="https://chaos.social/@flowfx">@flowfx</a> etwas zum Leben in Mexiko City, wo er zusammen mit seiner Frau ungefähr vier Jahre lebte. Und ganz zum Schluss präsentierte uns Sebastian mehr oder weniger gute Designs und warum ein Stuhl immer so aussehen wird wie ein Stuhl: <a href="https://de.wikipedia.org/wiki/Form_follows_function">Form follows function</a>.</p> <h4>Danke</h4> <p>Danke für ein spannendes, intensives <del>Bar</del>RheinNeckarCamp Rhein-Neckar. Danke an das Orga-Team, danke an die Menschen, die sich an Sessions beteiligt haben, danke an die Sponsoren, die das #bcrn18 zu einer besseren Veranstaltung gemacht haben, als es ohne sie gewesen wäre. Was das BarCamp über das <a href="http://barcamp.org/w/page/402874/FooCamp">FooCamp</a> schrieb, gilt natürlich auch für BarCamps:</p> <blockquote> <p>The important thing is that when good people get together, great things happen.</p> </blockquote> <p>Ich freue mich auf das Barcamp Rhein-Neckar 2019. Vielleicht schaffe ich es ja auch mal wieder, mich in der Orga einzubringen.</p> Reden mit Rechtspopulist*innen tag:bullenscheisse.de,2018-09-18:/2018/reden-mit-rechtspopulist-innen 2018-09-18T14:03:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Auf dem diesjährigen, sehr schönen <a href="https://www.barcamp-stuttgart.de">Barcamp Stuttgart</a> ging es unter anderem um das Thema Rechtspopulist*innen, -extreme, woher dieser Rechtsruck auf einmal kommt und wie mit ihm umgegangen werden soll. Dabei war es einigen Menschen sehr wichtig, zwischen Rechtspopulist*innen und Rechtsextremen zu unterscheiden. Sie waren der Meinung, dass man mit Rechtspopulist*innen noch diskutieren könne und auch müsste. Obwohl das sehr nobel ist, halte ich es für Blödsinn, mit Menschen zu diskutieren, die weder an einer Diskussion interessiert sind, noch daran, eine gemeinsame Lösung zu finden. Und wahrscheinlich haben das auch schon klügere Menschen als ich gesagt und geschrieben.</p> <p><img alt="" src="https://bullenscheisse.de/2018/reden-mit-rechtspopulist-innen/Rechtsruck.png"/></p> <p>Rechtspopulist*innen verschieben den öffentlichen Diskurs und damit die Grenzen des Sagbaren immer weiter nach rechts. Das darf nicht sein. Aus diesem Grund müssen wir Rechtspopulismus und Rechtspopulist*innen mindestens so hart angehen wie Rechtsextremismus und Rechtsextreme.</p> <p>Hört auf, mit Rechtspopulist*innen zu reden. Hört auf, mit ihnen zu diskutieren. Ihr gebt ihnen und ihren Ansichten dadurch eine Bühne und einen legitimen Anschein. Ihr Anliegen ist nicht legitim und die Bühne nutzen sie eben, um besagte Grenze des Sagbaren zu verschieben. Bernd „Björn“ Höcke, Alice „Trampeltier“ Weidel und Co. wissen sehr genau, wo diese Grenze verläuft. Sie massiv zu überschreiten blieb bisher und viel zu lange ohne Konsequenzen. Wann habt ihr das letzte Mal mit Alexander Gauland darüber diskutiert, dass die deutschen Soldaten im zweiten Weltkrieg nicht unbedingt Leistungen erbracht haben, auf die man stolz sein kann? Wann habt ihr das letzte Mal Höcke davon überzeugt, dass die letzten 1000 Jahre Deutschland nochmal eher so eine mittelgeile Idee sind?</p> <p>Wenn jemand behauptet, dass die Religionsfreiheit nicht für Menschen einer bestimmten Religion gelten soll, dann steht das im krassen Gegensatz zum Grundgesetz und warum genau sollen wir dann nochmal mit diesem Menschen diskutieren? </p> <p>Um sie zu überzeugen? Es ist ihm egal. Damit Dritte mitbekommen, was für eine menschenverachtende Scheiße Höcke, Weidel und Co. von sich geben? Das ist bekannt und Dritten meistens egal. Weil sie sich sonst in ihre Opferrolle begeben? Das schafft die AfD auch ohne Diskussion sehr gut. Nicht mit ihnen zu reden ist mit das Netteste, was wir als Gesellschaft mit ihnen tun können.</p> <p><img alt="" src="https://bullenscheisse.de/2018/reden-mit-rechtspopulist-innen/Kein_Fussbreit.png"/></p> <p>Wie auf Demos gegen Rechts muss auch bei Diskussionen gelten: #keinfussbreit.</p> Von Schiefertafel und Meißel tag:bullenscheisse.de,2018-09-16:/2018/von-schiefertafel-und-meissel 2018-09-16T18:53:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p><img alt="" src="https://bullenscheisse.de/2018/von-schiefertafel-und-meissel/Schiefertafel_Meissel.png"/></p> <p>Vor einigen Jahren hatte ich mal diesen Traum: Es gibt da so ein Gerät, quasi ein digitales Notizbuch. Ich könnte da einfach so meine Gedanken mit der Hand schreiben und hätte sie hinterher in digitaler Form.</p> <p>Irgendwann erschien dann das <a href="https://de.wikipedia.org/wiki/IPad">iPad Pro</a> mit dem <a href="https://de.wikipedia.org/wiki/Apple_Pencil">Apple Pencil</a> und ich war echt beeindruckt. Natürlich ging ich damals zum nächsten Apple-Store und probierte diese Kombination aus.</p> <p>Ich kann mich noch relativ gut daran erinnern, dass mich die glatte Oberfläche abschreckte. Meine Erwartungshaltung war vielleicht ein bisschen hoch, aber ich hatte gehofft, dass sich Pencil und iPad wie Zettel und Stift anfühlen</p> <p>Nur: Es war zu glatt. Der Stift glitt auf dem Tablet — mir fehlte das Kratzen eines Stiftes auf Papier. Ausserdem sah meine Handschrift auf dem iPad so fürchterlich aus. Die sah doch noch nie so grauenhaft aus! Das muss mit diesem Stift zusammenhängen! Die Ursache ist bestimmt, dass ich mit dem Stift auf diesem glatten Display so rutsche. Und ich muss so klein schreiben, das macht es auch nicht besser. Resigniert verließ ich den Laden und das Thema war erstmal Geschichte. Vor ein paar Monaten sah ich, dass ein damaliger Arbeitskollege iPad+Pencil nutzte, um sich Notizen zu machen und das Thema war dann auf einmal doch wieder aktuell.</p> <p>Vor einigen Tagen kaufte ich mir dann ebenfalls von jedem eins und ich war schon von der Einrichtung total beeindruckt und begeistert. Ich kann einfach mein iPhone neben das Tablet legen und es wurde eingerichtet. So fühlt sich wahrscheinlich Magie an. Und dann der Stift! Meine ersten Triche machte ich noch in der Notizen-App und wenn ich nur groß genug schreibe, dann kann ich mich auch mit dem Ergebnis anfreunden. In der Schule sah das auch nie besser aus, aber ich habe mir auch nie wirklich viel — also eigentlich gar keine — Mühe gegeben. Ich war auf jeden Fall angefixt.</p> <p>Wenig später lud ich mir dann <a href="https://www.goodnotes.com">Good Notes</a> herunter, weil ich von dieser App schon einige positive Sachen gehört habe. Hört das mit dieser Begeisterung eigentlich irgendwann wieder auf? Das Schöne an Good Notes ist, dass es da so ein kleines Fenster gibt, in dem ich relativ groß und somit relativ lesbar schreiben kann, während der Text dann automatisch verkleinert wird. Da hat sich jemand Gedanken gemacht. In wieweit das aber Auswirkungen auf meine Schriftgröße auf Papier hat, kann ich noch nicht sagen. Das wird hoffentlich die Zeit zeigen, wahrscheinlich schreibe ich ab sofort nur noch so groß wie auf dem iPad und wundere mich dann, warum das analoge Notizbuch meine Notizen nicht verkleinert.</p> <p>Ein wenig fühlt sich das wie Schreiben lernen an. Dadurch, dass der Pencil auf dem Display klackert, habe ich manchmal den Eindruck, ich würde diese Buchstaben in eine Steintafel hämmern. Gleichzeitig fällt mir auf, dass ich sehr viel Schreibschrift schreibe, so wie ich es in der Grundschule gelernt habe. Es fühlt sich so an, als würde ich eine lange Linie malen. Interessant, dass so eine hochmoderne Schiefertafel Erinnerungen an meine Schulzeit, die doch schon etwas zurückliegt, und an die Steinzeit, die noch etwas länger zurückliegt, weckt. Mir fällt auf jedem Fall auf, dass ich umso mehr schmiere, je schneller ich schreibe. Aber keine Sorge, das passiert auch, wenn ich mit einem echten Stift mit echter Tinte auf echtem Papier schreibe.</p> <p>Das iPad hat jedoch nicht nur den Stift, um Eingaben entgegenzunehmen, sondern wie die meisten iOS-Geräte auch eine Bildschirmtastatur. Bisher stand ich mit der immer ein bisschen auf Kriegsfuss, weil ich von einer Tastatur haptisches Feedback und eine sauberere Trennung der Tasten gewohnt bin — ich bin ein großer Fan mechanischer Tastaturen. Selbst auf der kleineren Version der Tastatur auf meinem iPhone vertippe ich mich wesentlich häufiger, als mir lieb ist. Das dürfte auf dem iPad nicht anders sein. Ich möchte mit dem iPad aber auch nicht mein geliebtes MacBook mit seiner Tastatur ersetzen, mein Plan ist viel mehr, ihm mit seinen ganz eigenen Stärken eine Chance zugeben, seinen Platz zu finden, sei es als digitales Notizbuch oder als Malblock. Ich bin zwar kacke im Malen, aber es ist ja noch kein <a href="https://www.unmus.de">Marco</a> vom Himmel gefallen. An Marco und seine <a href="https://www.unmus.de/pinseldisko/">liebevollen Illustrationen</a> musste ich übrigens auch denken, als ich mir das iPad gekauft habe. Es ist allerdings nicht mein erstes iPad.</p> <p>Als vor einigen Jahren das <a href="https://en.wikipedia.org/wiki/IPad_2">iPad 2</a> erschien, kaufte ich Fuchs mir das <a href="https://en.wikipedia.org/wiki/IPad_(1st_generation)">iPad 1</a>. Damals war ich noch in der Ausbildung und wollte es schon einmal einfach probieren. Wir wurden aber nicht richtig warm miteinander, es verwandelte sich in eine sehr teure Fernsehzeitschrift und irgendwann gingen wir getrennte Wege. Dieses Mal dürfte aber alles anders werden — wieder einmal: Ich habe keinen Fernsehanschluss mehr.</p> <p>Wie ich dennoch verhindere, dass Pencil+iPad ihre Faszination verlieren und doch einfach nur ungenutzt in der Gegend rumliegen werden, das kann ich noch nicht sagen. Wahrscheinlich ist da auch noch ein bisschen regelmässige Liebe in Form von Benutzung meinerseits dabei. Da ist es ja fast eine Fügung des Schicksals, dass mir die beginnende Barcamp-Saison da gewissermaßen unter die Arme greifen kann: Endlich kann ich auch mal eine Session zum Thema Sketchnotes besuchen. Also vorausgesetzt, dass die noch jemand anbietet.</p> <p>Alles in allem freue ich mich darauf zu sehen, wie diese moderne Schiefertafel nebst Meißel ihren Platz suchen wird. Ob die beiden den Traum erfüllen können, ein analoges Notizbuch zu ersetzen, wird hoffentlich die Zeit zeigen.</p> <p>Zumindest hat es für einen mehrseitigen Blogpost gereicht.</p> Kundenbetreuer tag:bullenscheisse.de,2018-08-30:/2018/kundenbetreuer 2018-08-30T18:11:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich wollte mehr bloggen und nicht immer so große und aufwendige Sachen schreiben. Als ob das, was ich bisher gebloggt habe, groß und aufwendig wäre.</p> <p>Bei Marco rufen regelmässig Call Center an. Wenn sie ihn zu sehr nerven, <a href="https://www.unmus.de/ressourcenverschwendung-im-call-center/">blacklistet er ihre Telefonnummern</a>. Daran musste ich heute denken:</p> <p>Vor geraumer Zeit habe ich meinen Mobilfunkvertrag gekündigt, weil die zwei Jahre Mindestvertragslaufzeit bald rum sind, ich die Kündigungsfrist nicht verpennen und so in ein weiteres Jahr Mobilfunkvertrag schlittern wollte. Damals sagte ich dem Menschen an der Hotline, dass ich mich melden würde, falls ich doch noch an einer Vertragsverlängerung interessiert sei. Das, was ich damals gesagt habe, war: Lasst mich bitte mit euren Werbeanrufen in Frieden, ich melde mich dann schon, wenn ich Interesse daran habe.</p> <p>Heute rief dann jemand von meinem Mobilfunkanbieter an. Ob ich meine Nummer nicht behalten wollen würde. Ich brauche immer eine gewisse Zeit, bis ich meine jeweils aktuelle Handynummer auswendig kann, von daher wäre es tatsächlich keine schlechte Idee, die Nummer mitzunehmen. Nichtsdestotrotz roch es förmlich danach, dass das einer dieser Werbeanrufe war. Darauf sprach ich Herrn R. von meinem Mobilfunkanbieter — so hatte er sich jedenfalls vorgestellt — dann auch direkt an. Er gab es dann auch unumwunden zu und meinte, dass diese Rufnummermitnahme tatsächlich nur eine höfliche Einleitung gewesen wäre. Es war also schon ein holpriger Start in das Gespräch.</p> <p>Dann wollte Herr R. mir Angebote machen, die ich nicht hören wollte, deshalb schlug ich ihm vor, ob es nicht besser wäre, was mein Mobilfunkanbieter mir bieten müsste, um zu bleiben:</p> <ul> <li>eine echte LTE-Flatrate. Ungedrosselt.</li> <li>monatlich kündbar</li> <li>so Sachen wie SMS-Flat und Telefon-Flat in alle Netze finde ich mittlerweile einfach selbstverständlich und auch nicht der Rede wert</li> <li>dafür will ich höchstens 50 Euro zahlen.</li> </ul> <p>Dann fingen wir an zu diskutieren: Mein Mobilfunkanbieter hätte keine ungedrosselte Flatrate im Angebot, sagte Herr R. Blödsinn, sagte ich, mittlerweile haben das alle großen Mobilfunkanbieter in Deutschland. Das sei ihm neu, sagte Herr R. Ich werde hier jetzt eh nichts am Telefon kaufen, sagte ich. Er könne mich auch morgen nochmal anrufen, sagte Herr R. von meinem Mobilfunkanbieter.</p> <p>Zwischendrin legte er jedes meiner Worte auf die Goldwaage. Was ich denn mit ungedrosselt meinte. Geschwindigkeit? Volumen? Was ist an ungedrosselt so schwer zu verstehen? Das Gespräch schaukelte sich hoch, ich fühlte mich nicht ernst genommen und wollte auch am nächsten Tag nicht nochmal von ihm angerufen werden. Wir verabschiedeten kalt, aber höflich und legten auf.</p> <p>Ich kam mir dann schlicht und ergreifend verscheissert vor: Zum einen bitte ich darum, dass ich nicht werbeangerufen werde und dann werde ich unter einem schlechten Vorwand doch werbeangerufen. Dann kommt dazu, dass das Gespräch alles andere als angenehm war — da muss ich mich zur Hälfte aber auch an die eigene Nase fassen. Klar kann Herr R. nicht unbedingt was dafür, dass seine Kolleg*innen das damals nicht ins System eingetragen haben, er konnte es laut eigener Aussage aber auch nicht. Und wahrscheinlich muss er irgendeine Quote erfüllen und hat in dem Gespräch mit mir wertvolle Zeit verloren.</p> <p>Morgen kann Herr R. mich nicht mehr anrufen. Seine Nummer steht als einzige bisher auf meiner Blacklist.</p> Angela Merkel ist Hitlers Tochter tag:bullenscheisse.de,2018-08-24:/2018/angela-merkel-ist-hitlers-tochter 2018-08-24T17:18:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Im September 2001 zogen wir nach Franken. Am 11. September 2001 passierte 9/11. Zufall? Ein paar Jahre später besuchten wir mit Tante, Cousins, Cousinen und Freund*innen das <a href="https://de.wikipedia.org/wiki/Bardentreffen">Bardentreffen in Nürnberg</a>. Die Fahrt mit dem Zug dauerte eine halbe Stunde, wir diskutieren über alles Mögliche. Smartphones gab es damals noch nicht, MP3-Player waren unbezahlbar und das Internet war damals noch wirklich Neuland und in weiter Ferne.</p> <p>Die Nachbar*innen meiner Tante waren zu der Zeit Zeugen Jehovas, beim universellen Leben oder einer vergleichbaren Vereinigung und somit ein interessantes Thema zum Lästern. Irgendwer fragte irgendwann, was die denn so wollen. Das ist doch ganz klar, sagte ich, die wollen die Weltherrschaft. Danach tat ich wichtig, unnahbar und schaute aus dem Fenster. Was man halt so macht als Kind, das sich — und anderen — etwas erklärt hat und keine Rückfragen zulassen will.</p> <p>Am Donnerstag fuhr ich wieder mit der Bahn, dieses Mal eine etwas längere Strecke. Am Bahnhof kaufte ich mir für die Fahrt „<a href="https://www.hanser-literaturverlage.de/buch/angela-merkel-ist-hitlers-tochter-im-land-der-verschwoerungstheorien/978-3-446-26028-3/">Angela Merkel ist Hitlers Tochter</a>“ von <a href="https://twitter.com/caltf4">Christian Alt</a> und <a href="https://twitter.com/Wurzelbier">Christian Schiffer</a>.</p> <p>Christian und Christian — ich verwechsle die beiden immer — haben ein Buch über Verschwörungsmythen, -theorien und -praktiker*innen geschrieben. Sie erklären, wie und warum sie funktionieren, nehmen einige Mythen auseinander und besuchen den Vater einer Freundin, der gerade seinen Zeh in den Kaninchenbau gesteckt hat. Sie entwerfen eine eigene Verschwörungstheorie, kaufen sich eine Facebookgruppe und bringen die beiden zusammen — Spoiler: Don't try this at home. Sie reden mit <a href="https://de.wikipedia.org/wiki/Richard_Gutjahr">Richard Gutjahr</a> über die Shirtstorms, <a href="https://www.youtube.com/watch?v=MXc02u_e5bE">die seine Familie und er abbekamen</a>, und sie geben sich zwei Drittel eines Vortrags von <a href="https://de.wikipedia.org/wiki/David_Icke">David Icke</a>, bevor sie das letzte, wirklich grandiose Kapitel („Lasst uns eine Wissenspyramide bauen“) schreiben.</p> <p>Das Buch ist größtenteils komisch und lustig, manchmal ernst. Zwischendrin ging mir der pubertäre, rotzige, „Bullshit!“-lastige Schreibstil auf die Nerven. Sie selbst sagen, dass sie das Buch für die schweigende Mehrheit geschrieben haben. „Eine Mehrheit, die keine Lust mehr hat, über unbewiesene Fakten zu streiten“ (S.13). Dabei machen sie sich immer wieder über Verschwörungstheorien und ihre Praktiker*innen lustig, sie übertreiben und verdrehen dabei die Augen. </p> <p>Mehr als einmal hatte ich den Eindruck, dass sich die beiden mit dem Buch einen Spaß erlauben: Bisweilen untermauern sie ihre Erkenntnisse mit Beispielen, dass mir <a href="https://de.wikipedia.org/wiki/Axel_Stoll">Dr. (!) Axel Stoll</a> himself auf der Schulter saß und mir sein berühmt-berüchtigtes „Muss man wissen!“ ins Ohr flüsterte. Gefühlt hoppelt man mit Christian und Christian immer tiefer in den Kaninchenbau hinein. Nichtsdestotrotz finden sich immer wieder auch scheinbar banale, aber wichtige Erkenntnisse:</p> <ul> <li>Verschwörungstheoretiker*innen sind allem gegenüber skeptisch, nur nicht ihrer eigenen Theorie gegenüber.</li> <li>„Hinter jedem Verschwörungstheoretiker steckt ein Mensch wie du und ich. Mit Hoffnungen, Träumen, Sorgen und Problemen. Dasselbe gilt für die Menschen, über die Verschwörungstheorien existieren. Ja, auch George Soros.“ (S. 269)</li> <li>Reichsbürger*innen Waffen zu geben ist eine schlechte Idee.</li> </ul> <p>Alles in allem ist es ein durchaus unterhaltsames Buch. Als vermeintlich aufgeklärter Mensch kann man bei der Lektüre recht häufig schmunzeln und sich besser fühlen. Weil man selbst ist ja gar nicht so doof, an Verschwörungstheorien zu glauben. Und man wird gelegentlich daran erinnert, an was für einen Bullshit man als Kind — oder die alten Griechen mit ihren Göttern — bisweilen geglaubt hat, weil man es nicht besser wusste, aber auch irgendwie zu bequem war, sich damit auseinander zu setzen und seine Ansichten zu überdenken. Grüße an die Nachbar*innen meiner Tante, ihr wart echt ziemlich nett.</p> <p>Das Buch ist 2018 im Hanser-Verlag erschienen und kostet 18 Euro. Das Register beginnt auf Seite 279, die Quersumme davon ist 18. Ich glaube, ich bin da was ganz großem auf der Spur. Und jetzt kommt's: Das Buch beginnt auf Seite 9. Und was ist die Quersumme von 18? Denkt mal drüber nach.</p> preconditionFailure tag:bullenscheisse.de,2018-07-01:/2018/preconditionfailure 2018-07-01T21:08:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>One of my goals for May 2018 was to finally read <a href="https://pragprog.com/book/tpp/the-pragmatic-programmer">The Pragmatic Programmer</a>. I haven't succeeded yet, that's why this year, June was May, Extended Edition and July is June, Extended Edition.</p> <p>A few years ago, a dear friend of mine recommended reading this book to me and I should have listened to him. It is so interesting to read, I've learned a lot of things and I'm barely halfway through. What I like about this book is that it encourages you to think about your work and how you achieve it. It shows you good practices without being arrogant.</p> <p>As I'm reading this book quite intensively, I take a lot of notes. If you're interested to read them, I'd be more than happy to publish them in another blogpost. <a href="https://twitter.com/zeitschlag">Just let me know</a>. At the moment, they're written down in my old-fashioned notebook.</p> <p>In "The Pragmatic Programmer", there are several advices. Number 31 of them is:</p> <blockquote> <p>Design by Contract.</p> </blockquote> <p>One of several things written down in a contract are preconditions. They're basically requirements or conditions, that one party must ensure to be true, before the other party can start to fulfill its part of the contract. It is to be defined in the contract, which party must ensure, that these requirements are met.</p> <p>I am an iOS developer for a living. A few months ago, a former colleague of mine showed me <a href="https://developer.apple.com/documentation/swift/1541112-assert"><code>assert</code></a>, <a href="https://developer.apple.com/documentation/swift/1539616-assertionfailure"><code>assertionFailure</code></a>, <a href="https://developer.apple.com/documentation/swift/1540960-precondition"><code>precondition</code></a> and <a href="https://developer.apple.com/documentation/swift/1539374-preconditionfailure"><code>preconditionFailure</code></a>.</p> <p>The main difference — he explained it to me at least this way — was that <code>assert(false)</code> and <code>assertionFailure</code> let the app crash only in debug-builds, while a <code>preconditionFailure</code> leads to a crash in release-builds as well</p> <p>When I read about preconditions in "The Pragmatic Programmer", I felt like being reminded about this conversation between my coworker and me. So I read Apple's documentation of <a href="https://developer.apple.com/documentation/swift/1539374-preconditionfailure"><code>preconditionFailure</code></a> again. It says:</p> <blockquote> <p>Indicates that a precondition was violated.</p> <p>Use this function to stop the program when control flow can only reach the call if your API was improperly used.</p> </blockquote> <p>Next, I wanted to know, if Swift has some kind of <em>Design by Contract</em> support, but the mighty Internet <a href="https://stackoverflow.com/questions/31817359/design-by-contract-in-swift#31951965">says no</a>:</p> <p><img alt="" src="https://media.giphy.com/media/utmZFnsMhUHqU/giphy.gif"/></p> <p>The meaning of Apple's <code>precondition</code> and <code>preconditionFailure</code> differs slightly from <em>DbC</em>, just like the way they want me to use them: </p> <blockquote> <p>The global functions <code>assert</code>, <code>assertionFailure</code>, <code>precondition</code> and <code>preconditionFailure</code> are designed to be sprinkled liberally throughout code without impacting release build performance. — <a href="https://stackoverflow.com/a/31951965/5626642">Source</a></p> </blockquote> <p>So, yeah, as a conclusion one could say, that <code>precondition</code> the <em>DbC</em>-way seems to be different from <em>swifty</em> <code>precondition</code>.</p> <p>Another thing I'd like to mention is, that I'd like to write more blogposts like this: somehow programming-related, short articles in English. I'm not entirely sure about the format: Should I just use this — German — blog? Should I start another one?</p> #dbhackathon tag:bullenscheisse.de,2018-05-22:/2018/dbhackathon 2018-05-22T21:27:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <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> Open Source tag:bullenscheisse.de,2018-05-13:/2018/open-source 2018-05-13T22:06:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <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> Es geht weiter tag:bullenscheisse.de,2018-05-07:/2018/es-geht-weiter 2018-05-07T22:55:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <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> Dear recruiter tag:bullenscheisse.de,2018-04-11:/2018/dear-recruiter 2018-04-11T20:26:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Earlier this day I wrote a <a href="https://twitter.com/zeitschlag/status/983991433840480258">thread on twitter</a>. I wanted this thread to be on my blog in an extended version. So here we go:</p> <p>A recruiter sent me a message on Stack Overflow today: He was looking for a Senior iOS Developer/iOS magician for a Berlin-based health startup promising the usual promises (Startup mentality, flexible working hours, a budget for conferences and hardware, cutting edge, international team, a decent salary...) He stumbled upon <a href="https://stackoverflow.com/users/5626642/nathan-mattes">my profile</a> and thought it to fit perfectly for that position. Although I told him that I’m not interested, he has made me think about some things.</p> <p>I’m neither a Senior iOS developer nor an iOS magician/ninja/rock star... I’ve been writing Enterprise iOS Apps as an employee for nearly two and a half years now and I consider myself to be a mediocre — sometimes really bad — iOS developer.</p> <p>I don’t like working after hours. “startup mentality” and “flexible working” sound to me like “lots of after hours”. I often feel ashamed of code, I wrote in the past and some hacks I wrote yesterday. I think that's a good sign: I got better since then. I don’t like “cutting edge-technology” as in my experience, the cutting edge moves pretty quickly.</p> <p>I want to write robust, well designed, accessible, maintainable, high-quality software. I’m failing too often to do so. A year, a month or a week ago, I failed more often, so I’m fine with that. Sometimes I wonder: Why the heck does my employer pay me 1742€ per month for the shitty work I’m doing?</p> <p>Oh, I think it’s important to share how much you earn. I make 1742€ per month for 30 hours per week after taxes and stuff. I’m unionized as I consider solidarity very important. I love to learn and to gain knowledge and share it with other people. Attending one conference a year isn’t enough to learn. A — formerly — secret dream of mine is attending <a href="https://en.wikipedia.org/wiki/Apple_Worldwide_Developers_Conference">Apple’s annual WWDC</a>.</p> <p>I want to improve and learn new things every single day and I want my employer to pay me for that. I’m white, young, and male and I want to use my privileges to make the world a better place for everyone. I want to work in a diverse team. I dislike hierarchies and plan offices and I value honest, constructive feedback. Oh, and communication on eye level. </p> <p>As I wrote earlier: I see myself as a mediocre developer, but I want to change that and develop myself both on a professional and personal level. This needs more time, more energy and more failing and will lead to a lot more frustration, I guess.</p> <p>My dream is to work in a diverse, inclusive environment. My dream is to work on an app I use myself on a daily basis. <a href="https://www.flightradar24.com">Flightradar24</a>, for instance, is one of those apps. But I’m too shy to apply for a job there. My dream is getting paid for developing open source software, learning and sharing my knowledge. My dream is getting paid enough to put enough money aside. You know, for when my washing machine and my glasses break at the same time and need to be replaced. Oh, and attending the aforementioned WWDC.</p> <p>At the moment I see my job as a tool that pays the bills and enables me to do more interesting things than developing Enterprise Apps in my spare time. I’d like to change that one day.</p> A ten year old machine tag:bullenscheisse.de,2018-04-09:/2018/a-ten-year-old-machine 2018-04-09T20:35:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Over a year ago, a good friend of mine gave me his old <a href="https://en.wikipedia.org/wiki/MacBook#Unibody_aluminum_model">Late 2008 13-inch MacBook</a>. It is one of these beautiful unibody aluminum machines, that look like the later 13-inch MacBook Pros. I have considered it too nice to throw it away, so I bought an SSD and upgraded the memory. This is still possible on these old MacBooks. Another necessity was to buy a new MagSafe Power Adapter. Then I was ready to go. It is pretty amazing that a nearly ten year old computer still works.</p> <p>Some things prevented me from using this computer on a more regular basis. That is, for instance, the version of OS X — it is not even macOS — that is officially supported on this machine. Although the Late 2008 MacBook runs OS X 10.11 “El Capitan”, which still receives updates from time to time, the newest release of Xcode needs at least macOS 10.13.2 “High Sierra”. And as an hobbyist iOS developer — it doesn’t pay any bills, for that reason I’m also employed as an iOS developer — I would like to have a machine capable of running a recent version of Xcode.</p> <p>Other reasons are the weight and the size, as I nearly always carry my personal computer with me. Compared to a 13-inch MacBook Air (1.35kg, up to 1.7cm), it feels pretty heavy with its weight of 2.0kg and its thickness of 2.41cm. It also lacks a backlit keyboard, has a worse built-in iSight camera, no card-reader, an old battery, <a href="https://support.apple.com/kb/SP500?viewlocale=en_US&amp;locale=en_US">and so on</a>.</p> <p>Nevertheless, Alex Repty <a href="https://twitter.com/arepty/status/921373010812162048">wrote nearly an entire game</a> on an aluminum MacBook in 2015 — it’s called <a href="http://www.cosmos-game.com">Cosmos</a> and I totally suck at it — and last year, Low End Mac published an “<a href="http://lowendmac.com/2017/ode-to-the-unibody-macbook/">Ode to the Unibody MacBook</a>”. So I guess, it’s still a good machine. </p> <p>Back in 2013 I bought a <a href="https://en.wikipedia.org/wiki/IPhone_(1st_generation)">1st generation iPhone</a> and used it for two weeks. It was an interesting experience, I even wrote a couple of blogposts (<a href="https://web.archive.org/web/20150421223813/http://blog.bullenscheisse.de:80/die-vorgeschichte">1</a>, <a href="https://web.archive.org/web/20150422143116/http://blog.bullenscheisse.de:80/die-vorbereitung/">2</a>, <a href="https://web.archive.org/web/20150423110827/http://blog.bullenscheisse.de:80/die-kandidaten/">3</a>, <a href="https://web.archive.org/web/20150422143111/http://blog.bullenscheisse.de:80/apps-apps-apps/">4</a>, <a href="https://web.archive.org/web/20130321003120/http://blog.bullenscheisse.de:80/das-iphone-experiment-wie-spotify-noch-unter-ios-3-1-3-lauft/">4.5</a>, <a href="https://web.archive.org/web/20150423111533/http://blog.bullenscheisse.de:80/das-iphone-experiment-halbzeit/">5</a>, <a href="https://web.archive.org/web/20150423104525/http://blog.bullenscheisse.de:80/das-iphone-experiment-fazit/">6</a>). Due to the fact that I limited myself I had to find new ways to do certain things: You want to listen to your music on Spotify? Okay, but you can’t do anything else then. You want to take pictures? Well, take this 2MP camera.</p> <p>Although everything worked out pretty well, it was a time consuming experience: The “widescreen iPod with touch controls”, the “revolutionary mobile phone” and the “breakthrough Internet communicator” felt quite slow in 2013.</p> <p>Now I want to repeat this with a ten year old computer: I want it to be my main machine for the next three weeks. </p> <p>To do so, I wanted to get rid of as many obstacles as I could. I couldn’t change neither weight nor size. Luckily, a friend pointed me to a tutorial on <a href="http://dosdude1.com/highsierra/">how to install macOS 10.13 “High Sierra” on an unsupported Mac</a>, so I could at least fix that. I installed “High Sierra” yesterday and everything went surprisingly well. Now my Late 2008 Aluminum MacBook, that doesn’t run High Sierra, runs High Sierra:</p> <p><img alt="Screenshot of Specs" src="https://bullenscheisse.de/img/IMG_155_Screenshot_Specs.png"/></p> <p>I use my computer for developing software (mostly apps for iOS), writing blogposts (like this one), recording a <a href="http://codestammtis.ch">podcast</a>, listening to music, writing tweets — as long as I can use a <a href="http://apps-of-a-feather.com">third-party twitter client</a> — and other kinds of communication. I don’t plan to build a whole video game,it so I can’t really say, what will be different — probably not a lot. I’m going to need more time for certain things, I guess, but that’s okay. </p> <p>I’m looking forward to the next couple of weeks and the experience of using a ten year old machine. Will it be frustrating? Will there be pain points? How many times will I have to switch back to the younger computer? Let’s see.</p> Internatsschüler unter sich tag:bullenscheisse.de,2018-04-02:/2018/internatsschueler-unter-sich 2018-04-02T13:57:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Marco betreibt ein kleines, feines Medienimperium. Neben <a href="https://www.unmus.de">unmus</a> — seinem Blog für längere Texte — schreibt er kürzere für die <a href="https://www.unmus.de/zimtwolke/">Zimtwolke</a>, lässt seine <a href="https://www.unmus.de/pinseldisko/">Pinsel tanzen</a> und fotografiert <a href="https://www.unmus.de/raketenstaub/">Raketenstaub</a>. Und er führt Gespräche mit Menschen, nimmt sie auf und stellt sie als <a href="https://www.unmus.de/zirkusliebe/">Zirkusliebe</a> ins Netz — neudeutsch: Podcast.</p> <p>Anfang des Jahres hatte ich die Ehre, <a href="https://www.unmus.de/zirkus012-internatsschueler-unter-sich/">einer dieser Menschen zu sein</a>. Wir spielen uns die Bälle zu und unterhalten uns über alles Mögliche:</p> <blockquote> <p>Wer sind die Iron Blogger? Wie ist das Leben in einem Internat? Sind da auch Jungen und Mädchen brav voneinander getrennt? Wie ist die Arbeit in einem Großkonzern? Muss man bei einem StartUp wirklich schuften ohne Ende? Die Welt verbessern oder doch lieber alles anzünden? Wer sind die Könige der Welt? Wo fängt der Kapitalismus an? Was ist der Sinn einer Aktiengesellschaft? Wer ist der reichste Mensch der ganzen Welt? Wem darf jetzt nicht die Luft ausgehen? Wie steht es um die Kommentarkultur in der Blogosphäre? Was verdienen Nathan und Marco mit ihren Blogs? Wer mag nicht aufstehen, wenn er auf der Coach liegt? Welches iPhone wackelt? Was zahlt Marco zur Not auch in Bar? Wer muss n'bissl vordenken? Gehört das Design zum Leseerlebnis? Wer hat eine Abmahnung von der AFD erhalten? Was geht nicht mehr von alleine weg?</p> </blockquote> <iframe width="100%" height="290" src="https://www.unmus.de/wp-content/plugins/podlove-podcasting-plugin-for-wordpress/lib/modules/podlove_web_player/player_v4/dist/share.html?episode=https://www.unmus.de/?podlove_player4=89" frameborder="0" scrolling="no"></iframe> <p>Lieber Marco, vielen Dank für die Einladung und das Gespräch.</p> Von A nach tag:bullenscheisse.de,2018-04-01:/2018/von-a-nach 2018-04-01T14:18:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor einigen Jahren fragte ich mich, wie ich in einigen Jahren leben möchte. Wo ich mich sehe. Es ist vergleichbar mit der Frage, wo ich mich in einem Jahr beruflich sehe, die in jedem meiner Personalgespräche eine Rolle spielte. Eine Frage, auf die ich nie eine Antwort habe. Ich mag das Gefühl, unterwegs zu sein. Zu reisen. Dabei andere Perspektiven zu sehen. Zu lernen, wie Probleme auf andere Art gelöst werden und darüber zu schmunzeln. Aus dem Fenster eines Zuges, eines Buses, eines Flugzeuges zu blicken. Auf dem Weg zu sein, von A nach... ja, nach wo eigentlich? </p> <p>Vor einigen Jahren erwuchs der Wunsch, dass ich mehr reisen möchte. In letzter Zeit geistert mir der Gedanke im Kopf, dass ich auf der Reise zum Reisen auf einem guten Weg bin. Ich reise gerne und bin dank Teilzeit an ziemlich vielen Wochenenden unterwegs — am liebsten und meistens mit leichtem Gepäck.</p> <p>Gestern lief ich. Vom Ferienhaus zum Meer. Der Gedanke schlich sich in meinen Kopf und begleitete mich auf dem Weg zurück. In den letzten Jahren kam ich im Rahmen meiner Möglichkeiten ganz gut rum. Habe ein paar neue Länder, Regionen und Städte gesehen. Und doch nur einen Bruchteil: Irland, England, Österreich, Ungarn, die Schweiz, Dänemark, Griechenland, die Vereinigen Staaten von Amerika, Sachsen, das Ruhrgebiet, Köln, Hamburg, Stettin, Dresden, Köln.</p> <p>Ich habe viel Zeit im Zug verbracht. Gemerkt, dass zehn Stunden Zug am Stück und vierzehn Stunden am Tag viel sind. Festgestellt, dass ein achtstündiger Flug, obwohl ich sehr, sehr gerne fliege, irgendwann einfach langweilig wird. Und trotzdem möchte ich die Reise fortsetzen. Mehr alleine reisen, länger reisen, weitere Strecken zurücklegen.</p> <p><img alt="" src="https://bullenscheisse.de/img/IMG_133_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_134_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_135_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_136_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_137_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_138_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_139_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_154_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_140_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_141_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_142_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_143_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_145_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_153_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_144_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_146_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_147_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_148_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_149_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_150_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_151_instagram.jpg"/> <img alt="" src="https://bullenscheisse.de/img/IMG_152_instagram.jpg"/></p> <p>Marco hat neulich übrigens seine <a href="https://www.unmus.de/instagram-on-unmus/">Fotos nach Hause geholt</a> und mich dadurch auf die Idee gebracht, wie ich diese Gedanken bebildere. Instagram ist für mich eine Art privates Fotoalbum, in dem ich ein oder zwei Fotos jeder Reise einklebe. Ich habe den jetzigen Urlaub genutzt, um die Reisebilder mal herunterzuladen und die schönsten hier in den Blog zu schieben, wobei ich zugeben muss, dass ich von Fotografieren eigentlich keine Ahnung habe</p> <p>Vor langer Zeit habe ich bei Maik mal ein paar <a href="https://www.langweiledich.net/so-machst-du-bessere-fotos/">Tricks für bessere Fotos</a> gefunden, die ich jedes Mal halbherzig zu beherzigen versuche.</p> pretix auf einem Uberspace tag:bullenscheisse.de,2018-03-23:/2018/pretix-auf-einem-uberspace 2018-03-23T12:21:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Im Oktober 2015 schrieb ich eine <a href="https://bullenscheisse.de/2015/pretix-auf-einem-uberspace-installieren/">Anleitung</a>, wie man <a href="https://github.com/pretix/pretix">pretix</a> auf einem <a href="https://uberspace.de">Uberspace</a> installiert. Nun ist heute nicht mehr Oktober 2015 und die alte Anleitung entsprechend nicht mehr aktuell. Mich haben mehrere Leute darauf hingewiesen. Ausserdem brauche ich aus <a href="https://bullenscheisse.de/2018/osstatus-com/">Gründen</a> selbst ab und an mal eine pretix-Instanz und habe mich entschlossen, die Anleitung mal zu überarbeiten und in diesem Blogpost auf einen neueren Stand zu bringen.</p> <h4>Einleitung</h4> <p>pretix ist ein Stück freie Software, mit dem man Tickets für Konzerte, Messen, Barcamps und sonstige Veranstaltungen verkaufen kann. Das Tool setzt auf <a href="https://www.djangoproject.com">Django</a> und benötigt Python 3. </p> <p>Es lässt sich unter <a href="https://docs.pretix.eu/en/latest/admin/installation/manual_smallscale.html">Linux</a> installieren, die Anleitung dafür kann man aber nicht eins zu eins auf die Ubernauten übertragen. Im Folgenden möchte ich beschreiben, was ich tun musste, um pretix auf einem Uberspace zumindest zum Laufen zu bringen. Der Benutzername für den Uberspace ist <code>barcamp</code>, der Uberspace selbst heisst <code>kaul</code>. Ich möchte noch darauf hinweisen, dass diese Installation eine SQLite-Datenbank nutzt. Die Dokumentation sagt dazu:</p> <blockquote> <p>If you have real users on your system you’ll really want to use</p> <p>A database (MySQL or PostgreSQL)</p> <p>A reverse proxy web server (nginx or Apache)</p> </blockquote> <p>Die Datenbank ist dieser Anleitung egal. Ausserdem fehlen noch ein, zwei andere Kleinigkeiten (siehe unten), um so Sachen wie SSL musst du dich ebenfalls selbst kümmern. Im Großen und Ganzen habe ich mich an die Anleitung der Ubernauten für <a href="https://wiki.uberspace.de/cool:django">Django</a> gehalten und sie mit besagter Installationsanleitung für Linux gekreuzt. </p> <p>Trotzdem gilt: Du wirst diese Anleitung nicht in dieser Form übernehmen können. <strong>Lies sie aufmerksam und benutze deinen eigenen Kopf, um Anpassungen zu machen</strong> Wenn du irgendwo nicht weiterkommst oder eine Anregung hast, dann freue ich mich natürlich über <a href="https://bullenscheisse.de/about/">Fragen und Feedback</a>.</p> <p>Wenn du — warum auch immer — keine eigene pretix-Instanz betreiben möchtest, kannst du ja mal darüber nachdenken, die gehostete Version zu nutzen. Raphael bietet die Software auch as a Service an — zu <a href="https://pretix.eu/about/de/pricing">sehr erschwinglichen Konditionen</a>.</p> <h4>Anleitung</h4> <h5>pretix-Installation an sich</h5> <p>In einem erste Schritt lege ich einen Ordner für die eigentliche pretix-Installation, die Virtual Environment und das Verzeichnis für die pretix-Daten an:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ mkdir pretix_installation [barcamp@kaus ~]$ cd pretix_installation</code></pre> <p>Anschließend richte ich die <a href="https://virtualenv.pypa.io/en/stable/">virtuelle Umgebung</a> mit Python 3.6 ein und aktiviere sie:</p> <pre class="highlight"><code>[barcamp@kaus pretix_installation]$ python3.6 -m venv env [barcamp@kaus pretix_installation]$ source env/bin/activate</code></pre> <p>Zwar gibt es pretix auch im <a href="https://de.wikipedia.org/wiki/Pip_(Python)">Python Package Index</a>, aber weil ich ein paar Uberspace-spezifische Anpassungen in der <code>settings.py</code> vornehmen muss, bringt das — zumindest nach meinem Kenntnisstand, vielleicht weißt du es besser, dann lass mich bitte an deinem Wissen teilhaben — wenig. Zeit, das entsprechende Repository auf Github zu klonen und in den Ordner zu wechseln:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix_installation]$ git clone https://github.com/pretix/pretix.git (env) [barcamp@kaus pretix_installation]$ cd pretix</code></pre> <p>Wenn du ein spezielles Release möchtest, wäre jetzt der richtige Zeitpunkt, den entsprechenden Branch oder Tag auszuchecken. Ich gehe davon aus, dass das Repository in einem Ordner namens <code>~/pretix_installation/pretix</code> liegt. Nun geht es daran, die Abhängigkeiten von pretix zu installieren:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ pip install -U gunicorn (env) [barcamp@kaus pretix]$ pip install -U -r src/requirements.txt</code></pre> <p>Danach muss ich — wie bereits erwähnt — die <code>settings.py</code> erweitern, wie bei den Ubernauten beschrieben:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ cat &lt;&lt; __EOF__ &gt;&gt; src/pretix/settings.py USE_X_FORWARDED_HOST = True __EOF__</code></pre> <p>Wie ebenfalls oben bereits erwähnt, braucht pretix ein Ordner, in dem es alle möglichen Daten ablegen kann. In diesem Beispiel ist es unter anderem die SQLite-Datenbank.</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ mkdir ../data_dir</code></pre> <p>pretix schaut an einigen Stellen nach der benötigten <a href="https://docs.pretix.eu/en/latest/admin/config.html">Konfigurationsdatei</a>, unter anderem im Home-Verzeichnis. Aus Bequemlichkeitsgründen lege ich sie deshalb einfach mal da an:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ cat &lt;&lt; __EOF__ &gt; ~/.pretix.cfg [pretix] instance_name=Frische Tickets! url=https://pretix.barcamp.kaus.uberspace.de currency=EUR datadir=/home/barcamp/pretix_installation/data_dir [database] ; Replace mysql with postgresql_psycopg2 for PostgreSQL backend=sqlite3 __EOF__</code></pre> <p>Wahrscheinlich — hoffentlich — wird deine anders aussehen. In der Konfigurationsdatei stehen alle möglichen Informationen, abhängig davon, was du alles nutzen möchtest. Beispielsweise steht hier die URL, unter der pretix erreichbar ist oder auch, wo sich das Verzeichnis für die Daten befindet.</p> <p>Hier sei nochmal ein Blick in die entsprechende <a href="https://docs.pretix.eu/en/latest/admin/config.html">Dokumentation</a> von pretix empfohlen — sie ist sehr gut. Danach initialisiere ich die Datenbank und lasse die statischen Dateien erstellen. Das hat mir bei etwas gedauert:</p> <pre class="highlight"><code>(env) [barcamp@kaus pretix]$ python src/manage.py migrate (env) [barcamp@kaus pretix]$ python src/manage.py rebuild (env) [barcamp@kaus pretix]$ deactivate</code></pre> <p>Damit bin ich mit der Installation von pretix durch.</p> <h5>Deamon und Erreichbarkeit</h5> <p>Ich könnte pretix jetzt wie jede andere Django-Anwendung starten. Es würde jedoch nicht im Hintergrund laufen und wäre noch nicht aus dem Internet erreichbar. Darum kümmere ich mich jetzt. Zuerst brauche ich dafür einen Port. Die <a href="https://wiki.uberspace.de/cool:django#deamon_einrichten">Ubernauten empfehlen folgenden Weg</a>, den ich einfach mal guttenberge:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ DJANGOPORT=$(( $RANDOM % 4535 + 61000)); netstat -tulpen | grep $DJANGOPORT &amp;&amp; echo &quot;versuch's nochmal&quot;</code></pre> <blockquote> <p>wenn hier keine Ausgabe <code>versuch's nochmal</code> erscheint, passt alles. Wenn <code>versuch's nochmal</code> kommt - versuchs noch mal :)</p> </blockquote> <p>Danach richte ich den eigentlichen Service ein, der sich darum kümmert, dass pretix im Hintergrund läuft:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ test -d ~/service || uberspace-setup-svscan [barcamp@kaus ~]$ uberspace-setup-service pretix /home/barcamp/pretix_installation/env/bin/gunicorn --error-logfile ~/error-log --reload --chdir /home/barcamp/pretix_installation/pretix/src --bind 127.0.0.1:$DJANGOPORT --workers 4 pretix.wsgi --name pretix --max-requests 1200 --max-requests-jitter 50</code></pre> <p>Im letzten Schritt muss ich dafür sorgen, dass dieser Service aus dem Internet ansprechbar ist:</p> <pre class="highlight"><code>[barcamp@kaus ~]$ mkdir /var/www/virtual/barcamp/barcamp.kaus.uberspace.de [barcamp@kaus ~]$ cat &lt;&lt; __EOF__ &gt; /var/www/virtual/barcamp/pretix.barcamp.kaus.uberspace.de/.htaccess RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteBase / RewriteRule ^(.*)$ http://127.0.0.1:$DJANGOPORT/$1 [P] RequestHeader set X-Forwarded-Proto https env=HTTPS __EOF__</code></pre> <p>Das war's.</p> <h5>Läuft bei mir</h5> <p>pretix wäre bei mir jetzt unter <a href="https://pretix.barcamp.kaus.uberspace.de">https://pretix.barcamp.kaus.uberspace.de</a> erreichbar.</p> <p><img alt="Startbildschirm von pretix" src="https://bullenscheisse.de/img/IMG_132_pretix.png"/></p> <p>Da sieht man denn natürlich nicht viel, weswegen ich mich unter <code>http://pretix.barcamp.kaus.uberspace.de/control/login?next=/control/</code> anmelden kann. Als Benutzername habe ich <code>admin@localhost</code>, als Passwort <code>admin</code> verwendet. <strong>Bitte denk daran, die Anmeldedaten zu ändern!</strong></p> <p><img alt="Anmeldebildschirm von pretix" src="https://bullenscheisse.de/img/IMG_99.png"/></p> <h4>Was noch fehlt</h4> <h5>Domain</h5> <p>Wie dir vielleicht aufgefallen ist, läuft pretix unter einer Subdomain — apropos Domain: <a href="https://pretix.barcamp.kaus.uberspace.de">pretix.barcamp.kaus.uberspace.de</a> ist wesentlich weniger lesbar als beispielsweise <a href="https://pretix.domain.tld">pretix.domain.tld</a>, du willst vielleicht also eine <a href="https://wiki.uberspace.de/domain">Domain</a> haben.</p> <p><del>Ich habe es zwischendrin mal hinbekommen, dass pretix auch in einem Unterordner lief, mir aber nicht aufgeschrieben, wie es geklappt hat und nun kann ich als Django/Python-Amateur das nicht mehr nachvollziehen. Falls jemand einen Hinweis hat, bin ich dankbar.</del></p> <p><a href="https://twitter.com/_rami_/status/978015739939577856">Raphael schrieb eben auf Twitter</a>, dass pretix im Unterordner schlicht nicht mehr unterstützt wird und üble Hacks braucht. Ich bin wohl auf so einen üblen Hack gestoßen und eventuell ist es gut, dass ich ihn nicht mehr nachvollziehen kann.</p> <h5>pretix-worker, Mails, MariaDB, Plugins...</h5> <p>Was ebenfalls nicht läuft, ist der in der pretix-Dokumentation erwähnte <em>pretix-worker</em>, ebenfalls fehlen sämtliche — bisweilen obligatorische — Zusatzssachen wie Mail, eine ordentliche Datenbank, <em>redis</em>, HTTPS, Plugins... Kurz: Sieh diese Anleitung bitte als einen ersten Schritt und kümmere dich anschliessend selbst darum, dass deine pretix-Installation gut und sicher läuft. Danke.</p> <h4>Links</h4> <ul> <li><a href="https://pretix.eu/about/de/">pretix im Netz</a></li> <li><a href="https://github.com/pretix/pretix">pretix auf Github</a></li> <li><a href="https://docs.pretix.eu/en/latest/">pretix-Dokumentation</a></li> </ul> Dein Freund und Rauswerfer tag:bullenscheisse.de,2018-03-15:/2018/dein-freund-und-rauswerfer 2018-03-15T12:51:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor ein paar Tagen gab es einen dieser Abende, an denen es so furchtbar kalt war. Gut verpackt lief ich vom Späti nach Hause, wobei der Späti mangels echter Spätis im Kiez eigentlich ein Discounter war. An einer Strassenecke parkte ein Polizeiwagen. Die beiden dazugehörigen Polizisten standen im Hauseingang eines Gebäudes, das seinerseits hinter dem Polizeiwagen stand. Ein Angestellter eines Sicherheitsdienstes hatte sie gerufen, weil sich ein Mensch in eben diesem Hauseingang schlafen gelegt hatte — es war ungefähr 22:00 Uhr.</p> <p>Man hörte ein wütendes Fluchen auf einer fremden Sprache. Ich hielt inne und beobachtete die Szene aus einigen Metern Entfernung, bis einer der Polizisten auf mich aufmerksam wurde. Was ich hier wolle, fragte er mich. Schauen, was Sie jetzt täten, entgegnete ich, schauen, was jetzt passiere. Der Plan war anscheinend, den schlafenden Menschen einfach in die Kälte zu schicken, weil er jegliche Hilfe abgelehnt hätte. In Notunterkünften würde er nur beklaut werden und dafür waren ihm seine Habseligkeiten verständlicherweise zu wichtig. Er — und nicht die Obdachlosigkeit — war ein Problem und der Job war nicht, das Problem zu lösen, sondern es loszuwerden.</p> <p>Ob er das richtig fände, wollte ich von dem Polizisten wissen und so fingen wir an zu diskutieren. „Obdachlose wollen doch so leben! Die haben es sich doch so ausgesucht!“ Ob er mal daran gedacht hätte, dass Schicksalsschläge Menschen aus ihrer Bahn werfen könnten, fragte ich. Auf die Frage, wie sein Leben aussehen könnte, wenn er einen lieben Menschen, beispielsweise eine Partnerin, verlieren würde, erwiderte er, dass er gar nicht verheiratet sei.</p> <p>Die Obdachlosen würden es in Berlin ausserdem ziemlich gut haben. Sie würden viel Geld verdienen und anders, als beispielsweise in Warschau, würden sie nicht verprügelt werden. Das sei übrigens der Grund, warum Warschau so sauber sei. Es klang unterschwellig so, als würde ihm das gefallen.</p> <p>Ich fragte ihn, wie sich Menschen einfach so in die Kälte zu entlassen, mit dem Selbstbild der Polizei als „Freund und Helfer“ oder „Da für dich“ vertrage. Ein „Freund und Helfer“ sei die Polizei seit dem Ende der Weimarer Republik nicht mehr. Ausserdem sei die Polizei eine Behörde. Und überhaupt. Wenn ich helfen wolle, solle ich „Gutmensch“ diesen Obdachlosen doch einfach mit zu mir nach Hause nehmen. „Dann können Sie sich um ihn kümmern! Dann kann er bei Ihnen alles vollscheißen und vollkotzen! Hat er letztens an der Straßenbahnhaltestelle auch getan!“ Er sei polizeibekannt und man schlage sich schon länger mit ihm rum.</p> <p>Unabhängig davon, ob der Mensch sich helfen lassen wollte oder nicht, finde ich, dass sich der Sicherheitsbediensteter hätte anders verhalten können. Natürlich kann ich nachvollziehen, dass er seinen Job machen möchte, aber er hätte bei dem Wetter vielleicht mal ein Auge zudrücken können. Die wenigsten Menschen verkriechen sich freiwillig im Eingangsbereich eines Hochhauses.</p> <p>Der Mensch, um den es ging, hatte sich während meiner Unterhaltung mit dem Polizisten aus dem Staub gemacht. Heute morgen sah ich ihn wieder. Er schlief vor dem Gebäude.</p> <p>Andere Länder gehen das Problem Obdachlosigkeit anders an, zum Glück. In <a href="http://www.zeit.de/gesellschaft/zeitgeschehen/2018-03/finnland-soziale-gerechtigkeit-grundwohnen-juha-kaakinen-interview/komplettansicht">Finnland</a> beispielse hat man ein anderes Konzept, um Menschen, die auf der Strasse leben, zu helfen. Ausserdem möchte ich noch zur <a href="https://www.berliner-stadtmission.de/aktuelles/kaeltehilfe-app/51abe73e12471c6a2f27744ead0f3829">Kältehilfe-App der Berliner Stadtmission</a> — danke Uli für den Hinweis — und zu <a href="https://www.brichbag.de">brichbag</a> verlinken.</p> <p>Ich wäre ein schlechter Sicherheitsdienstmitarbeiter.</p> Urteil am 6. Februar tag:bullenscheisse.de,2018-01-30:/2018/urteil-am-6-februar 2018-01-30T11:46:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Vor knapp zwei Wochen war die <a href="https://bullenscheisse.de/2018/gerichtstermin-wegen-wir-sind-afd-de/">mündliche Verhandlung</a> im Falle „Alternative für Deutschland (AfD) Bundesverband ./. Mattes, Nathan“. Zuerst möchte ich mich bei den Menschen bedanken, die nach Köln gekommen sind, um mir den Rücken zu stärken: Vielen Dank.</p> <p>Weil schon einige von euch gefragt haben, wie es gelaufen ist und ob ich jetzt direkt, ohne über „Los“ zu gehen, in den Knast gehe: Der Richter hat das Urteil für den 6.2. angekündigt. Als juristischer Laie würde ich sagen, dass die Verhandlung nicht allzu prickelnd für mich lief. Mehr wahrscheinlich in den nächsten Tagen.</p> osstatus.com tag:bullenscheisse.de,2018-01-24:/2018/osstatus-com 2018-01-24T18:56:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Ich sitze gerade an einer kleinen App fürs iPhone, einer Art <a href="https://play.google.com/store/apps/details?id=eu.pretix.pretixdroid&amp;hl=de">pretixdroid</a> für iPhone. Da liegen noch ein paar Abende Arbeit vor mir. Unter anderem speichert die App Dinge in der Keychain. Da es das erste Mal ist, dass ich irgendetwas schreibe, das etwas in die Keychain schreibt, stolpere ich hier und da noch gelegentlich und bekomme OSStatus-Codes. Da mir die Bedeutung von „-25299“ eher weniger sagt als „The item already exists.“, habe ich mal kurz das Internet durchforstet und stieß dabei auf <a href="https://www.osstatus.com">osstatus.com</a>.</p> Gerichtstermin wegen wir-sind-afd.de tag:bullenscheisse.de,2018-01-05:/2018/gerichtstermin-wegen-wir-sind-afd-de 2018-01-05T12:00:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Seit dem <a href="https://bullenscheisse.de/2017/update-zur-abmahnung-wegen-wir-sind-afd-de/">letzten Update zu wir-sind-afd.de</a> sind einige Monate ins Land gezogen, so wie die AfD leider in den Bundestag. Die Anwält_innen der AfD haben dann wenig später eine Klage vor dem LG Köln eingereicht. Ich werde es mir da demnächst <del>auf der Anklagebank</del> als Beklagter auf einem Sitzmöbelstück bequem machen dürfen.</p> <p>Der Gütetermin mit anschließender erste mündlicher Verhandlung findet am <strong>16. Januar 2018</strong> um <strong>13:00 Uhr</strong> im <strong>Sitzungssaal 235</strong> des <a href="https://www.google.de/maps/place/Landgericht+K%C3%B6ln/@50.9223221,6.9341594,17z/">LG Köln</a> statt. Die Verhandlung ist öffentlich. Wenn ihr also nichts Besseres zu tun habt, dann kommt doch rum und schaut euch das an. Ich freue mich sehr über Unterstützung. Weil Sicherheitskontrollen stattfinden, müsst ihr allerdings ein Ausweisdokument (Perso, Reisepass) mitbringen. Der Termin ist so wichtig, es gibt sogar eine <a href="https://bullenscheisse.de/2018/gerichtstermin-wegen-wir-sind-afd-de/PM_Muendliche_Verhandlung_AfD_Mattes.pdf">Pressemitteilung</a>.</p> <p>Ich möchte mich an dieser Stelle nochmal bei euch für eure Solidarität und meinem anwaltlichen Beistand für den anwaltlichen Beistand bedanken. Es gilt immernoch, was ich im Mai 2017 schrieb:</p> <blockquote> <p>In so einer Situation zu merken, dass man sowas nicht alleine durchstehen muss, tut unglaublich gut.</p> </blockquote> <p>Weil die Frage, wie man mich unterstützen kann, schon mehrfach kam — auch dafür: Danke. — möchte ich darauf noch kurz eingehen: Im Moment habe ich alles, was ich brauche. Im <em>worst case</em>, sprich: Wenn die Gegenseite den Prozess gewinnt, wäre ich zum einen die Domain los, zum anderen kämen für die erste Instanz knapp 6.000€ Prozesskosten auf mich zu. Falls das passiert, müsste ich euch doch um die eine oder andere Mark bitten.</p> <p>Bis dahin: Erfreut euch einfach weiterhin an Zitaten von Politiker_innen einer rechtsextremen, rassistischen, menschenverachtenden Partei, gut auffindbar unter <a href="https://wir-sind-afd.de/">wir-sind-afd.de</a>.</p> <p>Oh man, eine Pressemitteilung. Wie so ein Erwachsener.</p> Aus Scheiße Gold machen tag:bullenscheisse.de,2017-12-10:/2017/aus-scheisse-gold-machen 2017-12-10T11:01:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Die ZEIT sammelt heute <a href="http://www.zeit.de/mobilitaet/2017-12/deutsche-bahn-fahrplan-probleme-kunden/komplettansicht">Verbesserungsvorschläge</a> für die Deutsche Bahn. Das reicht von einem besseren Krisenmanagement und mehr Informationen, wenn etwas schief läuft, bis zu einer vereinfachten App.</p> <p>Im Großen und Ganzen bin ich beeindruckt von der Leistung der Bahn. Natürlich gibt es hier und da durchaus Verbesserungspotential, keine Frage. Trotzdem fahre ich gerne mit dem Zug und bin dankbar, dass ich sicher und einigermaßen entspannt und pünktlich ans Ziel komme.</p> <p>Worüber ich mich jedes Mal ärgere, sind die kostenpflichtigen Toiletten an Bahnhöfen. Anstatt sie selbst zu betreiben, zieht die Bahn es vor, dieses Angebot wohl aus Kostengründen von externen Partnerunternehmen anbieten zu lassen. Die bieten das sehr sichere Geschäft dann natürlich gerne an, weil Menschen einfach regelmässig pinkeln müssen. Und bereit sind, für die Befriedigung von Grundbedürfnissen Geld auszugeben.</p> <p>Am Berliner Hauptbahnhof beträgt der Preis für einen Toilettenbesuch einen Euro. Dafür bekomme ich einen 50-Cent-Gutschein, den ich bei einigen Geschäften im Bahnhof einlösen kann, wenn ich Brötchen, Burger, Kaffee oder Zeitschriften für einen bestimmten Mindestbestellwert kaufe — sprich: noch mehr Geld ausgebe.</p> <p>Man könnte auch sagen, dass die Firmen <a href="http://www.wc-fresh.com/">wc-fresh</a> und <a href="https://www.sanifair.de">Sanifair</a> aus Scheiße Gold macht, weil irgendjemand sparen und Toilettenkosten auf Kund_innen umlegen wollte.</p> <p>Mein Wunsch ist eigentlich ganz einfach: Liebe Bahn, macht die Toiletten bitte kostenlos. Sorgt dafür, dass sie sauber sind. Toiletten gehören für mich zum Service. Ja, es kostet Geld und ich verstehe, dass ihr, solange ihr als Privatunternehmen Geld verdienen müsst, Geld verdienen müsst. Aber mal ehrlich: </p> <p>Ihr erhöht die Ticketpreise mit einer Pünktlichkeit, von der eure Züge manchmal nur träumen können. Ihr habt Geld für Bahnhöfe, deren Kosten im Nachhinein — oh Wunder! — explodieren. Geld für Tunnel unter Stuttgart. Geld für Zugstrecken von <a href="https://de.wikipedia.org/wiki/Verkehrsprojekt_Deutsche_Einheit_Nr._8">Berlin nach Nürnberg</a>. Wie bitte? Was sagst du da? Das müsst ihr gar nicht alles selbst bezahlen, weil Steuerzahler_innen helfen? Und ausserdem gehörst du eh zu <a href="http://www.bundesfinanzministerium.de/Content/DE/Standardartikel/Themen/Bundesvermoegen/Privatisierungs_und_Beteiligungspolitik/Beteiligungspolitik/deutsche-bahn-ag.html">100% dem Bund</a>? Na großartig, dann könnt ihr es euch ja gleich umso mehr leisten, Toiletten in den Bahnhöfen kostenlos anzubieten. Oder etwa nicht?</p> Für nichts und wieder nichts tag:bullenscheisse.de,2017-12-09:/2017/fuer-nichts-und-wieder-nichts 2017-12-09T11:35:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>2013 konnte man einen <a href="https://de.wikipedia.org/wiki/Bitcoin">Bitcoin</a> für ungefähr 800 Euro kaufen. Damals gab es einen ersten Hype, auf dessen Höhepunkt ich ein bisschen Geld investierte. Im schlimmsten Fall würde ich das bisschen Geld verlieren, dachte ich mir, das könnte ich verkraften. Im besten Fall hätte ich halt ein bisschen verdient. Ich nahm mir vor, einfach mal zu schauen, was daraus wird.</p> <p>Ein paar Tage verfolgte ich regelmässig den Kurs, dann wurde es langweilig. Ausserdem beschäftigte ich mich mit anderen Dingen: Klausuren. Lohnarbeit. Menschen. Und irgendwann habe ich meine Investition dann tatsächlich vergessen.</p> <p>Mitte diesen Jahres wurde ich wieder daran erinnert: Die Kurse für Bitcoin kannten nur eine Richtung, viele Medien griffen das Thema auf und seitdem habe ich immer mal wieder einen Blick darauf geworfen. Vor ein paar Tagen habe ich bei einem Kurs von fast 12000 Euro pro Bitcoin verkauft. Mich plagte kurz ein schlechtes Gewissen, dass ich meinen Besitz und den Markt genutzt habe, um meinen Besitz zu mehren. Wie so ein gewissenloser Kapitalist.</p> <p>Ein Teil des Erlöses — 2013 waren es ungefähr 6,50 Euro, ausserdem vier Jahren Zeit und Angebot und Nachfrage — habe ich genutzt, um <a href="https://twitter.com/zeitschlag/status/939080296212959232">einen Küchentisch, Handtuchhalter und einige Küchenutensilien</a> zu kaufen. Man könnte also sagen: Ich habe für einen <a href="http://www.ikea.com/de/de/catalog/products/80091713/">neuen Tisch</a> etwas mehr als zwei Euro bezahlt.</p> <p>Ausserdem habe ich es im <a href="https://twitter.com/zeitschlag/status/920353831438909440">Späti</a> mal so richtig krachen lassen und alles gekauft, worauf ich Lust hatte: eine Pomelo, eine Spezi, Apfelsaft aus Apfelsaftkonzentrat, Orangensaft aus Orangensaftkonzentrat, eine Süßkartoffel, Nudeln, Pesto aus dem Glas und ein paar Grundnahrungsmittel haben mich 16 Euro gekostet. Später habe ich mir dann noch ein Eis gekauft.</p> <p>Vor fast drei Jahren war ich in der Schweiz und habe 3,93 Euro verdient, weil die Schweizer Nationalbank die Bindung des Franken an den Euro aufgehoben hat. <a href="https://bullenscheisse.de/2015/fuer-nichts/">Damals schrieb ich</a>:</p> <blockquote> <p>Ich habe 3,93 Euro verdient. Was habe ich dafür getan? Nichts. Fühlt es sich richtig und gut an? Nein.</p> </blockquote> <p>Dieses Jahre habe ich durch den Besitz von 7 Euro ungefähr 90 verdient. Was habe ich dafür getan? Ich habe vor ein paar Jahren Besitz riskiert und gewartet, sonst nichts. Fühlt es sich richtig und gut an? Nein. Immer noch nicht.</p> Einkaufszettl 0.6 tag:bullenscheisse.de,2017-12-05:/2017/einkaufszettl-0-6 2017-12-05T21:40:00Z Nathan https://bullenscheisse.de/ hallo@bullenscheisse.de <p>Eine kurze Durchsage zum <a href="https://bullenscheisse.de/einkaufszettl/">Einkaufszettl</a>: Es gibt mal wieder eine neue Version im <a href="https://itunes.apple.com/de/app/einkaufszettl/id1016435355?l=de&amp;ls=1&amp;mt=8">App Store</a>.</p> <p><img alt="Screenshot vom iPhone X mit dem Einkaufszettl" src="https://bullenscheisse.de/img/IMG_131_Einkaufszettl_iPhone_X.png"/></p> <p>Das ursprüngliche Zeit war, endlich mal auf Barrierefreiheit zu achten und sie dort, wo sie fehlt, noch nachzurüsten. Heute morgen fiel mir auf, dass ich da nochmal Hand anlegen darf. Es ist beispielsweise nicht per VoiceOver ersichtlich, ob ein Produkt bereits auf der Liste steht oder schon gekauft wurde.</p> <p>Eine Folge davon, für mehr Barrierefreiheit zu sorgen, war, dass man nun in der App wählen kann, ob man sie wie bisher mit der Wischgeste bedienen möchte oder die Dinge lieber antappt, um sie auf den Einkaufszettl zu schreiben oder sie als gekauft zu markieren. Die App einzig und alleine mit der Wischgeste zu bedienen, habe ich zumindest mit VoiceOver nicht geschafft.</p> <p>Ende der Durchsage.</p>