Boehrsi.de - IT und Gaming Blog

Top 10 - Dezember 2019 und Januar 2020

Erstellt am event 09.02.2020 - 14:30 Uhr von account_circle Boehrsi in label Boehrsi
Top 10 - Dezember 2019 und Januar 2020 Bild

Aufgrund der finalen Umstellung meiner Statistikerhebung fiel die Top 10 News für den Dezember 2019 leider aus, was ich hiermit nachhole. Ebenfalls in dieser News enthalten ist die Top 10 Liste für den Monat Januar. Beide Rankings sind im unteren Teil der News zu finden.
Die Listen basieren auf meinen täglichen Logauswertungen und werden von einer kleinen Flutter Web-App aufbereitet. Dabei werden von GoAccess erstellte JSON Dateien eingelesen und teils in textueller und teils in grafischer Form dargestellt. Weiteres dazu gibt es sobald die App ansatzweise funktional und aufgeräumt ist. Soll heißen sobald es kein Prototyp mehr ist, welcher Code-Änderungen benötigt, um andere Monate anzuzeigen.

Weiterlesen…

Guten Rutsch ins Jahr 2020

Erstellt am event 31.12.2019 - 15:00 Uhr von account_circle Boehrsi in label Boehrsi
Guten Rutsch ins Jahr 2020 Bild

Ein weiteres Jahr geht zu Ende und entsprechend gibt es wieder Partys, Vorsätze und Feuerwerk. Ich wünsche allen Besuchern einen guten Rusch, viel Spaß auf besagten Partys und ich hoffe euch im nächsten Jahr wieder auf Boehrsi.de begrüßen zu dürfen.

Foto: Von Michael Bieniek via Flickr open_in_new unter CC BY 2.0 open_in_new und weitere Bearbeitung durch Boehrsi.

Frohe Weihnachten

Erstellt am event 24.12.2019 - 14:00 Uhr von account_circle Boehrsi in label Boehrsi
Frohe Weihnachten Bild

Es ist so weit, das Weihnachtsfest steht vor der Tür und wir alle sollten dem Internet mal für ein paar Tage weniger Aufmerksamkeit schenken. Zeit mit der Familie sollte im Vordergrund stehen, auch wenn dies in manchen Situationen vielleicht gar nicht so einfach ist. Für ein paar Tage wäre es aber vermutlich trotzdem eine gute Idee Differenzen zu vergessen und einfach nur eine schöne Zeit zu haben.
In diesem Sinne freue ich mich sehr auf die folgenden Tage, welche entsprechend etwas ruhiger hier im Blog werden (danach geht es dann mit knackigen Gewinnspielen und vielen neuen Inhalten weiter) und wünsche alle Besuchern frohe Weihnachten, eine besinnliche und vor allem ruhige und entspannte Zeit. Genießt sie, der Alltag wird uns schnell genug zurück haben.

I'm a coder - Review rejected

Erstellt am event 20.12.2019 - 21:00 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Review rejected Bild

Es wird mal wieder Zeit für eine I’m a coder News und das heutige Thema werden Reviews sein. Selbige sind extrem wichtig für die Qualität einer Software, welche mitunter maßgeblich durch die eigentliche Codequalität definiert wird. Denn vor allem über längere Zeit ist Software mit guter Codequalität besser wartbar, erweiterbar und erlaubt einen einfacheren Einstieg für neue Entwickler. Reviews sind wichtig, doch auch schwierig und zeitaufwendig. Entsprechend gehen sie manchmal unter, werden nur halbherzig gemacht oder sind zu streng bzw. zu nachsichtig. Hier einen guten Mittelweg zu finden ist schwer, aber extrem wichtig. Nachdem man die eigentlichen Änderungen verstanden und die Funktionalität überprüft hat, folgt der meiner Meinung nach schwerste Teil. Denn nun muss man die Validierung bezüglich der Einhaltung von Coding Guidelines und Naming Vorgaben durchführen.

Weiterlesen…

Top 10 - November 2019

Erstellt am event 10.12.2019 - 09:00 Uhr von account_circle Boehrsi in label Boehrsi
Top 10 - November 2019 Bild

Der November ist nun schon seit ein paar Tagen vorbei und nun gibt es die dazu passende Top 10 Liste der meistgelesen Beiträge hier im Blog. Die Liste befindet sich wie gewohnt im unteren Teil der News und ist absteigend sortiert. Entsprechend sind die am meisten gelesenen Beiträge oben. Ich filtere nach News die in diesem Jahr erstellt wurden. Sowohl dem seltenen Besucher, wie auch häufigeren Lesern kann ich einen Blick in die Liste empfehlen, denn vielleicht ist das eine oder andere interessante dabei, was man bisher übersehen hatte.

Weiterlesen…

I'm a coder - Code-Klarheit vs. Boilerplate Minimierung

Erstellt am event 01.12.2019 - 14:00 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Code-Klarheit vs. Boilerplate Minimierung Bild

