Tutorial: Wie lasse ich ein WordPress Plugin erstellen?

Tutorial, Wordpress Plugin erstellen lassen

Im Moment  erlebe ich wieder eine Heldenreise. Ich lasse ein WordPress Plugin erstellen. Und zwar speziell für die Bedürfnisse von Coaches, die einen Online Kurs anbieten. Denn ich halte den Wechsel von einem aktiven zu einem passiven Einkommen für einen wichtigen Schritt, um zeit- und ortunabhängig zu arbeiten. Und dabei stoße ich für mich auf soviel Neuland.

Vielleicht hast Du Dir auch schon mal gesagt: „Ach, in WordPress fehlt mir noch diese eine Funktion.“ Und die Idee taucht in Deinem Kopf auf, ein eigenes Plugin zu erstellen. Aber dann treten die inneren Zweifler auf den Plan mit Worten wie:

  • Ich habe davon doch keine Ahnung.
  • Programmieren kann ich auch nicht.
  • Woher weiß ich, ob das überhaupt jemand haben will.

Und für alle diese Bedenken gibt es eine Lösung. Doch die verrate ich Dir später.

Starte mit einem Problem

Im letzten Artikel habe beschrieben welches WordPress Plugin mir für Online Coaching Programme fehlte.

Ich fand die meisten Online Kurse, die ich bislang besucht habe, zu einseitig. Klar gab es eine große Anzahl an Informationen, Techniken und Dokumenten, die mir bereit gestellt wurden.

Allerdings konnte ich nirgends selber Eingaben machen.

Dafür musste es doch auch unter WordPress ein Plugin geben. Bei über 36.000 Plugins auf WordPress.org und auf kostenpflichtigen Seiten sollte doch etwas zu finden sein. Aber meine Suche blieb leider erfolglos.

Die zündende Idee: ein WordPress Plugin erstellen lassen

Also wollte ich selber ein WordPress Plugin erstellen. Da ich aus der IT komme, lag selbst programmieren erstmal nahe. Aber das liebe Zeit- und Prioritäten-Problem kam mir dazwischen. Verschiedene Anläufe versandeten einfach, auch weil ich nicht mehr die Lust verspürte, noch eine Programmiersprache zu lernen.

Ich bin ein Fan vom Buch Die 4-Stunden-Woche: Mehr Zeit, mehr Geld, mehr Leben. Vielleicht hast Du es ja auch gelesen. Wenn nicht kann ich es Dir empfehlen. Dort schreibt Tim Ferris sinngemäß:

Kümmere Dich um Deine Kernkompetenz. Alles Andere gib ab!

Als mir das wieder ein-fiel-mir ein Stein vom Herzen. Ich musst gar nicht selber programmieren. Hurra!

Schließlich hatte ich bei Fiverr.com schon mal eine Logo erstellen lassen und war mit dem Ergebnis zufrieden.

Aber diesmal probierte ich die Freelancer-Plattform Odesk.com aus, weil es dort mehr Entwickler für WordPress zu geben schien. Du kannst dort Deine Anforderungen als Gesuch einstellen und dann „bewerben“ sich verschiedene Freelancer für die Zusammenarbeit.

Schreibe Deine Anforderungen nieder

LEGO, Dummy, Laptop, WP Plugin, WordPress, programmierenAlso brachte ich meine Ideen zu Papier bzw. schrieb sie in ein Word-Dokument.

  • Was soll das Plugin können?
  • Wer ist die Zielgruppe?
  • Wer wird es anwenden?
  • Wie soll es aussehen? Im Backend? Im Frontend?
  • Was soll passieren, wenn ich auf diese Funktion klicke?

Ich schrieb und schrieb ganze Blätter voll. Und war voller Enthusiasmus, weil mein Plugin bald fertig sein würde. Es kam aber anders 🙂

Finde den passenden Programmierer

Meine Anforderungen schnell hochgeladen, noch ein paar begleitende Sätze dazugeschrieben sowie die Skills des Programmierers beschrieben. Und dann das Gesuch abgeschickt. Und gewartet …

Schon nach 20 Minuten kamen die ersten Bewerbungen rein. Nach einem Tag abwarten, schaute ich mir alle Bewerbungen an. Und musste erstmal herzlich lachen.

Ich war erstaunt, teils sogar entsetzt, wie manche den Auftrag verstanden haben mussten. Ein typischer Fall für Kommunikationsprofis.

Nachdem der erste Ärger (größtenteils über mich: Wie konnte mir das passieren? Ich hätte das besser wissen können? usw.) verraucht war, kamen dennoch drei Programmierer in die engere Auswahl. Aus denen entschied ich mich für einen jungen Pakistani zu einem Stundenlohn von 8$.

