Erstellen einer einfachen REST API mit Spring Boot

Dieser Artikel richtet sich vorwiegend an Leser, die das Spring Framework noch nicht kennen, und soll ein kleines Intro in dieses geben.

Im Folgenden wollen wir beispielhaft einen einfachen Spring Boot Service erstellen, der ein REST API für Wetterdaten zur Verfügung stellt.
Weiterlesen

Zusammenarbeit über Teamgrenzen hinweg

Innerhalb eines Entwicklerteams funktioniert die Kooperation meist sehr schnell ziemlich gut – allerdings oft nur bis zur Teamgrenze. Team- oder auch unternehmensübergreifend dagegen wird weiterhin versucht, Kooperation in Form von Hierarchien, Verträgen und Verantwortlichkeiten festzulegen. So werden zum Beispiel Wissenssilos gefördert und das wahre Potenzial der Teams kaum ausgeschöpft.

Warum ist das so? Was kann man machen, um die Zusammenarbeit über die Teamgrenze hinaus zu fördern? In meinem letzten Blogpost Mentale Modelle für eine bessere Zusammenarbeit habe ich euch erzählt, wie wir bei Mayflower die Zusammenarbeit innerhalb der Teamgrenzen stärken. In diesem Beitrag zeige ich Wege auf, wie man das teamübergreifend bewerkstelligt.
Weiterlesen

Mentale Modelle für bessere Zusammenarbeit

Wir bei Mayflower schreiben uns auf die Fahne, dass wir mit ehrlicher Kooperation, Agilität und Kompetenz gute Software bauen. Was bedeutet das genau?

Ehrliche Kooperation im agilen Kontext bedeutet, es existieren gemeinsame mentale Modelle, man hat ein gemeinsames Verständnis. Wir nehmen das agile Manifest ernst, sprechen direkt zueinander, unterhalten uns, teilen Erfahrungen … und bauen somit ein gemeinsames Verständnis auf.
Weiterlesen

Dude … we have to talk about this (in JavaScript)

Recently I stumbled about this post about The complete elimination and eradication of JavaScript’s this.

To give you a TL;DR: The author states that almost no JavaScript developer understands this, that it is a terrible concept, and introduces a library that allows developers to avoid using this in many circumstances. So, we had a twitter discussion with pretty opposing standpoints: I think this in JavaScript is quite simple, versatile and really useful.

But in the next days, it got me thinking …

Weiterlesen

Vom Mayday-Projekt zum eigenen DevCamp-Track – so entstehen Themenschwerpunkte bei Mayflower

Steffen und Katrin beschäftigen sich schon länger mit den Themen UX/UI; nicht nur, aber oft während eines Maydays, unsere zweiwöchentlich stattfindende Slacktime. Dort, wie auch auf firmeninternen Barcamps, probieren sie mit Kollegen Methoden wie User Story Mapping oder Empathy Maps aus; Dinge, die inzwischen auch Einzug in Kundenprojekte gefunden haben. Was sich sonst noch alles im Laufe der Zeit aus „lass uns gemeinsam Wissen aneignen“ ergeben hat und warum es manchmal gar nicht so schlecht ist, wenn der Nutzer betrunken ist, erfährst du im Interview. Weiterlesen

User Experience ist nicht UI?!

Der morgendliche Blick in unser internes Firmen-Wiki lässt mich grübeln: Wir sind auf der Suche nach neuen Kollegen, die uns in den verschiedenen Disziplinen unseres Projektalltags unterstützten. Speziell zwei Buchstaben im Kontext zum Frontend-Entwickler lassen mich bei einem Blick auf die Stellenbeschreibung nachdenken …

Wir suchen Frontend-Devs mit UX(-Faible). Das ist der Moment, in dem ich mich frage, ob wir wirklich alle wissen, was die zwei Buchstaben UX bedeuten und was User Experience eigentlich meint. Das es bei der Nutzererfahrung vielleicht nicht nur um ein schickimicki CSS3-, HTML5-, <add your shizzle frontend skill here>Interface für den Anwender geht. Denn das ist eine Grundannahme, die immer noch in vielen Köpfen festsitzt; wie der Glaube an den Weihnachtsmann bei kleinen Kindern.

Weiterlesen

Survey: Wie viel Kooperation haben wir denn gerade?

Warum arbeiten wir agil in Teams, warum vermeiden wir Truck-Faktor, warum wollen wir Tπ oder Paint-Drip-Shaped People haben?

Wir hoffen, dass wir von der Kooperation profitieren, dass wir keine Engpässe durch Einzelkompetenzen erzeugen und jede Aufgabe – ihrer Priorität angemessen – schnell umsetzen können.

Spannend wird das Ganze, wenn wir in ein verteiltes Setup gehen, wie es meine Kollegen Martin Ruprecht und Jens Broos in ihren Talks und Workshops besprechen.
Die Schwelle zu Kooperation ist höher, wenn ich erst die Video-Konferenz oder das Remote-Pair-Programming-Werkzeug der Wahl aktivieren muss.

Wir würden deshalb gerne von Euch wissen: Wie oft braucht ihr denn tatsächlich Kooperation, das heißt, die Zusammenarbeit und Kommunikation zwischen Kollegen?

Wie viele Aufgaben kann jeder erledigen, wie viele brauchen Kooperation oder Wissenstransfer? Welche Abhängigkeitsstrecken haben wir, wo kann ich mit mehreren Kollegen an den Tasks der gleichen Story parallel arbeiten?

Ihr findet unsere Umfrage unter https://www.surveymonkey.de/r/3TX3LSY.

Es wäre nett, wenn ihr sie auch ausfüllt – die Ergebnisse stellen wir dann hier vor.

Simple reproduzierbare Entwicklungsumgebungen mit Nix

Sebastian hatte in seinem Blogpost Python-Abhängigkeiten projektbezogen verwalten das Problem, bestimmte Shell-Tools reproduzierbar für alle Entwickler bereitstellen zu müssen. In seinem Fall ging es dabei nur um awscli und awsebcli, beides Python-Tools von PyPI. Das geht relativ angenehm über seine genannte Methode mit pip und virtualenv. Selbst mit der Einschränkung auf PyPI als Quelle für die Abhängigkeiten zeigen sich jedoch schon die Vorteile von Nix.
Weiterlesen

Python-Abhängigkeiten projektbezogen verwalten

Ich bin generell eher kein Python-Entwickler und kam irgendwann in die Situation, Python-Abhängigkeiten bei der Nutzung von AWS und unterschiedlichen CLI-Tools (aws-cli, eb-cli, etc.) zu verwalten. Jetzt kann man natürlich sagen: „Egal – installiert euch lokal-global das aktuellste aws/eb-cli und gut ist“.

Weiterlesen

Three ways to create Word documents with PHPWord

Creating Microsoft Word documents in PHP can be a challenge. Word offers a multitude of options and settings and while creating a document in PHP you want do take advantage of those options to achieve a satisfying result. Perhaps you need to dynamically create documents for a client and the client will only know the capabilities of Mircosoft Word, but not the limitations of PHP libraries. This can result in an unsatisfied client.

In this article we will take a closer look at PHPWord and three different ways to create Word documents with it: basic easy templating, the creation of Word documents from scratch, and (going a little crazy there) the combination of both by merging existing templates with dynamically created documents. Hopefully, after reading through the text, you will have an idea of how to implement the perfect Word creator for your needs.
Weiterlesen