knuspermagier.de
Ein L und zwei P. Philipp!

Unsexy Webapp

Vor ein paar Monaten habe ich ja mal BetterJournal vorgestellt. Ich entwickelte das, weil ich keine Lust mehr auf Day One hatte, da ich das nicht mehr so richtig hübsch und leichtgewichtig fand.

Tatsächlich benutze ich meine Webapp nun auch täglich, mein Streak, der natürlich noch aus DayOne-Zeiten übertragen wurde, sind mittlerweile 414 Tage. Fast anderthalb Jahre lang jeden Tag irgendwas notiert, mal wichtiger, mal weniger wichtig. Außerdem nutze ich es gerade als Essenstagebuch, um meinen Snack-Konsum etwas zu kontrollieren, als Dankbarkeitsjournal, etc., was man halt alles so macht.

Heute baute ich kurz noch ein paar Kleinigkeiten ein, die mir den Umgang mit der App erleichtern, manchmal will man ja z. B. noch etwas zu einem vorherigen Tag hinzufügen, das war bisher nur etwas aufwändiger, das heißt mit drei Klicks, möglich, jetzt gehts mit Einem. Es macht mir Spaß, mir die Arbeit zu erleichtern. Umso leichter, es zu benutzen ist, umso motivierter bin ich, auch immer schön etwas rein zu schreiben, über das ich mich dann in fünf Jahren freuen kann.

Wie dem auch sei, eine Sache stört mich daran: Es ist halt eine Webseite. Klar, der (etwas unaktuelle) Code ist auf Github und jemand, der Lust darauf hat, sich eine PHP-App zu installieren, könnte es ausprobieren, aber wenn wir ehrlich sind, macht das doch keiner.

Mein Wunsch ist es irgendwie immer, den Kram, den ich baue, mit anderen zu Teilen, und zwar nicht nur in dem ich hier darüber schreibe, sondern ich würde mir wünschen, dass andere die Sachen benutzen können und sich vielleicht daran erfreuen. Leider wählte ich bisher irgendwie immer den unpassendsten Weg dafür. Bequem für mich, denn ich kann PHP und diverse Frontend-Technologien, aber halt unbequem für andere, weil nur Nerds sich eine eigene BetterJournal-Instanz aufsetzen würden.


Long story short: Ich freue mich sehr, dass ich den Sprung von Day One zu meiner eigenen Software machte, denn ich bin damit viel zufriedener, aber gleichzeitig schau ich es mir immer an und denke nur, was ich da wieder für eine unsexy Webapp gemacht habe. Es fühlt sich auch einfach falsch an, seine Tagebucheinträge in einem Webbrowser einzutippen.


In letzter Zeit spiele ich mit SwiftUI rum und Apps machen ist gar nicht mehr sooo anstrengend wie früher. Aktuell bastel ich an etwas ganz anderem, aber wenn ich das mal fertig habe, vielleicht baue ich BetterJournal vielleicht doch als richtige App? Bisschen nervig wäre es schon, alles nochmal zu bauen, aber ich fürchte, anders kann ich meinen Wunsch nach einer Software, die auch jemand benutzt, nicht befriedigen.

Vielleicht sollte ich mir auch einfach mal eingestehen, dass es auch okay ist, etwas nur für sich selber zu bauen? Es ist immer so schwierig, herauszufinden, was man eigentlich will!

Mozart in Tecklenburg

Letztens schaute ich mal auf der Seite vom Freilichtheater in Tecklenburg nach, ob man schon weiß, was nächstes Jahr gespielt wird, und tatsächlich ist es Mozart! Darauf freue ich mich! Anscheinend lief es 2008 schon einmal dort, wusste gar nicht, dass das schon so alt ist.

(Laut Wikipedia ist es von 1999, also schon wesentlich älter.)

Wer wird wohl die Titelrolle singen? Oedo Kuipers wäre natürlich super, aber vielleicht ist er mittlerweile auch zu alt.

Schade, dass es keine Dauerkarte gibt, wenn es gut wird, würde ich es mir sicher mehr als einmal anschauen wollen.

BetterReminders (4)

Nur ein kurzer Check-In zu diesem Projekt: Ich habe es gestoppt.