Ich beauftragte ihn und wir kommunizierten über Chat und klärten Fragen.

Und auch dann gab es noch Ungereimtheiten. Wir kamen einfach nicht zusammen. Vielleicht war es die Chemie, die nicht stimmte. Oder doch meine unzureichende Beschreibung der Anforderungen. Aber dafür bekam ich für die 10$ ein gutes Feedback, was ihm noch nicht klar war.

Wir machten einen Schlussstrich, wickelten das Organisatorische auf Odesk.com (Vertrag beenden, Bezahlung, Bewertung) ab und ich setzte mich wieder an meine Blaupausen.

Entwickler finden – Reloaded

Zuerst überlegte ich, wie ich die Anforderungen optimieren konnte.
Daraus entstanden folgende Regeln:

  1. Schreibe in kurzen Sätzen
  2. Schreibe aus Sicht des Nutzers und Admins
  3. Beschreibe die Ziele, die erreicht werden sollen.
    Nicht den Weg der Umsetzung.
  4. Beschränke Dich am Start auf die minimal nötigen Funktionen. Nur das wirklich Notwendige!
  5. Mache so viele Skizzen wie möglich. Das spart jedes Mal 10 Sätze.
  6. Lass Dir bei der Bewerbung vom Entwickler in eigenen Worten die Ziele wiedergeben.

Die Regel 4 stammt aus dem Buch Lean Startup: Schnell, risikolos und erfolgreich Unternehmen gründen.

Mit diesen Veränderungen ging ich in die nächste Ausschreibung. Und was soll ich sagen: Die Ergebnisse waren unglaublich besser.

Und eine interessante Beobachtung konnte ich auch hier machen: Viele der Bewerber schicken ihre Standard-Antworten und lesen gar nicht oder nur oberflächlich die Anforderungen. Das hat meine Optimierung auch nicht geändert. Diese Bewerber sortierte ich dank der Regel 6 jetzt sehr viel schneller raus.

Ich fragte auch nach Referenzen in der WordPress Plugin Entwicklung, kontrollierte die Angaben aber nicht. Wichtiger war für mich, wie gut wir zusammenarbeiten würden und welche Ergebnisse dabei rauskamen.

In diesem Fall entschied ich mich für Prince Kumar, einen indischen Programmierer. Er machte in seinen Antworten einen sehr kompetenten und sympathischen Eindruck. Und für einen Stundensatz von 6$ ist mein Risiko im Falle eines erneuten Fehlschlags gering. (Nachtrag: Ich bin auch immer noch mit ihm zufrieden.)

Die Entwicklung begleiten

Ich erstellte eine einfache Tabelle mit den User Stories, also den Anforderungen. Der Begriff User Stories stammt aus der agilen Softwareentwicklung. Zu jeder User Story gehören auch die Abnahmekriterien: „Woran wirst Du merken, dass die User Story erfüllt ist?“

Und alle User Stories brachte ich in eine klare Reihenfolge.

  1. Als Admin sehe ich im Backend die Plugin-Einstellungen in 2 Reitern (Allgemein und User Fields)
  2. Als Admin sehe ich im Reiter User Fields eine Tabelle mit den angelegten User Fields
  3. Als Admin kann über einen Add-Button neue Felder hinzufügen.
  4. Als Admin kann ich mit einem Delete-Button Felder löschen.
  5. Als Admin sehe ich im Backend die Shortcodes für Eingabe und Ausgabe und kann sie dort heraus kopieren.
  6. Als User bekomme ich auf der Seite statt des Shortcodes für Eingabe ein Eingabefeld.
  7. Als User sehe ich auf der Seite statt des Shortcodes für Ausgabe meine eingegebenen Daten
  8. usw.

Und dann begann die Entwicklung. Das Product Backlog (also die Tabelle) legte ich auf meinem Google Docs Ordner ab und gab Prince (meinem Entwickler) eine Zugriffsberechtigung. Dropbox wäre auch möglich gewesen.

Er stellte eine User Story fertig und dann testete ich. Oft passte es sofort, aber manchmal gab ich Änderungswünsche zurück.

Diese Feedback-Schleife haben wir so lange durchgeführt, bis ein brauchbares Produkt dabei rauskommt. Brauchbar insofern, dass ich es anderen Coaches zur Verfügung stellen kann.

Wieso nur brauchbar und wieso nicht perfekt?

Weil auch hier das Pareto-Prinzip gilt. In kurzer Zeit haben wir ein Plugin erstellt, mit dem ein Online-Coach seinem Kurs eine persönliche Note geben kann.

