Boehrsi.de - Blog

Device Identifiers - Version 0.3.0 Update

Erstellt am event Uhr von account_circle Boehrsi in label Development
Device Identifiers - Version 0.3.0 Update Bild

In der letzten Woche veröffentlichte ich eine neue Version meines Dart Tools Device Identifiers. In Version 0.3.0 wurde das Lookup Handling angepasst, sodass nun entweder der gefundene Name eines Geräts oder falls nicht gefunden das eingegebene Modell selbst genutzt wird. Dies macht die Nutzung einfacher und ermöglicht mir eine ganze Reihe an Einträgen aus der Lookup Datenbank zu entfernen. Dadurch konnte z.B. die Größe der Dart Version der Output Datei von 931 KB auf 587 KB reduziert werden. Ein durchaus markanter Unterschied. Abseits von diesen Anpassungen und Optimierungen wurden Fehler bei leerem Input behoben, das Escaping von Sonderzeichen verbessert und einige Detailverbesserungen vorgenommen.
Für alle die mein Tool Device Identifiers nicht kennen, es handelt sich um ein Dart Script, welches wöchentlich alle Android und iOS Gerätenamen einsammelt und in verschiedenen Programmiersprachen direkt nutzbaren Mapping-Code erstellt. Konkret wird eine Map erstellt die das jeweilige Gerätemodell, welches man auslesen kann, einem Namen zuordnet. Auf diese Weise kann man ohne extra Logik, Datenbanken oder andere Komplexität einen für den Nutzer verständlichen Gerätenamen auslesen und anzeigen. Genutzt werden die Output Daten von Device Identifiers aktuell in zwei meiner Libraries, wobei eine bereits hier erwähnt wurde (Device Marketing Names - Dart) und die Zweite in den nächsten Tagen Einzug erhält.

Related Links

OnUpgrade - Version 1.1.2 Maintenance Update

Erstellt am event Uhr von account_circle Boehrsi in label Development
OnUpgrade - Version 1.1.2 Maintenance Update Bild

Wie vor einigen Tagen angekündigt bin ich derzeit dabei diverse Updates und neue Veröffentlichungen von Apps und Libraries vorzubereiten. Dieser Prozess hat in den letzten Tagen einige Fortschritte gemacht, sodass es in den nächsten Tagen einige News zu diesem Thema geben wird.
Den Anfang macht heute ein kleines Maintenance Update meiner Library OnUpgrade. Hier gibt es lediglich Updates der intern genutzten Abhängigkeiten, kleinere Optimierungen und einige Anpassungen und Verbesserungen bei der Dokumentation. Für mich persönlich ist es allerdings trotzdem wichtig derartige Updates durchzuführen. Denn aktuell Abhängigkeiten und eine aktive Pflege der eigenen Projekte ist meiner Meinung nach ein Qualitätsmerkmal.
Für alle die meine meine Library OnUpgrade nicht kennen, es handelt sich bei selbiger um eine Dart / Flutter Library, welche euch erlaubt bei der Installation von Updates eurer App Aktionen ausführen. Beispiele sind hier die Anzeige der Release Notes oder eine Migrationen von Daten. Falls ihr mehr erfahren wollt, folgt einfach den Related Links.

Related Links

Der Blog, aktuelle und neue Projekte

Erstellt am event Uhr von account_circle Boehrsi in label Development
Der Blog, aktuelle und neue Projekte Bild