Die Tatsache, dass ich nicht an die Tags komme, und noch ein paar andere Kleinigkeiten haben meine Motivation leider ziemlich getrübt. Ich hab wirklich keine Lust in meiner App einen weiteren Datenlayer mit neuen Tags zu pflegen, die in der OG Reminders.app nicht angezeigt werden, nervt mich. Auch so Sachen wie die Sortierung der Listen und Todos wäre blöd geworden. So viel Zeit-Invest ist es mir doch nicht wert, dass ich am Ende eckige Checkboxen habe.

Ich erkläre dieses Projekt damit erstmal für beendet. Spaß hatte ich trotzdem und gelernt habe ich eine Menge! SwiftUI gefällt mir richtig gut.


Außerdem habe ich mir überlegt, die Kategorie “Projekte” im Wiki irgendwie aufzusplitten und noch “Experimente” einzufügen. Habe einen faden Beigeschmack dabei, so eine unendlich lange Liste von angefangenen “Projekten“ zu haben, von denen keins fertig wurde. Experiment trifft es einfach besser.

(Hab es aber noch nicht gemacht)

Ich mochte Better Call Saul die ganze Zeit über, für diese langsame, teilweise fast langweilige Erzählweise. Kein Actionfeuerwerk, teilweise so mittelspannende Themen, aber die Transformation von Jimmy McGill zu Saul Goodman so detailliert und gemächlich begleiten zu können war super.

Die letzte Staffel setzte der ganzen Sache nochmal das i-Tüpfelchen auf, in dem die Timeline vor Breaking Bad, die Timeline danach, mit Saul in seiner neuen Identität als Zimtschneckenbäcker, und sogar noch ein paar Szenen aus der Zeit mit Walt und Jesse zusammengeführt werden.

Breaking Bad und Better Call Saul zusammen sind schon eine der besten TV-Sachen dieses Jahrtausends.

Wie viel spart man eigentlich beim Menü von McDonald‘s und Burger King?

Seit Jahren frage ich mich, ob und wenn ja, wie viel man eigentlich spart, wenn man sich bei McDonald‘s oder Burger King für ein Menü entscheidet. Schon des Öfteren stand ich vor der schweren Frage, ob es sich lohnt, ein Menü zu nehmen, wenn man zum Beispiel eh noch etwas zu Trinken im Rucksack hat. Wenn man das Getränk eh dazu geschenkt bekommt, wäre es ja Quatsch drauf zu verzichten. So eine frisch gezapfte Cola mit Eiswürfeln ist ja auch eh irgendwie leckerer als das abgestandene Leitungswasser im Rucksack.

Natürlich habe ich mich mich die letzten vierunddreißig Jahre nicht dazu aufraffen können, diese Rechnung aufzustellen, aber nun ist es soweit, ich werde dieses Mysterium lösen. Schauen wir es uns also mal an:

Preise von fastfoodpreise-info.de
McDonald‘s
Royal TS4,89€
Pommes (groß)3,29€
Cola (0,5l)3,49€
Summe11,67€
Royal TS Menü8,89€
Ersparnis2,78€
Preise von fastfoodpreise-info.de
Burger King
Whopper5,49€
Pommes (groß)3,29€
Cola (0,5l)3,24€
Summe12,02€
Whopper King Menü8,99€
Ersparnis3,03€

Okay. Man spart in beiden Fällen etwas, aber auf jeden Fall weniger, als so ein Getränk kostet, man bekommt es also nicht komplett geschenkt, aber immerhin zu einem ziemlich großen Discount. Die Frage, ob ich nun ein Menü nehme, obwohl ich schon ein Getränk besitze, wird also weiterhin eine Einzelfallentscheidung sein, die darauf beruht, wie viel Bock ich auf kalte Cola habe.

(Natürlich sollte man nicht darüber nachdenken, dass man im Supermarkt für das Geld fünf Liter Cola bekommt. Aber so viel Cola wäre ja auch irgendwie ungesund.)

Home Assistant

Das Home Assistant existiert, war mir schon lange klar. Doch jahrelang benutzte ich es nicht, weil ich in diversen Blogs immer nur riesige Yaml-Blobs zur Konfiguration fand und das war mir irgendwie unsympathisch. Da kann ich mir auch kurz ne NodeJS-App schreiben, dachte ich mir, wenn ich mal was automatisieren will.

