Optimierung der Produktivität mit PHPStorm

Ich möchte Dir in diesem Beitrag die Entwicklungsumgebung PHPStorm vorstellen und Dir Möglichkeiten aufzeigen, wie Du Deine Produktivität damit verbessern kannst.

PHPStorm bietet Entwicklern eine hervorragende Unterstützung um PHP-Quellcode effizient und pragmatisch zu verwalten. Es hat mich immer wieder überrascht, wie gut sich gleichbleibende Arbeitsabläufe damit optimieren und somit effektiver gestalten lassen.

In den folgenden fünf Kapiteln möchte ich Dir ein paar Tipps aufzeigen, wie Du Deine tägliche Arbeit mit PHPStorm optimieren kannst. Weiterlesen

Mayflower Roof Garden

Maiblümchen

Die Zeit zwischen zwei Projekten birgt immer Potential für neue Ideen. Solche Zeit im April gepaart mit viel Sonnenschein brachte die Idee auf, unsere Dachterrasse zu begrünen. Ein kleiner Knabbergarten sollte es werden mit Obst, Gemüse und Kräutern. So haben wir ein Hochbeet gekauft, Erde, Holzhackschnitzel und Rindenmulch sowie  Pflanzen: Himbeere, schwarze Johannisbeere, Erdbeeren, Tomaten und einige Gewürzpflanzen. Weiterlesen

Das LMU Entrepreneurship Center und Mayflower unterstützen Startups in München

Vor kurzem haben Mayflower und das LMU Entrepreneurship Center (LMU EC) eine Partnerschaft vereinbart, die insbesondere den in München organisierten Startups einen Zugriff auf professionelles IT-Know-how und Entwickler-Ressourcen (agile Teams) ermöglicht und es ihnen erlaubt, gerade in der Wachstumsphase auch softwareseitig mit ihren jeweiligen Business-Prozessen skalieren zu können.

Natalie Kho, Startup Managerin beim LMU EC und Albrecht Günther, Geschäftsführer bei der Mayflower GmbH, beschreiben im Gespräch die Inhalte und Ziele der Kooperation. Weiterlesen

Entwickler zu Fluglotsen. Ein Plädoyer für autonome Entscheidungen

Meetings nerven. Kommen wir zu einer Entscheidung, handelt es sich oft um einen faulen Kompromiss. Im besten Fall ist es der kleinste gemeinsame Nenner, ein dünner Konsens von zweifelhafter Verbindlichkeit, oft getroffen, um das gesteckte Zeitfenster nicht zu überziehen oder einen Punkt hinter eine leidige Diskussion zu setzen. Die erhoffte Reduktion der Optionen endet unter dem Druck der Zeit und der Meinungsvielfalt leicht in einer hässlichen Lösung: der Alternativlosigkeit als Letztbegründung. Oder in einem Blumenstrauß der Widersprüchlichkeiten mit Flucht in die Vertagung. Bitter für die, die eine schnelle Entscheidung dringend brauchen.
Weiterlesen

Fight your Project – Transfer von Kampfsport und agilem Projektmanagement (Theorie)

Projektmanagement und Kampfsport — zwei doch recht unterschiedliche Begriffe, die sich auf den ersten Blick nicht verheiraten lassen. Ersteres bezeichnet einen Pool von Anwendungsmethoden, der in Zusammenwirkung die Initiierung, Planung, Steuerung und den Abschluss von einem oder mehreren Projekten innehat. Im Kampfsport hingegen steht ein Leistungsvergleich innerhalb des Kampfringes im Vordergrund und die Vorgabe, sich außerhalb des Rings in Zurückhaltung und Selbstbeherrschung zu üben. Was beide Termini jedoch eint ist, dass man sich — um Erfolg zu haben — eine hohe sensitive Wahrnehmung im Bereich der zwischenmenschlichen Aktionsebene und des eigenen Bewusstseins erarbeiten muss. Weiterlesen

Crowdtesting – Wie kann man das nutzen?

 

