Boehrsi.de - IT und Gaming Blog

I'm a coder - Das erste Mal Team-Lead

Erstellt am event 24.06.2020 - 19:30 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Das erste Mal Team-Lead Bild

Über die letzten eineinhalb Jahre habe ich mein erstes professionelles Projekt geleitet und heute möchte ein kleines Fazit ziehen. Vielleicht ist für den einen oder anderen ein hilfreicher Tipp dabei oder vielleicht habt ihr Tipps, wie man in diesem Bereich noch besser werden kann. Über Kommentare freue ich mich wie gewohnt sehr.
Ich bin gerne ein Entwickler, soll heißen ich schreibe wirklich gerne Code, doch auf der anderen Seite koordiniere und plane ich tatsächlich auch recht gerne. Letztes ist glaub ich extrem wichtig wenn es darum geht ein Team und ein Projekt zu leiten. Denn sofern man keine Ambitionen in diesen Bereichen hat, sollte man lieber bei der reinen Entwicklung bleiben. Grund dafür ist die massive Verschiebung der Aufgaben und die entsprechend veränderte Zeitverteilung. Sofern einem dann der Verwaltungsteil gar nicht gefällt, wird man vermutlich schnell unzufrieden sein.
Wie erwähnt finde ich aber durchaus Gefallen daran und war froh mit dem genannten Team arbeiten zu dürfen. In Retrospektive denke ich damit steht und fällt generell alles, also ob das Team allgemein und menschlich funktioniert. Erst darauf kann man dann auf professioneller Ebene etwas aufbauen. Wir hatten das Glück das es passte und mit einer recht guten Wissensverteilung (2x Android, 2x iOS, 1x Testing) konnten wir eine Flutter App entwickeln, welche mit genügend Platform-Background versorgt wurde.

GitHub Design Previews

Erstellt am event 22.06.2020 - 18:00 Uhr von account_circle Boehrsi in label Development
GitHub Design Previews Bild

Wer rastet der rostet, das wissen wir alle und so sieht es wohl auch GitHub. Denn aktuell arbeitet man an neuen Designideen für verschiedene Bereiche der Website. Diese wurden mir vor wenigen Tagen das erste Mal angeboten und seitdem nutze ich sie. Die Feature Previews beziehen sich sowohl auf das globale User Interface, wie auch die spezifische Repository Ansicht.

Related Links

I'm a coder - Projekte richtig starten

Erstellt am event 18.06.2020 - 12:00 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Projekte richtig starten Bild

Ich schreibe seit ca. 15 Jahren Software und seit 5 Jahren ist es mein täglicher Vollzeitjob Programme zu entwickeln. In dieser Zeit fallen einem verschiedene Dinge auf und man lernt extrem viel. Vor kurzem wurde ich von einem Kollegen, der gerade den Sprung von der Uni ins Berufsleben vorbereitet, gefragt wie ich Projekte angehe und Entscheidungen in der Starphase treffe. Während ich meine Ansichten und Ideen mit ihm teilte dachte ich mir, dies könnte auch ein gutes Thema für den Blog sein und hier sind wir nun.
Meiner Meinung nach ist der Anfang eines Projekts, noch bevor man überhaupt über die Architektur nachdenkt, einer der wichtigsten Momente. Denn ich denke man sollte ein Projekt initial mit der richtigen Plattform, Technik und Sprache aufziehen. Hier gibt es natürlich Limitierungen bezüglich dem eigenen Wissen oder dem Wissen des Teams, aber man muss z.B. nicht einen Blog, einen Shop, einen Hausbootverleih und eine Dinosaurierzucht mit Wordpress bauen. Natürlich bietet es um drei Ecken die Möglichkeiten, aber ihr nehmt ja wahrscheinlich auch keine Rohrzange, um damit Nägel in die Wände zu kloppen.
Soll heißen, nur weil man etwas tun kann, heißt dies nicht dass es gut oder gar der beste Weg ist. Hier gilt auch über den Tellerrand zu schauen und vielleicht die Chance zu nutzen und etwas Neues lernen. Dabei ist es mir sehr wohl bewusst, dass dies gerade im professionellen Umfeld durchaus kompliziert und nicht immer machbar ist. Doch einige Minuten des Nachdenkens zu investieren und vielleicht Vorschläge für neue und passende Ansätze zu unterbreiten dürfte selten falsch sein.