Jahrelang blieb mein Home also nicht besonders smart. Abgesehen davon, dass ich wenig Ideen zu sinnvollen Automationen hatte, konnte ich das ein oder andere mit den Homekit-Boardmitteln abdecken.

Vor einem halben Jahr fasste ich mal den Plan, Home Assistant doch mal anzugucken und jetzt habe ich diesen auch endlich in die Tat umgesetzt. Ich führte das Docker-Image aus, konfigurierte ein bisschen was und schwupps, ich bin ganz schön geplättet.

Home Assistant erkennt erstmal super viel im Netzwerk vollkommen automatisch und installiert die passenden Plugins. Fritzbox, Sonos, Apple TV, HomeKit. Für alles andere kann man mit drei Klicks zusätzliche Plugins installieren. Spotify, Synology, und so weiter. Es ist so verrückt, es funktioniert einfach alles wie Butter und ich musste noch nichtmal eine Yaml-Datei angucken.

Ich kann jetzt zum Beispiel meinen Wasser-Sensor anlecken und er spielt automatisch eins meiner Lieblingslieder von Keimzeit auf der Sonos-Box, wie cool ist das denn. Vom lokalen Plex-Server gestreamt! 🤯

Das einzige, was mich noch stört ist diese Material UI-Pest. Es sieht einfach kacke aus, sorry, Google. Immer noch besser als das klassische Open Source-System ohne Design, aber weit weg von schön.

Ich sage Bescheid, sobald ich mir eine Automatisierung überlegt habe, die mehr Sinn ergibt, als meine Testfahrt.

Links aus Messages extrahieren

Zum Glück speichert MacOS alle iMessages in einer Sqlite-Datenbank. Will man nun zum Beispiel alle Links exportieren, die von einem bestimmten Kontakt geschickt wurden, um sie… irgendwo zu speichern, wo sie besser durchsuchbar sind, zum Beispiel, kann man sie mit einer einfachen Query rausholen:

sqlite3 ~/Library/Messages/chat.db "select datetime(message.date/1000000000 + strftime('%s', '2001-01-01') ,'unixepoch','localtime'), text from message where handle_id = 1 and text LIKE '%http%' order by date limit 100;"

Natürlich müsst ihr vorher mit einem SELECT * FROM handle herausfinden, welche handle_id verwendet werden muss, oder man lässt das einfach weg, um sich alle Links herauszufischen. Die kuriose Datetime-Geschichte am Anfang ist natürlich, weil die Daten als Nanosekunden seit dem 1.1.2001 gespeichert werden, oder so. Warum auch nicht.


Achja, damit das funktioniert braucht eure Terminal-App natürlich Full Disk Access, was man in den System Preferences unter Security einstellen muss

Mein Problem mit Factorio

Ich wollte den Post schon länger schreiben, aber ich kam noch nicht dazu, weil ich gerade mal wieder eine Runde Factorio spielte.

Doch, warum mache ich das eigentlich? Habe ich nichts besseres mit meiner Zeit anzufangen, als ein Spiel zu spielen, in dem man riesige Produktionsstraßen für diverse Produkte aufbaut, dabei die Umwelt mit seinen schmutzigen Kraftwerken verpestet und zu guter Letzt noch die auf dem Planeten heimische Fauna zu Grunde metzelt? Na gut, das letzte stimmt in meinem Fall nicht, denn ich spiele Factorio immer in dem Modus, in dem mich die fiesen Monster nicht angreifen, so lang ich sie nicht angreife, daher gehen wir immer getrennte Wege. Quasi easy-mode.

screenshot-2022-10-08-at-14.00.52.png
Was gibt es schöneres als Schmelzöfen bei Nacht?

Seit dem das Spiel im Jahre 2016 herauskam und ich es damals für günstige Early-Access-20€ erwarb, bin ich mehrfach ein- und ausgestiegen und witzigerweise immer zu einem ähnlichen Zeitpunkt, zwischen zehn und zwanzig Stunden Spielzeit. Das Spiel besteht im Kern aus einem riesigen Technologie-Baum, der ein oder andere kennt es vielleicht noch aus Age of Empires, und mit jeder Sache die man freischaltet, kann man neue Dinge herstellen, von denen man die meisten aber nur braucht um nochmal neue Dinge herzustellen. Das Ziel des Spiels, ist es alle Technologien zu erforschen, um am Ende eine Rakete zu bauen und zum Heimatplaneten zurück zu fliegen, nachdem man seine temporäre Zuflucht komplett der Resourcen beraubt hat.