In der letzten Zeit gab es etwas weniger Beiträge hier im Blog und das liegt neben einer kleinen Osterpause an diverse Projekten die ich aktuell voranbringen will. Da viele davon auch für die Öffentlichkeit bestimmt sind, möchte ich euch heute ein kleines Update geben.
Im Bereich der laufenden Projekte plane ich kleinere Verbesserungen und einen neuen Release meiner RestTender Lösung für Kommentare und die Suche hier im Blog. Vor allem Optimierungen und ein besseres Handling von Edge-Cases sind geplant, sodass keine offensichtlichen Änderungen für den Nutzer sichtbar sein dürften. Zum jetzigen Zeitpunkt ist dieses Projekt weiterhin für die interne Nutzung gedacht, je nach Interesse von euch plane ich aber auch hier eine Veröffentlichung als Open Source Projekt.
Weiter geht es mit meiner Android App Tessa - Reit-Assistent, welche in den kommenden Wochen mit neuen Features ausgestattet werden soll. Das Update für diese Closed Source App landet dann im Google Play Store, wo sie kostenlos heruntergeladen werden kann. Als neues Feature wird es unter anderem eine dedizierte Seite für Gesundheitsdaten geben. Welche neuen Funktionen es von der Roadmap noch in den aktuellen Release schaffen ist aktuell noch nicht ganz klar, es könnte allerdings noch weitere hilfreiche Neuerungen geben.
Mein Flutter Package Device Marketing Names und das dazugehörige Device Identifiers Projekt werden zeitnah mit Updates ausgestattet. Abseits der Aktualisierung der Datenbanken plane ich Optimierungen, um die Menge an Daten zu verkleinern und damit einhergehend auch Anpassungen am Handling selbst. Zusätzlich wird es, sofern alles klappt, neben dem Dart / Flutter Package bald auch eine Android Library geben, welches die Daten in der Java bzw. Kotlin Welt nutzbar macht. Diese Library wird als Open Source Projekt bei GitHub landen und via JitPack open_in_new als Dependency nutzbar sein. Alle Projekte in diesem Bereich sind öffentlich auf GitHub verfügbar.
Mein Flutter Package OnUpgrade wird einen Wartungs-Release erhalten und potentiell kleinere Optimierungen. Neue Funktionen sind aktuell nicht geplant, sofern es allerdings neuen Input bzw. Ideen zur Verbesserung des Packages gibt, werde ich hier wieder aktiver.

Einfache Check- / Todo-Listen mit Mason, Markdown und Git

Erstellt am event Uhr von account_circle Boehrsi in label Development
Einfache Check- / Todo-Listen mit Mason, Markdown und Git Bild

In den letzten Monaten hatte ich immer wieder das Problem verstreute Check- / Todo-Listen in Textdateien zu nutzen. Diese findet man natürlich nicht wieder und reine Textdateien sind auch nicht gerade dafür bekannt übersichtlich zu sein. Wenn man später einen bereits abgearbeiteten Flow erneut durchführen möchte und sich an einer bestehenden Liste orientieren will, ist dies natürlich keine gute Ausgangsposition.
Aus diesem Grund habe ich mich nach simplen Tools umgesehen, die für meine Zwecke passend sind. Meine Anforderungen waren eine rein textuelle Eingabe ohne extra Tools und eine gute Integration in meine vorhandenen Abläufe, sowie die Speicherung auf dem lokalen Gerät, wie auch online. Ich brauche keine automatische Synchronisation mit meinem Handy, ich brauche keine Live-Synchronisation auf anderen Computern und ich möchte mich nicht mit weiteren Tools und Accounts auseinandersetzen müssen. Im Prinzip benötige ich sortierte, übersichtliche Textdateien, die ich direkt während meiner Arbeit mit den vorhandenen Tools nutzen kann, welche zusätzlich online gesichert werden.

Related Links

Mermaid - Nützliche VS Code Plugins

Erstellt am event Uhr von account_circle Boehrsi in label Development
Mermaid - Nützliche VS Code Plugins Bild

Vor einigen Tagen berichtete ich über meinen Wechsel auf Mermaid, im Kontext der Erstellung von Graphen und Diagrammen. Damit man mit textbasierten Tools dieser Art aber ordentlich arbeiten kann, brauch man natürlich ein bisschen Tooling, ähnlich wie auch schon im Bereich DOT / GraphViz.
Damit die Arbeit hier leichter fällt habe ich mir aus der durchaus großen Auswahl an Visual Studio Code Plugins zwei ausgewählt und nutze diese nun erfolgreich. Das Erste ist dabei Mermaid Markdown Syntax Highlighting, welches wie der Name schon sagt Syntax Highlighting für Mermaid Diagramme bereitstellt. Dies funktioniert einwandfrei, lediglich bestimmte Klammerungen, die für einige besonders geformte Knoten genutzt werden, werden nicht gesondert hervorgehoben. Dies ist aber absolut im Rahmen und stellt meiner Meinung nach kein Problem dar, vor allem da die meisten vermutlich ohnehin auf abgerundete Ecken bei ihren Diagrammen verzichten.
Weiter geht es mit Markdown Preview Mermaid Support. Dieses Plugin integriert Mermaid Diagramme direkt in die vorhandene Markdown Preview von VS Code. Das Ganze funktioniert extrem einfach, man bekommt direkt Informationen falls man etwas falsch macht und auch die Performanz ist sehr gut. Man kann seine Markdown Dateien quasi wie immer bearbeiten, bekommt nun aber auch Diagramme direkt angezeigt.

Related Links

Flutter Vikings - Talks via Youtube verfügbar

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter Vikings - Talks via Youtube verfügbar Bild