In der letzten Zeit Wechsel ich oft zwischen Programmiersprachen, Projekten und Frameworks hin und her. Grund dafür ist unter anderem Flutter open_in_new als neues Framework für professionelle und private Projekte, aber auch Kotlin open_in_new als moderner Ersatz für Java. Nun hat man aber auch aktive Projekte (auch wenn ich mein Projekt FileSize gerade beendet habe) und entsprechend puren Java Code oder Android Projekte mit Java Basis. Bedenkt man nun noch Libraries die z.B. Annotation Processing betreiben, also z.B. Lombok open_in_new oder ObjectBox open_in_new, so gibt es einiges zu beachten.
Daraus ergibt sich häufiges umdenken und öfters auch Fehler, denn gerade wenn man in ein laufendes, aber nicht so aktiv gepflegtes Projekt schaut, welches viele spezielle Dinge benutzt, optimiert man gerne mal Code aus Unwissenheit weg. So passierte es bei mir, dass ich Default-Konstruktoren entfernte, da sie nicht genutzt wurden, ObjectBox diese aber für den generierten Code und die Initialisierung der Objekte in selbigem brauch. Entsprechend werde ich für mich versuchen für nicht implizit klare Dinge wieder mehr auf Kommentare zu setzen. Normalerweise schreibe ich quasi keine Kommentare und sorge dafür dass der Code für sich selbst spricht, doch nutzt man mehrere komplexe Libraries die Boilerplate Code entfernen, kann häufig die Klarheit des Codes leiden.
In einem solchen Fall hat man also einen Vorteil durch weniger Code, aber auch einen Nachteil durch weniger klare Codestrukturen. Kommentare können hier hilfreich sein und ohne viele unnötige Zeilen Code diese Wissenslücke füllen. Mich würde interessieren, wie ihr derartige Dinge löst. Verzichtet ihr generell auf Tools, die zu viel Codestruktur abstrahieren bzw. verbergen oder nutzt ihr andere Ansätze, bzw. schreibt ihr lieber mehr Boilerplate Code, solange selbiger dann besser verständlich ist?

FileSize - Entwicklung wird eingestellt

Erstellt am event 17.11.2019 - 13:30 Uhr von account_circle Boehrsi in label Boehrsi
FileSize - Entwicklung wird eingestellt Bild

In den letzten Wochen habe ich viel in mein altes Projekt FileSize geschaut. Angefangen hat alles mit notwendigen Changes, um weiter mit den Google Play Richtlinien kompatibel zu sein. Weiter ging es mit diversen Bugs die behoben wurden oder sogar ein neues Feature baute ich ein.
Dann kam die Überraschung der verpflichtenden Nutzung des Storage Access Framework open_in_new ab Android 10. Hier steckte ich ebenfalls viel Arbeit hinein. Ich bin in diesem letzten Bereich zu ca. 80 Prozent fertig, allerdings gibt es diverse Probleme, welche ich nicht wirklich zufriedenstellend lösen kann. Zum Ersten ist das SAF leider sehr langsam, sodass ein Scan nach großen Dateien statt wenigen Sekunden, mehrere Minuten dauern kann. Ebenfalls störend ist das initiale Einrichten, welches mittels mehreren Schritten durch den Nutzer geschehen muss. Ich kann dort leider nicht helfen und diverse Otto-Normal-Nutzer werden hier Probleme haben.
Als Programmierer habe ich außerdem das Problem, dass die Basis des Projekts schon älter ist und es entsprechend ohnehin ein paar Ecken und Kanten gibt, füge ich nun aber an diversen Stellen einen Pre- und Post-Android-10 Switch ein, steigert sich die Chance das Dinge kaputt gehen ungemein. Zu guter Letzt bietet z.B. die Files App open_in_new unter Android nun auch einen Bereich zum Aufräumen des Geräts. Neben großen Dateien findet man hier doppelte Dateien, Junk und Daten von nicht verwendeten Apps.
Ich habe mich schlussendlich, trotz der diversen Stunden der letzten Wochen, dazu entschieden FileSize nicht mehr weiterzuentwickeln. Die Nutzerzahlen sanken in den letzten Monaten stark und das zu Recht und die besagte Android 10 Integration ist aktuell nicht wirklich zufriedenstellend machbar. Somit macht es Sinn das Projekt einzustellen, vor allem da ich es nicht in der Qualität entwickeln kann, welche ich mir als Mindestvoraussetzung gesetzt habe. Apps mit ähnlicher Funktionalität gibt es mittlerweile und ich habe dadurch mehr Zeit mich auf meine aktuellen Flutter und Android Projekte zu fokussieren.
Ich werde FileSize im Laufe des Tages aus dem PlayStore entfernen und hoffe bald wieder eine Release würdige App zu haben, denn gar nichts im Store zu haben ist irgendwie etwas schade, vor allem wenn man diverse Projekte zu 90-95 Prozent fertig hat.