Flutter App Development - Teil 6 - RSS Entries und mehr

Erstellt am event 11.06.2020 - 09:00 Uhr von account_circle Boehrsi in label Development
Flutter App Development - Teil 6 - RSS Entries und mehr Bild

Heute geht es weiter mit den eigentlichen Einträgen eines RSS Feeds. Die dazugehörigen Dateien befinden sich im lib/entry_list/ open_in_new Package und sind verglichen mit der lib/feed_list/ open_in_new Logik etwas einfacher zu handhaben. Dieser Beitrag ist der Abschluss meiner kleinen Tutorialreihe und den gesamten Source-Code findet ihr auf Github. Links zu den gennannten Dingen findet ihr in den Related Links. Mit diesen kurzen Worten der Einleitung möchte ich heute direkt mit dem User Interface starten.

Related Links

I'm a coder - Probleme mit der Software-Blackbox

Erstellt am event 05.06.2020 - 18:30 Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Probleme mit der Software-Blackbox Bild

Im Rahmen der Software-Entwicklung nutzt man oft Libraries, Tooling und andere Dinge die man selbst nicht komplett durchdringt. Dies ist zu bestimmten Teilen auch in Ordnung und an der Tagesordnung, doch manchmal ist eine Software-Blackbox ein extremes Problem.
Doch definieren wir erst einmal Blackbox. Für mich ist eine Blackbox im Software-Bereich eine Komponente, die man selbst nicht durchdringt und die nicht mit akzeptablem Zeitaufwand, aus welchen Gründen auch immer, verstanden werden kann. Gründe sind hier, auch wenn es sich um Open Source Software handelt, andere Programmiersprachen, zu komplexe Konzepte, fehlende Dokumentation oder ähnliches. Closed Source Software ist natürlich per-se eine Blackbox.

Wann ist eine Blackbox aber nun ein Problem? Meiner Meinung nach wenn sie grundlegende Konzept abstrahiert oder zu essentielle Abläufe übernimmt und dem Entwickler dabei nicht klar ist was wann passiert und warum. Nimmt man z.B. das Build-Tool Gradle open_in_new, so hätte man vielleicht eine Blackbox vor Augen. Diese funktioniert allerdings sehr gut, es gibt eine sehr umfangreiche Dokumentation und auch weitere Ressourcen sind vorhanden. Hier muss man also Vorsicht walten lassen bei Updates und ähnlichem, falls man nicht durchdringt was dies bedeuten könnte. Doch durch vorhandene Dokumentation kann man sich entsprechend und mit akzeptablem Zeitaufwand schlau machen. Insofern würde ich persönlich nicht von einer Blackbox reden, wenn es um Gradle geht.
Hat man nun aber ein derartig wichtiges Tool (z.B. für die Build-Toolchain) oder eine Library die grundlegende Funktionen der eigenen Software übernimmt (z.B. Netzwerk-Interaktionen oder die Implementierung von Protokollen) und eine derartige Informationsquelle ist nicht gegeben, kann man sich in große Probleme manövrieren.

GitHub App - Meine Meinung

Erstellt am event 04.06.2020 - 20:00 Uhr von account_circle Boehrsi in label Development
GitHub App - Meine Meinung Bild

