Tipps & Tricks zum Homeoffice: Teil 4

COVID-19: Code-Dokumentation ist unerlässlich, aber es gibt eine bessere Variante

Claudio Pinkus

©Shutterstock / LanKogal

Warum dokumentieren Programmierer ihren Code nicht? In einer aus Homeoffice und Remote-Work bestehenden Arbeitsumgebung ist die Dokumentation ein weiteres wesentliches Werkzeug, um die Koordination des Teams aufrechtzuerhalten. Dies ist ein guter Zeitpunkt, um noch einmal zu reflektieren, wie wir über Dokumentation und ihren Wert denken. Die gute Nachricht vorweg: Es gibt einen besseren Weg.

Einführung

In Teil 1 erörterten wir die persönlichen und menschlichen Faktoren, die uns alle während der COVID-19-Pandemie betreffen. In Teil 2 dieser Serie sprachen wir darüber, wie eine Kombination kultureller und technologischer Faktoren traditionell zu einer unzureichenden Zusammenarbeit zwischen den Entwicklern geführt hat. Im dritten Teil betrachteten wir zuletzt, wie Transparenz in Sichtbarkeit umgewandelt werden muss, um eine funktionierende Teamarbeit zu ermöglichen und Geschwindigkeit sowie Produktivität zu steigern. Wenden wir uns nun der Dokumentation als einem Werkzeug zur Verbesserung der Leistung von dezentral arbeitenden Entwicklern zu.

Dokumentation ist seit vielen Jahren eine Quelle von Frustration und Konflikten in der Software-Entwicklung. Das Problem besteht im Wesentlichen darin, dass viele Entwickler ihren Code nicht oder nur schlecht dokumentieren. Infolgedessen verbringen andere Entwickler, die den Code, den sie verwenden oder ändern, verstehen müssen, viele frustrierende Stunden damit, dieses Manko zu beheben. Das Verstehen von Code kann bis zu 10-mal so viel Zeit in Anspruch nehmen wie das Schreiben von neuem Code.

Warum dokumentieren Entwickler ihren Code nicht?

Es gibt viele Beispiele für Artikel und Beiträge, die diese Frage diskutieren. Zum Beispiel fragt dieser Beitrag aus dem Jahr 2012: „Warum dokumentieren Programmierer ihren Code nicht? „Echte Programmierer dokumentieren nicht ist“ ein alter Hut von Hacker-Machismus, den sich einige Programmierer traurigerweise zu Herzen genommen haben“, heißt es auf Infoworld. Ihre Antwort mag vielleicht ein Körnchen Wahrheit widerspiegeln, ist aber keineswegs eine allgemeingültige Erklärung oder eine Lösung. In einem Beitrag im Jahr 2018 argumentiert Tomer Ben Rachel, dass „der Hauptgrund dafür, dass Code undokumentiert wird, die Zeit ist. Wenn wir ein Feature entwickeln, das innerhalb eines bestimmten Zeitrahmens fertiggestellt werden muss, haben wir selten einen Moment, um alles stehen und liegen zu lassen und uns auf die Dokumentation unseres Codes zu konzentrieren“.

In einer völlig auf Remote-Work eingestellten Welt ist die Dokumentation allerdings ein weiteres wesentliches Instrument, um die Zusammenarbeit des Teams zu gewährleisten. Dies ist ein guter Zeitpunkt, um noch einmal zu überdenken, wie wir über Dokumentation und ihren Wert denken. Die gute Nachricht ist, dass es einen besseren Weg gibt.

Die Anfänge der Dokumentation On-Demand

Bei CodeStream arbeiten wir seit über zwei Jahren an der Verbesserung der internen Dokumentationspraktiken. Angesichts der Tatsache, dass so viele schnelllebige Organisationen kaum nützliche Dokumentation erstellen und Umfragen zeigen, dass weniger als 15% der Entwickler bei ihrer Arbeit intern erstellte Dokumentation verwenden, glauben wir an On-Demand-Dokumentation. Was bedeutet das?

Wenn ein Entwickler eine neue Komponente oder ein neues Modul implementiert, erlaubt CodeStream den Entwicklern, die diesen Code verwenden, leichter Fragen zu stellen und die Informationen von den Autoren abzurufen, anstatt im Voraus herauszufinden, was andere möglicherweise nicht verstehen, wenn sie in Zukunft auf den Code stoßen. Wir haben einen interaktiven FAQ-Ansatz im Editor implementiert, der die Frage-Antwort-Interaktion erfasst und an den Code anhängt, auf den er sich bezieht. Auf diese Weise werden nicht nur die fehlenden Teile zur Lösung des unmittelbaren Bedarfs ergänzt, sondern die Diskussion wird zusammen mit dem Code gespeichert, was dem nächsten Entwickler zugute kommt, der die Komponente oder das Modul verwendet.