Vor einigen Wochen berichtete ich über die Flutter Vikings Konferenz, welche nebenbei erwähnt echt super war. Das Ganze wurde online abgehalten und es gab sehr viele interessante Talks. Falls ihr selbige nicht gesehen habt, es aber Interesse daran gibt, dann gibt es jetzt gute Neuigkeiten. Eine Youtube Playlist mit allen Inhalten ist nun frei für jedermann verfügbar. Die Liste ist in den Related Links hinterlegt und ich kann jedem Flutter Enthusiasten nur empfehlen mal einen Blick auf selbige zu werfen. Auch wenn ich das Event live verfolgt habe, werde ich noch einmal alles überfliegen, ob ich vielleicht wichtige Themen übersehen habe.

Related Links

Mermaid - Einfach Diagramme mit dem Texteditor erstellen

Erstellt am event Uhr von account_circle Boehrsi in label Development
Mermaid - Einfach Diagramme mit dem Texteditor erstellen Bild

Ich erstelle gerne Diagramme für verschiedenste Zwecke, denn Bilder sind für mich persönlich wesentlich angenehmer, wenn es z.B. um das Grundverständnis von Abläufen geht. In den letzten Jahren habe ich dafür auf DOT / GraphViz gesetzt. Hier erstellt man eine textuelle Repräsentation des Graphen und kann sie z.B. online in ein Bild umwandeln. Den Text wiederum kann man einfach in einem Git ablegen und auch editieren ohne einen gesonderten Editor.
Mit Mermaid habe ich nun ein ähnliches Tool gefunden, welches den selben Ansatz verfolgt, dabei aber etwas einfacher und zugleich vielseitiger sein will. Letzteres bedeutet das es z.B. auch Gantt Diagramme gibt, welche mir bei DOT bis dato noch nicht untergekommen sind. Die Syntax von Mermaid wirkt etwas simpler (Markdown ähnlich), auch wenn ich bis dato nur wenig damit herumgespielt habe. Schön ist zusätzlich die Integration in diverse Tools. Dazu gehört neben GitLab und zuletzt GitHub auch Gitea, das Git Web Frontend meiner Wahl. Somit kann man sich mitunter manuelle Umwandlungen in Bilder sparen, weil man selbige frei Haus bekommt.
Ich werde meine kommenden Diagramme auf jeden Fall mit Mermaid erstellen und das Ganze mal einem längeren Test unterziehen. Bis jetzt bin ich aber auf jeden Fall sehr zufrieden. Falls ihr Mermaid übrigens testen wollt, den Link zum online Editor findet ihr in den Related Links.

Related Links

Tessa App - Version 1.2.0 mit wiederkehrenden Terminen und Ausrüstungsliste

Erstellt am event Uhr von account_circle Boehrsi in label Development
Tessa App - Version 1.2.0 mit wiederkehrenden Terminen und Ausrüstungsliste Bild

In den letzten Wochen und vor allem Tagen habe ich relativ umfangreich an der Tessa App weitergearbeitet und das Resultat ist der Release von Version 1.2.0. Die neue Version bringt meiner in Flutter entwickelten Android App unter anderem die folgenden neuen Funktionen.

  • Wiederkehrende Ereignisse
  • Ausrüstungsliste
  • Bilder in Pferdeorganisationslisten
  • Bilder können gelöscht werden

Zusätzlich wurden diverse kleine Fehler behoben, welche z.B. die Premium-Kaufen Funktion, das Bearbeiten von Bildern und den Dateiimport negativ beeinflussten. Im Bereich der Verbesserungen gibt es eine schnellere Suche, der Splash Screen wurde überarbeitet und das User Interface hat generell die eine oder andere Verbesserung erhalten.
Die neue Version ist ab jetzt im Play Store verfügbar. Den Link findet ihr in den Related Links. Nachdem dieses Update relativ lange in Entwicklung war, sind neue Versionen nun wieder mindestens einmal im Quartal zu erwarten. Solltet ihr Wünsche, Feedback oder ähnliches haben, meldet euch gerne direkt hier in den Kommentaren.
Weitere Informationen findet ihr im Projektbereich hier im Blog oder auf der neu erstellten kleinen Webseite für die App oder direkt im Play Store.

Related Links

Flutter 2022 - Roadmap und Strategie

Erstellt am event Uhr von account_circle Boehrsi in label Development
Flutter 2022 - Roadmap und Strategie Bild