Ich bin täglich auf GitHub unterwegs und da ist es natürlich praktisch auch eine mobile Version für unterwegs zu haben. Die GitHub App gibt es schon etwas länger, aber ich wollte sie trotzdem einmal erwähnen.
Denn mit selbiger könnt ihr eure Issues, Pull Requests, Repositories und Organizations durchaus übersichtlich im Blick behalten. Vor allem der Punkt der Übersicht war mir wichtig, da ich in verschiedenen Repositories unterwegs bin und sowohl Code beisteuere, wie auch Issues verwalte und Code-Changes einem Review unterziehe.
Dabei bietet die Hauptansicht sowohl die allgemeine Navigation für die genannten Bereiche, wie auch Informationen zu euren letzten Aktionen. Weiterhin sind die Notifications und die Suche schnell und praktisch zu erreichen. Was mich persönlich allerdings mehr interessiert sind die eigentlichen Issue Seiten, wie Reviews aufgebaut sind und derartige Dinge. Denn hier wird es auf dem kleinen Screen kompliziert und komplex. Doch sowohl Issues, wie auch Code-Diffs werden übersichtlich angezeigt und sind tatsächlich auch auf dem Smartphone halbwegs gut nutzbar.
Generell erreicht man über die AppBar die Hauptfunktionen, während der eigentliche Content-Bereich alle spannenden Informationen bereithält. Damit man nun aber Kommentare und ähnliches leicht erreichen kann, gibt es eine weitere Interaktionskomponente am unteren Ende des Bildschirms. Hier könnt ihr schnell verschiedene kontextrelevante Aktionen durchführen.
Positiv für mich fällt weiterhin auf das ein Dark-Mode vorhanden ist. Ob man selbigen nutzt ist wie so vieles, Geschmackssache. Im Allgemeinen bin ich mit dem Funktionsumfang und dem Look and Feel zufrieden und freue mich auf weitere Updates. Aktuell benötige ich die App zwar eher selten, aber wenn man bald wieder mehr in der Welt da draußen unterwegs sein kann, bietet es sich natürlich an ein paar Reviews aus der Natur zu machen.

Related Links

IntelliJ IDEA + GUI Builder + Gradle - How to

Erstellt am event 30.05.2020 - 15:00 Uhr von account_circle Boehrsi in label Development
IntelliJ IDEA + GUI Builder + Gradle - How to Bild