Eine Freundin von mir kam neulich ganz erfreut auf mich zu und erzählte mir von ihren ersten Crowdtesting-Erfahrungen innerhalb ihres aktuellen Projekts. Crowdtesting? Was ist das denn? Und wie kann das in der Praxis funktionieren? Von ihrer Begeisterung ein wenig angesteckt, begab ich mich auf die Suche nach diesen Fragen und löcherte sie nochmal ausgiebig, denn auch ich fand das einen äußerst interessanten und zukunftsträchtigen Ansatz. Schließlich dachte ich mir, das wäre doch eigentlich was für ‘alle’ – Praxiserfahrungen zu einem noch recht neuen Testing der ganz anderen Art! Die Ergebnisse hierzu also im folgenden Blogartikel! Weiterlesen

Mit einem Wurf

– oder wie ich strategisch Fokus aufbaue, um große Softwareaufgaben zu lösen

Will man Softwareprojekte mit Expeditionen vergleichen, wird man wahrscheinlich schnell hinken. Dennoch gibt es faszinierende Erkenntnisse, die sich mit etwas Übersetzung gut übertragen lassen. Ein Aspekt ist die enorme und lange Vorbereitung, die je nach Qualität über Gedeih und Verderb einer zeitlich sehr eng gesteckten Umsetzung entscheiden kann. Ein anderer die Fähigkeit zur Reaktion in unbekannten Gegenden, das Parieren des Unvorhersehbaren. Meinen letzten Softwarelaunch als PO hat die Lektüre über Shackleton’s gescheiterte Arktisexpedition begleitet und inspiriert. Weiterlesen

Willkommen zur webinale/IPC 2016 in Berlin

Frontend- und Backend-Development, moderne Architekturen und ein praktischer Erfahrungsaustausch zu agilen Modellen mit Softwareentwicklern und IT-Entscheidern – die Doppelkonferenz aus webinale und International PHP Conference verspricht auch in diesem Jahr wieder ein abwechslungsreiches Programm. Aus unserem Kollegenkreis können wir Anfang Juni zwei Talks beisteuern – Max spricht über die Bedeutung guter Schnittstellen in Content-Management-Systemen (Mit dem API ins CMS) und Albrecht steht gemeinsam mit Judith Andresen zu Fuck-ups in der agilen Transition Rede und Antwort. Weiterlesen

Mayflower Girls‘ Day 2016

Der Girls‘ Day 2016 bei Mayflower

Neun interessierten Mädchen durfte Mayflower mit dem Girls‘ Day 2016 dieses Jahr und damit zum fünften Mal in Folge, einen Einblick in einen technischen Beruf geben. In den vergangen Jahren wurde oft der Wunsch geäußert, mal die ganze Strecke vom Browser bis zum Server zu machen, um das Zusammenspiel der Enden besser zu verstehen.

Das wollten wir mit einer einfachen Shopping Liste und einem Server zum Anfassen auf einem Raspberry Pi nachstellen. Ein Nodejs + Express Backend lieferte über eine REST-Schnittstelle die Daten für ein Angular Frontend. Es galt, eine Shopping Liste zum Laufen zu bekommen, mögliche Verbesserungen in Design und Funktionaliät zu besprechen und einfach umzusetzen. So sollte man den Zyklus von Entwicklung, Deployment (hier nur ein git pull auf dem Raspberry) und einem erneuten Aufruf im Client beispielhaft zeigen. Ein Raspberry Pi war bereits lauffähig und lieferte die Shopping List aus, ein zweiter sollte im Laufe des Tages fertig gestellt werden und als quasi Staging-Server zum Testen der Änderungen dienen. Weiterlesen

Slacktime: Anti-Pattern App

Slacktime. Im Rahmen dieses Konzepts sind wir bei Mayflower alle zwei Wochen für einen Tag von unseren Projekten freigestellt. Zeit, die wir dafür nutzen, uns (uns selbst, uns als Team, uns als Firma) mit Experimenten, eigenen Projekten oder der Vorbereitung auf Workshops und Konferenzvorträge weiterzuentwickeln. Intern nennen wir den Tag bei uns Mayday, aber wichtig ist eigentlich nur, dass wir die Freiheit haben — nun, uns die Freiheit zu nehmen.

Mein aktuelles Projekt ist eine kleine App für den Umgang mit Agile Anti-Patterns. Die haben meine Scrum-Master-Kollegen über die Zeit hinweg im internen Wiki gesammelt; Anfang Februar habe ich die Anti-Patterns testweise als Kartenstapel drucken lassen (übrigens auch im Rahmen eines Slacktime-Projekts — ich selbst finde unsere Slacktime wunderbar, um für mein Bauchgefühl „solche Karten dürften super in Kundenteams ankommen, die gerade neu in agile Prozesse hineinkommen möchten“ über Experimente zu belastbaren Erfahrungswerten zu kommen).