I'm a coder - Ungesunde Abhängigkeit von Abhängigkeiten

Erstellt am event 15.11.2019 - 09:00 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Ungesunde Abhängigkeit von Abhängigkeiten Bild

Für wiederkehrende Leser dürfte mein Android-Entwickler-Hintergrund mittlerweile bekannt sein, für alle anderen die Information: Ich entwickle unter anderem Android Apps. In diesem Bereich gibt es extrem viele gute Libraries, die einem Aufgaben in allen möglichen Bereichen abnehmen, gut gepflegt sind und extrem viel Zeit sparen.
Die externen Abhängigkeiten sollten dann aber natürlich auch verwaltet, geprüft und aktualisiert werden. Libraries die nicht mehr unterstützt werden, sollten ausgetauscht werden und auch generell sollte man immer ein Auge auf Code haben, welchen man in seine Projekte integriert. Ein gewisser Zeitaufwand ist auf lange Sicht also auch hier zu erwarten.
In diesem Kontext bin ich aber durchaus positiv eingestellt, wenn es um externe Abhängigkeiten geht. Doch mittlerweile wirkt es so, als könnte man vieles zu einfach mit Libraries lösen, denn für teilweise die kleinsten Aufgaben werden komplette Library-Konstrukte integriert und nie wieder mit nur einem Auge betrachtet. Dies gilt für komplexe Dinge, wo Libraries meiner Meinung nach Sinn machen, aber auch für die trivialsten Dinge. Denn eine Abhängigkeit hinzufügen und einfach eine Methode aufzurufen, ist halt immer noch leichter als 5-6 durchdachte Zeilen selbst zu schreiben.
Viele Libraries können hilfreich sein, aber die Selbstverständlichkeit mit welcher, unabhängig von der genutzten Plattform, Programmiersprache oder der Build-Umgebung, Abhängigkeiten überall integriert werden, lässt mich teilweise mit dem Kopf schütteln. Der finale Auslöser dieses Beitrags ist meine Web-Entwicklung mit dem Static-Site-Generator Hugo open_in_new und die damit verbundene Idee warum ich Hugo wählte. Ich arbeite mit Hugo, weil es schnell und einfach funktioniert und dabei eine einzelne ausführbare und aktualisierbare Datei ist. Ohne Abhängigkeiten, ohne 5-Stufigen Build-Prozess, Downloads, Setups, Updates und was man sonst noch alles aufführen könnte.
Ich habe mir ein durchaus komplexes Theme gebaut, kann aber verstehen wenn man bereits fertige nutzen möchte. Was auf meinem Server, für eine andere - nicht von mir entwickelte Website - gerade getan wird. Die Hugo-Webseiten auf dem Server werden mit einem kleinen automatisierten Script, was ich geschrieben habe, gebaut und ich war verwirrt als mir vom Ersteller der Seite mitgeteilt wurde, dass seine Seite nicht erfolgreich erstellt wird.

Weiterlesen…

Top 10 - Oktober 2019

Erstellt am event 02.11.2019 - 09:00 Uhr von account_circle Boehrsi in label Boehrsi
Top 10 - Oktober 2019 Bild

Es ist mal wieder Zeit die beliebtesten Artikel des letzten Monats niederzuschreiben und selbiges tue ich hiermit. Im unteren Teil der News findet ihr die am häufigsten gelesen Artikel des Blogs aus dem Monat Oktober, absteigend sortiert nach Anzahl der Klicks.
Dabei filtere ich von nun an nach Artikeln die in diesem Jahr veröffentlicht wurden. Auf ältere Beiträge werde ich vielleicht gesondert eingehen, aber für die Top 10 News sind sie etwas zu veraltet, sodass ich ungern auf sie verlinken möchte.
Den zweiten Monat in Folge scheint euch übrigens die Optimierung von Satisfactory und die Nutzung von SSD-Hybrid-Lösungen zu interessieren, denn Beiträge zu diesen Themen gab es sowohl im letzten, wie auch in diesem Top 10 Beitrag.

Weiterlesen…

I'm a coder - Regelmäßige Software-Wartungen

Erstellt am event 31.10.2019 - 14:30 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Regelmäßige Software-Wartungen Bild

Während ich aktuell mal wieder in der Android-Welt unterwegs bin (leider noch mit Java, aber mein nächstes Projekt wird Kotlin) fällt mir mal wieder auf wie wichtig es ist bei Plattformen, Frameworks und auch Programmiersprachen am Ball zu bleiben. Seit dem letzten Update meines aktuellen Projekts ist einige Zeit vergangen und es gibt einfach unfassbar viel nachzuholen. Auf der einen Seite ist dies schön, denn ich habe nun neue Möglichkeiten, auf der anderen steigt die Menge an Änderungen langsam in unangenehme Bereiche (Stichwort: Regressions).

Weiterlesen…

format_list_numbered  Seite 1 Nächste navigate_next