Von Zeit zu Zeit baue ich Java Programme mit einem User Interface. Dies tue ich gerne mit dem IDEA GUI Designer, denn auch wenn Java UI generell eher nicht das idealste ist, manchmal ist sie einfach passend für den Einsatzzweck.
Zusätzlich nutze ich aber auch gerne Gradle als Build-Tool meiner Wahl. Die Kombination aus Gradle + IntelliJ IDEA + GUI Designer ist aber leider etwas problematisch und so hatte ich einige Probleme nach diversen Updates meiner Projekte, eine lauffähige JAR zu erzeugen.
Um euch diese Arbeit zu ersparen habe ich aus verschiedenen Stack Overflow Beiträgen (Beitrag #1 open_in_new, Beitrag #2 open_in_new, Beitrag #3 open_in_new) und der offiziellen Dokumentation für Gradle Einstellungen zusammengesucht, welche ich an euch weiterleiten möchte.
Initial benötigt ihr die forms_rt.jar aus dem JetBrains/IntelliJ IDEA Community Edition/IntelliJ IDEA Community Edition/lib Ordner in eurem Projekt. Um dies zu erreichen und auch Updates automatisch mitnehmen zu können, habe ich einfach einen Symlink erstellt. Somit liegt die Datei nun ebenfalls in meinem Projekt im libs Ordner. Ihr könnt die Datei aber natürlich auch einfach manuell in euer Projekt kopieren.

Related Links

Flutter App Development - Teil 5 - RSS Feed Formular

Erstellt am event 23.05.2020 - 11:30 Uhr von account_circle Boehrsi in label Development
Flutter App Development - Teil 5 - RSS Feed Formular Bild

Nachdem es durch die Neuinstallation des Servers und diverse andere Themen mal wieder ein paar Verzögerungen gab, geht es nun weiter mit meiner kleinen Futter Tutorialreihe. Heute gehe ich auf das Formular ein, welches das Hinzufügen und Bearbeiten von RSS Feeds erlaubt.
Ich werde heute lediglich eine Klasse beleuchten, da ich das Gefühl habe in anderen Beiträgen wurde etwas viel auf einmal erläutert. So hoffe ich etwas nachvollziehbarere Erklärungen liefern zu können. Wie gesagt ist auch für mich diese umfangreiche Tutorialreihe etwas Neues und zugleich ist sie sehr aufwendiges. Ich versuche entsprechend direkt während der Erstellung und wenn ich mir meine eigenen Beiträge später noch einmal anschaue, Dinge zu optimieren.
Doch nun zum eigentlichen Thema, dem Verwalten der RSS Feeds über ein Formular in Flutter, inklusive simpler Validierung der Eingaben und Übergabe der Daten an unseren BloC.

Related Links

Code Navigation auf GitHub

Erstellt am event 20.05.2020 - 09:00 Uhr von account_circle Boehrsi in label Development
Code Navigation auf GitHub Bild

GitHub ist in meinem Daily-Doing nicht mehr wegzudenken. Ich nutze es täglich im privaten und beruflichen Umfeld und entsprechend freue ich mich immer wieder über Neuerungen. Egal ob es um mehr kostenlose Features für jedermann geht oder aber um technischen Ausbauten der Plattform.
Derzeit freue ich mich über die neue Code Navigation die Stück für Stück auf GitHub verfügbar wird. CodeQL, Go, Java, JavaScript, PHP, Python, Ruby und TypeScript werden aktuell unterstützt. Sofern ein Repository diese Sprachen nutzt, könnt ihr wie aus eurer IDE gewohnt verschiedene Dinge, wie Klassen und Methoden, anklicken und schauen wo sie definiert oder genutzt werden.
Vor allem die Navigation in fremden Repositories dürfte damit um einiges einfacher werden, auch wenn wir hier natürlich noch nicht auf dem Level von z.B. IntelliJ Idea sind. Ich finde diese Erweiterung sehr sinnvoll und freue mich auf den Support von Dart und Kotlin. Falls ihr euch das Ganze mal anschauen wollt, könnt ihr es z.B. im Repository meines Image-Resizer Resizy open_in_new sehen.

Related Links

Flutter Version 1.17 erschienen

Erstellt am event 13.05.2020 - 19:00 Uhr von account_circle Boehrsi in label Development
Flutter Version 1.17 erschienen Bild

Vor ca. einer Woche erschien Version 1.17 des Flutter Frameworks. Googles Cross Platform Lösung erfreut sich bei mir weiterhin großer Beliebtheit, auch wenn man hier und da natürlich den einen oder anderen Stolperstein aus dem Weg räumen muss.
Unter anderem dafür sind ja bekanntlich auch neue Framework Versionen gedacht. Das letzte Update bringt allem voran massive Verbesserungen für die Performance unter Android und iOS. Wobei iOS durch den nun gegebenen Metal Support hier mit Abstand am meisten zulegt hat. Zusätzlich wurde teils extrem am Speicherverbrauch geschraubt. Wir reden hier von einer Beschleunigung um bis zu 35 Prozent, während für bestimmte Probleme bis zu 70 Prozent weniger Ram benötigt wird.
Dieser Release basiert auf Dart 2.8 open_in_new, bringt einige neue Material Widgets mit sich und behebt Probleme mit den Popupmenüs, welche bei einem Long-Press auf Text anzeigt werden. Die neue Version aktualisiert außerdem die gegebenen Text Styles, sodass selbige mit den aktuellen Material Design Guidelines Konform sind. Weitere Verbesserungen gab es im Bereich der Accessibility und Internationalization, zwei Bereiche die durchaus wichtig sind und wo es auf jeden Fall noch Verbesserungsbedarf gab.
Darüber hinaus hat das Google Font Package open_in_new die Version 1.0 erreicht und das neue Animations Package open_in_new soll euch mit vorgefertigten und häufig genutzten Animationen Arbeit abnehmen. Auch diverse Entwickler-Tools wurden aktualisiert oder optimiert und diverse weitere Kleinigkeiten angepasst.
Ich arbeite bereits seit einer Woche mit der neuen Version und konnte bis dato keine Probleme feststellen, sodass ich zum jetzigen Zeitpunkt durchaus meine Empfehlung zur Durchführung des Updates aussprechen kann.

Related Links
format_list_numbered  Seite 1 Nächste navigate_next