Es wieder Zeit mir etwas von Seele zu schreiben, aber ausnahmsweise nicht weil mir etwas negatives sondern etwas positiver widerfahren ist.

Entwickler brauchen auch Zuwendung

Stellt euch einmal vor ihr seid eine Firma und produziert Software oder noch besser einen Service oder eine Platform. Das ist euer Produkt. Diese Situation trifft heute auf viele Firmen zu denn sofern ihr nicht Klopapier produziert sondern Software, die produktiv eingesetzt werden soll, so wird sie sich, damit sie allen Anforderungen entspricht auf die eine oder andere Weise in bestehende Lösungen oder Produkte eurer Kunden integrieren müssen. Denn eine Insellösung will und braucht niemand.

Schnittstellen, APIs, Customizing, etc…

Nun könnt ihr als Produzent aber sicher nicht alle Systemlandschaften aller eurer potenziellen Kunden kennen und berücksichtigen. Die gute Nachricht ist aber, dass ihr das gar nicht müsst. Denn seit sehr langer Zeit werden für solche Fälle APIs und Schnittstellen in Systemen vorgesehen und eigebaut.

Gute und schlechte APIs

Leider gibt es Produkte die zwar APIs haben, diese aber, vermutlich aus Kostengründen oder weil man dachte “das braucht sicher nie jemand”, so schlecht konzipiert wurden, dass sie für einen Entwickler, der entweder direkt beim Kunden oder bei einer dritten Firma beschäftigt ist, kaum oder gar nicht zu gebrauchen sind.

Das kann mehrere Gründe haben. Zum einen sind solche “schlechten APIs” oft unvollständig was den benötigten Funktionsumfang angeht, zum anderen gibt es auch den Fall, dass sie unverständlich konzipiert wurden und die Dokumentation dazu fehlt oder für dritte nutzlos ist. Ein weiterer Grund, den ich übrigens echt nie verstehen werde, ist, dass Firmen ihre Schnittstellen oft basierend auf eigenen, nicht offenen Standards und Technologien aufbauen. Damit sperrt man viele Entwickler und damit Einsatzgebiete für das eigene Produkt aus und weniger Verbreitung kann doch keine Strategie sein wenn man Geld mit dem Produkt verdienen will?

Entwicklerbeziehungen

Nun gibt es aber noch ein weiteres Problem, warum Produkte oft an ihren Schnittstellen scheitern. Zwar gibt es Schnittstellen, aber niemand kümmert sich um die Developer die sie gerne nutzen wollen oder man macht dem Entwickler den Zugang dazu zu kompliziert.

Seien wir mal ehrlich, da will jemand euer Produkt verwenden, etwas damit tun, es für seine Zwecke Nutzen und es an seine Umgebung anbinden oder etwas Großartiges darauf aufbauend bauen und ihr macht es diesem KUNDEN schwer?

Ganz falsch. Denn wenn er es leicht hat und Unterstützung von euch bekommt wird er es nutzen, sonst nicht und wenn er es nicht nutzt ist er nicht euer Kunde und ihr verdient an ihm keinen müden Euro. Ergibt langsam Sinn, oder?

Meine Tipps für Produktentwickler

Ihr wollt, dass euer Produkt erfolgreich ist und bei möglichst vielen Kunden zum Einsatz kommt? Dann beherzigt folgendes:

Macht es Entwickler einfach mit eurem Produkt zu experimentieren um es zu evaluieren. Stellt ein Demosystem mit API Access zur Verfügung. Stellt nicht zu viele Fragen sondern lasst die Entwickler “spielen”. Niemand will einen Vertrag mit euch abschließen nur weil er testen will ob euer Produkt integrierbar ist.

Stellt so viel Dokumentation und Code Samples wie möglich zur Verfügung und das öffentlich und suchbar und haltet eure API Dokumentationen aktuell.

Wenn ihr von jemanden erfahrt der auf eurem Produkt entwickeln will, helft und unterstützt ihn. Beantwortet seine Fragen und lasst ihn nicht im Regen stehen nur weil er “noch kein zahlender Kunde” ist, denn so wird er auch keiner werden.

Good Guy Google

Ich werde hier nun keine negativen Beispiele nennen, auch wenn ich genug davon hätte. Ich besinne mich auf den positivsten Hersteller von Produkten und Services den ich kenne: Google

Googles Erfolg liegt nämlich maßgeblich daran, dass JEDER auf Basis ihrer Dienste und Produkte entwickeln kann und das ohne Hürden. Der Internetriese stellt für wirklich alles eine vollständige API auf Basis offener Standards inklusive unglaublich großer Dokumentation, Tutorials und Codesamples bereit. Um mit einem Dienst zu experimentieren und dann vielleicht ein echtes Produkt damit zu entwickeln muss man nicht durch einen komplexen Prozess oder etwas beantragen. Google will jeden dazu ermutigen etwas mit ihren Produkten zu tun, denn nur dann verdienen sie Geld.

Es geht so gar noch viel weiter und da sind wir bei dem Grund für diesne Artikel. Ich evaluiere aktuell ein sehr komplexes Thema im Google Universum und zwar deren Cloud Platform. Zwar gibt es für alles Code Samples und Tutorials und so weiter, aber mich interessierte ein weniger technisches als viel mehr wie man Last und mögliche Kosten auf der Platform berechnen und vorhersagen kann. So setzte ich einen Tweet ab und prompt antwortete mir ein Entwickler von Google aus dem AppEngine Team um das Thema mit mir restlos zu klären. Niemand fragte wer ich bin oder was ich vorhabe, wozu auch? Den Entwickler hat diese Konversation auf Twitter keine 20 Minuten seiner Zeit gekostet. Wenn dieser Entwickler das immer so macht trifft er sicher oft jemanden der dann wirklich ein Kunde der Platform wird und verdient seinem Unternehmen so sehr viel Geld mit sehr wenig Aufwand.

Also liebe Produkthersteller, kümmert euch gut um eure Kunden, aber vergesst nicht euch um die Entwickler zu kümmern, denn wenn diese nicht mit eurem Produkt können wird es auch nicht eingesetzt!