Außerdem sind wir bislang in der eigenen Soße geschwommen. Doch sobald andere drauf gucken und das Tool einsetzen, kommen frische Rückmeldungen, neue Ideen, usw. Die Oberfläche hätte ich noch besser gemacht, aber die Anwender haben vielleicht ganz andere Bedürfnisse. Dann entwickle ich doch am Kundennutzen vorbei.

Deswegen habe ich eine geschlossene Facebook-Gruppe gestartet und dort tauschen wir uns aus. So darf ich von den Fähigkeiten und Ideen der Early-Adopter profitieren.

early_bird_bild

Immer wieder: Denken-Machen-Lernen

Ist das Rad erstmal in Schwung gekommen, findet ein dauerhafter Austausch von Feedback statt.

Ich spreche mit den Anwendern und sammle deren Erfahrungen und Wünsche ein. Diese übersetze ich in die Entwicklersprache und teste die neuen Funktionen.

Feedback-Schleife, Denken, Machen, Lernen

Oben habe ich Dir versprochen, das Geheimnis offen zu legen.

Und hier ist das „Geheimnis“:

  1. immer in kleinen Schritten vorgehen
  2. schnell Ergebnisse liefern
  3. und Feedback einholen

Wage Dich immer einen kleinen Schritt aus Deiner Komfortzone heraus und der Schmerz ist nicht so groß. Und Du erhältst schnell Feedback als Geschenk zurück. Dadurch kannst Du Dein Angebot ständig verbessern.

Diese Technik hilft Dir nicht nur beim WordPress Plugin erstellen, sondern beim Erstellen von jedem Produkt.

Ich finde die Reise total spannend und vielleicht spazierst Du ein Stückchen mit.

 

Hast Du noch Fragen, wie man ein WordPress Plugin erstellen lassen kann? Oder eigene Erfahrungen, die Du im Kommentarfeld mit uns teilen möchtest? Dann los!

david_signatur

P.S.: keine Angst, der will nur spielen 🙂

Welches WordPress Plugin mir an Online Coaching Kursen bislang fehlte

Tutorial Zusammenfassung: Wordpress Plugin erstellen lassen

  1. Beschreibe den Zweck des Plugins und der Zielgruppe(n).
  2. Beschränke Dich zuerst auf die Minimalumsetzung.
  3. Formuliere in einfachen Sätzen die User Stories und die Abnahmekriterien.
  4. So viele Skizzen wie möglich.
  5. Lass jeden Bewerber die Anforderung in eigenen Worten wiedergeben.
  6. nutze extrem kurze Feedbackschleifen, um Fehlentwicklungen abzufangen.
  7. gehe so früh wie möglich auf Early Adopter zu.
  8. Teilen mit Ihnen alles und höre Ihnen genau zu.
  9. Lasse die neuen Erkenntnisse wieder in die Entwicklung einfliessen.

Ooh, der Artikel ist ja schon zu Ende!
Hast Du Dich schon für den SpielTriebWerk-Newsletter eingetragen?

Ich gebe Deine Adresse nicht weiter. Ehrenwort!

5 Kommentare, sei der nächste!

  1. Vielen Dank David für diesen Artikel.

    Hab gerade selbst bei Fivrr eine „Anfrage“ laufen und, hab es natürlich so gemacht, wie du in deinem ersten Anlauf.
    Deshalb Danke für deine Erfahrung, die mir gerade sehr nützt. 🙂

  2. Hallo David,

    vielen Dank für deine Beschreibung!

    Oft ist es ja so, dass die besten Ideen aus eigenem Schmerz entstehen!

    Ich finde den Prozess, den du beschreibst um die Programmierung outzusourcen sehr interssant.

    Der schwierigste Teil ist es sicher dem Programmierer, der deine Zielgruppe nicht kennt, die umszusetzenden Anforderungen an die Software verständlich zu machen.
    Mit diesem Thema beschäftigen sich ganze Lehrstühle an Universitäten (Lehrgebiet Softwaretechnik).

    Den Rat, möglichst schnell ein Feedback einzuholen werde ich mir zu Herzen nehmen. Mir fällt es oft schwer die Grenze zwischen „Nee, dat reicht nocht nich“ und
    „so, gut genuch jetzt!“ zu erkennen.

    Viele Grüße
    Kim

    1. Hallo Kim, Du beschreibst wirklich die größte Hürde. Und es kommt noch die sprachliche und kulturelle Hürde hinzu. Aber es läuft erstaunlich gut. Ich bin sehr zufrieden dank RAPID PROTOTYPING und KURZE FEEDBACKZYKLEN.

  3. Hallo David, ich finde, Du hast die Vorgehensweise sehr gut erläutert. Ich wünsche Dir viel Erfolg mit dem PlugIn und wenn Du damit soweit bist, lass es mich wissen. VG Martina

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.