Dokumentation IDE

Zurück zur IDE

Bisher waren die erklärenden Informationen über den Code fragmentiert und auf eine Vielzahl verschiedener Tools und Systeme verteilt. Die richtigen Informationen zu finden, ist ziemlich zeitaufwendig und manchmal unmöglich.

Durch die Rückbindung an die IDE und insbesondere an den Code, auf den sie sich bezieht, entsteht Dokumentation als Nebenprodukt der Interaktionen, die jeden Tag zwischen den Entwicklern in Slack, Jira, GitHub und anderen Systemen stattfinden. CodeStream fügt sich selbst in den Arbeitsablauf ein, um die Informationen zu erfassen und zu organisieren, so dass sie in Ihrem Editor zugänglich und umsetzbar werden.

Angesichts der Tatsache, dass die Herausforderung Nummer eins für Entwickler heute der Austausch von Wissen ist, sitzt CodeStream genau dort, wo die Schnittmenge von Dokumentation und Zusammenarbeit liegt. Kollaborationslösungen, die speziell für Entwickler entwickelt wurden, werden zur Grundlage einer nützlichen On-Demand-Dokumentation.

Die Zukunft der On-Demand-Dokumentation

Die Zukunft der Software-Entwicklung wird einen höheren Prozentsatz an remote-arbeitenden Mitarbeitern und Teams umfassen. Wir haben gesehen, dass ein Ansatz, bei dem alle Mitarbeiter verteilt arbeiten, Flexibilität, die richtigen Werkzeuge für die Zusammenarbeit, Transparenz und Sichtbarkeit erfordert. Er erfordert auch einen neuen Ansatz für die Dokumentation, wenn wir die Arbeit an entfernten Standorten so effektiv gestalten wollen wie das Nebeneinander-Sitzen in einem Büro. Die Einführung eines On-Demand-Ansatzes für die Dokumentation löst zwei Probleme, mit denen wir schon seit langem ringen. Es befreit die Entwickler davon, Zeit und Mühe zu investieren, um herauszufinden, was andere vielleicht nicht verstehen, und es verbessert den Wissensaustausch nicht nur zwischen zwei Entwicklern, sondern für die Organisation als Ganzes.

Verwandte Themen:

Geschrieben von
Claudio Pinkus
Claudio Pinkus
Claudio has nearly 40 years of experience in the creation and expansion of technology businesses, specifically in search, e-commerce and social media. He is a co-founder of NY-based CodeStream, Inc. Prior to that he co-founded Glip, acquired RingCentral, was CSO at Multiply, acquired by Naspers, and president/CSO at Ask Jeeves, acquired by IAC. Claudio is also an angel investor and advisor, assisting companies such as Zvents, acquired by eBay and Become, acquired by Connexity. He has founded and/or participated in the creation of over $2.3 billion in exits over the past 30 years. He attended UCLA, where he studied chemistry and computer science. CodeStream’s mission is to improve development team performance through communication, integration and transparency.
Kommentare

2
Hinterlasse einen Kommentar

avatar
4000
1 Kommentar Themen
1 Themen Antworten
0 Follower
 
Kommentar, auf das am meisten reagiert wurde
Beliebtestes Kommentar Thema
2 Kommentatoren
SauberkotDr. Eck-Spatz Letzte Kommentartoren
  Subscribe  
Benachrichtige mich zu:
Dr. Eck-Spatz
Gast
Dr. Eck-Spatz

Da sieht man mal wieder, das hier nur Theoretiker zu Wort kommen.
Kein Mensch dokumentiert heutzutage noch Code.

Völlige Zeitverschwendung. Clean Code braucht keine Doku.

Sauberkot
Gast
Sauberkot

In der Tat, absolute Theoretiker! Schließlich weiß doch jeder mit praktischer Erfahrung das man in der Realität immer nur perfekten CleanCode in perfekt geschnittener Architektur antrifft, welcher für sich allein stehend niemals Fragen aufwirft und daher auch nie irgendwelcher Diskussionen bedarf.