Nun gut, agile Anti-Patterns im Wiki, Spielkarten für Kundenteams und zuletzt positives Feedback („Die reißen die uns aus den Händen, kann ich noch welche mitnehmen?“) — was kann ich noch aus den Anti-Patterns machen? Eigentlich wollte ich ja immer schonmal eine App entwickeln …

MAPA — Die Mayflower Anti-Pattern App

Leider (oder vielleicht zum Glück, kommt ganz darauf an, wen Ihr fragt) bin ich kein Softwareentwickler. Was kann jemand wie ich also tun, um zu einer App zu kommen?

Zum Glück muss ich ja nicht alles allein stemmen und zum Glück ist die Slacktime auch dazu da, Ideen im Team/in der Firma zu pitchen.

MAPA - Main Screen

Ich habe zunächst mit etwas Doku angefangen, um ein Bild der Idee zu bekommen, das ich später mit meinen Kollegen diskutieren konnte. Für mich selbst habe ich mir meinen Elevator Pitch notiert und anschließen einen kleinen Klick-Dummy gebastelt. Der wirft noch ein paar Bedienkonzepte durcheinander (mir lag zunächst Windows Phone als Zielplattform am Herzen, die Kollegen wollten aber lieber iOS und aktuell vielleicht doch besser Android, aber das ist eine andere Geschichte …). Immerhin — ich kann zeigen, welche Funktionen ich wie in welcher Bildsprache verpackt haben möchte und ich sehe, ob sich die Theorie auch als App noch so anfühlt, wie gedacht. Eine erste wichtige Grundlage für die weitere Planung. Und eine Gelegenheit, sich schon vor Beginn der Entwicklung Feedback aus dem Kollegenkreis zu holen. Das Open Device Lab nutzen wir dann später für den Feinschliff …

Elevator Pitch für Scrum Master

Die nächste Scrum-Aktivität (Meeting) steht vor der Tür. Klar, wie Scrum geht, weißt Du. Aber wie schnell führt eine vermeintlich gute Absicht als Anti-Pattern langfristig zu unangenehmen Konsequenzen? Mit MAPA, der Mayflower Anti-Pattern App, kannst Du Dir gezielt typische Anti-Pattern aus Grooming/Refinement, Planning, Daily, oder auch der Retrospektive analysieren – und Dich so optimal auf das nächste Meeting vorbereiten.

Als besonderes Highlight trackt MAPA jedes von Dir bemerkte Anti-Pattern mit. Über die Zeit erkennst Du so, über welche Aktivität Du mit Deinem Team noch einmal sprechen solltest. Und kannst so Euer Scrum-Know-how nach und nach perfektionieren.

Elevator Pitch für das Team

Siehe den Pitch für den Scrum Master. Nur eben, dass die App Euch hilft, Fettnäpfchen auch dann zu vermeiden, wenn der Scrum Master einmal verhindert ist.

So geht es jetzt weiter

Inzwischen haben sich die ersten drei Kollegen gefunden, die die App softwareseitig weiter unterstützen möchten. Windows Phone ist mangels Begeisterung (leider) erst einmal vom Tisch, wir konzentrieren uns aktuell auf Android; später vielleicht eine Version für iOS. Das ist aber gar nicht schlimm, im echten Leben wär es sicher nicht anders — Du entwickelst halt für die Plattform, die Deine Anwender bevorzugen.

Für mich selbst steht dabei zwar MAPA im Vordergrund, meine Kollegen schätzen das Slacktime-Projekt, weil sie sich näher mit Android und iOS auseinandersetzen können. Selbst, wenn die App an sich nur sehr einfache Konzepte verlangt — das Setup für mobile Apps so zu perfektionieren, dass es für künftige Projekte wiederverwertbar ist oder vielleicht zu den Continuous-Deployment-Prozessen unserer Kundenprojekte kompatibel ist, dürfte ein wichtiges Learning sein. Das in einer Slacktime mit abzufrühstücken, ist doch nett. Ich bin jedenfalls schon sehr gespannt, wie sich die App am Ende anfühlen wird.