Im Bereich Roadmaps und Planungen sind große Projekte gerne mal etwas still. Anders ist dies im Bereich Flutter, hier hat man vor kurzem eine Roadmap für das gesamte Jahr 2022 veröffentlicht und mit der Community geteilt. Außerdem geht man auf die Art und Weise ein wie Flutter gemeinsam weiterentwickelt werden soll. Denn natürlich wird das Projekt von Google getragen, aber eben auch von der besagten Community. Das GitHub Projekt hat mittlerweile knapp 1000 Contributor, was sich durchaus sehen lassen kann.
Doch damit zurück zur Roadmap. Auf dem Desktop soll nach Windows auch der Support für Linux und macOS auf dem Stable-Channel landen und dies auch in besagter Reihenfolge. Im Web soll es vor allem im Bereich der Performance, Plugin-Kompatibilität und Accessibility Verbesserungen geben. Zusätzlich soll die Mischung von Flutter und Non-Flutter Content in Webseiten massiv vereinfacht werden.
Im Framework an sich wird der Material 3 Support erweitert und im Bereich der Texteingabe, Textselektion und generell Textverarbeitung soll es quasi auf allen Plattformen Optimierungen und neue Features geben. Ein Stichwort wäre hier die Handschrifterkennung in iPadOS. Kontextmenüs und Menüleisten für den Desktop sind ebenfalls ein Thema, genauso wie erste Experimente mit Multi-Window Support.
Abschließend wird es natürlich Updates von Dart, als Sprache die das Ganze erst möglich macht, geben. Extrem spannend finde ich das Thema Jank, also kurze Lags beim Nutzen der UI. Hier hat man grundlegende Fehler entdeckt und tatsächlich das gesamte Grafik-Backend und die Ideen dahinter komplett neu entwickelt. In 2022 wird zuerst iOS mit dieser neuen Technik bestückt und mit den daraus folgenden Ergebnissen will man das Ganze weiterentwickeln und auf die anderen Plattformen bringen.
Eine sehr angenehme High-Level-Sicht auf Flutter im Jahre 2022. Man erkennt die Richtung, muss aber nicht 1000 Issues wälzen und man fühlt sich als Teil der Community integriert. Meiner Meinung nach ein guter Weg, um die generelle Planung einer Sprache / eines Frameworks mit der Community zu teilen.

Related Links

I'm a coder - Ein Git Repository ersetzt keine Backups

Erstellt am event Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Ein Git Repository ersetzt keine Backups Bild

Ich nutze Git sehr gerne und mittlerweile liegen quasi alle meine Projekte in einem Repository (Remote). Dies betrifft sowohl Code, wie auch textuellen Content und Bilder. Lediglich Daten die im Kontext der Videobearbeitung entstehen sind ausgenommen, da ich sehr große Binaries ungern im Git habe.
Das Ganze läuft so gut, dass ich fast über meine eigenen Flows gestolpert wäre. Damit gemeint ist, dass ich alle Daten im Git ablege und wenn ich etwas lokal lösche oder fälschlicherweise bearbeite stellt dies ja kein Problem dar, denn die Daten sind ja noch im Git und somit habe ich quasi ein implizites Backup.
Genau dieses “alle Daten” ist aber nicht korrekt und hier möchte ich noch einmal etwas die Wahrnehmung schärfen, sowohl von mir selbst, wie auch von euch. Es geht z.B. um Keys, lokale Konfigurationsdateien und jegliche Secrets, welche einfach nicht in einem Git liegen sollten, egal ob privat oder öffentlich. In meinem Fall ging es um Konfigurationsdateien für das Bauen und Signieren meiner Android Apps. Denn zur Zeit bereite ich einen App Release vor, merkte aber gestern ein Release Build ist derzeit nicht möglich. Grund dafür war das Fehlen besagter Dateien. Diese gingen im Rahmen der Neuinstallation meines Systems vor einigen Monaten verloren und wurden beim folgenden Setup nicht wieder hergestellt, denn dort richtete ich lediglich das Git wieder ein.
Es gilt also mal wieder, egal ob man ein Git Repository oder eine andere Versionsverwaltungssoftware nutzt, egal wie man seine Daten verwaltet und egal wie sehr man davon ausgeht das man auf der sicheren Seite ist, Backups bleiben ein muss. Mir haben selbige einiges an Arbeit erspart, denn irgendwelche Passwörter und Keys zurückzusetzen ist etwas worauf ich so gar keine Lust habe, geschweige denn die Zeit. Insofern beleibt mir als Lesson learned nur zu sagen, dass das nutzen eines Git Repositories für mich die Entwicklung und Datenhaltung massiv verbessert, aber eben nicht den Bedarf reduziert regelmäßige Backups zu erstellen.

navigate_before Vorherige format_list_numbered  Seite 12 Nächste navigate_next