Das Problem ist, dass es am Anfang doch viel Spaß macht. Alles ist noch sehr übersichtlich. Man baut Eisen- und Kupfererz ab und schmilzt es zu Platten ein, okay. Aus den Stahlplatten macht man Zahnräder, aus dem Kupfer Kabel, okay. Nach zehn Stunden hat man auch Ölpumpen und stellt Plastik und Schwefel her und lässt es von einem automatisierten Zug-System hin und her fahren, damit die Produktionsstrecken in der Homebase nun auch die Advanced Electric Circuits herstellen können, die dann für die nächste Stufe von irgendwas gebraucht werden. So langsam fängt es an einfach anstrengend zu werden. Die Erz-Vorkommen vom Spielstart gehen langsam zur Neige und man müsste neue erschließen, hier und da gerät mal etwas ins Stocken. Das zentrale Bus-System, das man sich überlegt hat, ist mittlerweile einen halben Bildschirm hoch und hat so viele Abzweigungen, dass es auch einfach nicht mehr hübsch aussieht.

Ich glaube, hier wäre der Punkt, an dem man dann die etwas fortgeschritteneren Sachen ausprobiert. Das ganze Circuit-System, wo man basierend auf Dingen andere Dinge tun kann. Wenn eine Kiste voll mit Eisenplatten ist, dann die Eisenschmelze abstellen, dies das. Außerdem könnte man ja mal einen Blick auf die Community oder Youtube-Videos werfen, wie man seine Basis besser aufbaut, damit alles effektiver ist. Das Problem: Ich habe darauf gar keine Lust. Ich wollte nur ein paar Transportbänder bauen und mir kein hochkomplexes logistisches Konzept ausdenken und auch nicht stundenlang Tutorials angucken.


Versteht mich nicht falsch, Factorio ist ein tolles Spiel, das ich seit sechs Jahren gerne ab und an spiele, aber ich… habe nach zehn Stunden einfach keine Lust mehr. Entweder baue ich noch mehr vom selben, was einfach nur langweilig ist, weil es sehr viel Geklicke ist, oder ich müsste mich tief damit beschäftigen, was mir für ein Spiel einfach zu viel Arbeit ist.

Komischerweise habe ich ja schon immer eine Tendenz zu solchen Endlosspielen, ich liebe ja auch Anno sehr. Aber auch das artet irgendwann in Arbeit aus, so richtig perfektioniert habe ich da auch noch keine Spielpartie, sondern immer vorher die Lust verloren.

Vielleicht könnte ich ja mal daraus lernen und nicht schon wieder eine neue Runde starten?


Insgesamt ist Factorio ja etwas wie programmieren, nur dass es sich bei letztem lohnt, die extra Meile zu gehen und zu lernen, wie man seinen Spaghetticode besser macht, weil man im Zweifelsfall am Ende Geld damit verdienen kann.


Was ich an Factorio mag, ist ja die Tatsache, dass man mal eben reinspringen kann, und 10 Minuten ein paar Dinge herumbaut, oder repariert, dafür ist echt schön. Man weiß immer genau, was man gerade zu tun hat. Letztens gab es eine Ankündigung, dass sie Factorio für die Switch umgesetzt haben und ich freute mich kurz, weil ich mir das ganz gut auf dem Sofa vorstellen konnte, dann las ich aber davon, dass die Startup Time 70 Sekunden oder so sind, da verging mir direkt wieder die Lust. Ich warte doch keine siebzig Sekunden, das sind ja fast zwei Minuten! Vier Mark!

(Ich schaute später mal bei der Mac-Version und der “Loading Sprites“-Step dauert auch ganz schön lang, bestimmt 30-40 Sekunden. Dafür kann ich Factorio auf dem Mac aber auch einfach die ganze Zeit im Hintergrund anlassen, auf der Switch muss es sich seinen Multitasking-Platz ja mit Mario Kart und Animal Crossing teilen)