Welche Hindernisse stehen dem Entwicklungsprozess bei der Verwendung von Markup-Sprachen im Klartext gegenüber, im Gegensatz zu z. B. Microsoft Word? [geschlossen]

33

Ich bin derzeit Praktikant bei einem staatlichen Auftragnehmer und habe das (widerwärtig unvermeidliche) Gefühl, dass Word der De-facto-Standard im Softwareentwicklungsprozess ist.

Das Binärformat macht es sehr schwierig, an Dokumenten so zusammenzuarbeiten, wie ich es von einer Codebasis gewohnt bin. Die Verwendung von Nur-Text-Markups (mit Sprachen wie LaTeX, Markdown, ReStructured Text usw. ) ermöglicht ein diff-freundliches Dokument, das gut mit dem normalen Workflow eines Entwicklers zusammenarbeitet. Bei Kommentaren, die von der Sprache nicht unterstützt werden (z. B. Markdown), gibt es viele vorhandene Lösungen, die kollaborative Kommentare zu Codebasen (z. B. GitHub, Bitbucket) ermöglichen, die problemlos auf andere Nur-Text-Dateien angewendet werden können, die Markups enthalten.

Ich verstehe, dass die Notwendigkeit, mit dem Management von technologisch unerfahrenen Personen zusammenzuarbeiten, eine Art grafische Schnittstelle zu allem erfordert, aber für die meisten dieser Formate gibt es solche Schnittstellen. In LaTeX gibt es beispielsweise eine Art Fork namens LyX, mit dem ein grafisches Front-End für eine LaTeX-ähnliche Klartext-Syntax erstellt wird. Diese Datei ist, obwohl hauptsächlich grafisch bearbeitet, immer noch diff-freundlich. (Es enthält sogar Kommentare im Word-Stil.) Viele dieser Lösungen könnten noch anstelle von Word verwendet werden, und die überwiegende Mehrheit ist kostenlos oder Open Source.

Wir verwenden Word jedoch auch für unsere eigene interne Dokumentation, die sonst niemand sieht. Wir arbeiten mit Texten für einen bedeutenden Teil unserer Karriere - warum ist Dokumentation so besonders? Abgesehen von der Kleinigkeit "Wir haben es nicht besser gewusst und jetzt stecken wir hier fest", muss es Gründe geben, die eine solche Entscheidung stützen. Welchen Herausforderungen steht der Softwareentwicklungsprozess gegenüber, wenn die Verwendung von Klartextdokumentation anstelle anderer, umgangssprachlicherer (und umstritten weniger leistungsfähiger) Mittel zum Schreiben von Dokumenten verwendet wird?

Da sich die Gründe unterscheiden, sollte die Beantwortung dieser beiden eng verwandten Szenarien möglicherweise getrennt erfolgen.

  • Von Anfang an Klartextdokumentation verwenden
  • Migration auf Nur-Text-Dokumentation im Laufe der Zeit
Sean Allred
quelle
2
Aus unabhängigen Gründen kann es ratsam sein, auf neuere Word-Versionen (Office 2007 / 12.0 und höher) zu migrieren, deren Dokumentformate auf XML basieren. aktuelle versionen von openoffice und insbesondere libreoffice sind möglicherweise eine noch bessere wahl - import- / exportfilter ermöglichen die nahtlose integration in einen wortbasierten workflow von ms. Um auf den Punkt zu kommen, erfordert die Arbeit mit Auszeichnungssprachen beim Seitensetzen ein höheres Maß an Abstraktion und eine bessere Strukturierung der Ideen im Voraus, während das explorative Schreiben nicht einfach unterstützt wird. und natürlich ist die ms office ui üblich - keine schulung erforderlich.
Collapsar
2
Ich bin mir nicht sicher, ob ich Ihrer Prämisse zustimme - ich bin mir sicher, dass es aufgrund der von Ihnen beschriebenen Vorteile viele Stellen gibt, an denen die eine oder andere Auszeichnungssprache verwendet wird.
Vaughandroid
1
Wie collapsar hervorhob, sind XML-basierte Word-Dokumente sehr einfach zu programmieren (openxml sdk, ... (ich kann ClosedXML und Novasoft.DocX ​​für c # empfehlen). man benutzt es, es ist so gut wie tot. Die Lernkurve ist viel zu hoch! Deine Mutter und Großmutter wissen wahrscheinlich, was für ein Wort es ist. Frag sie nach TEX, ich wäre überrascht!
Mvision
1
Soweit die Benutzeroberfläche intuitiv ist, gilt dies für einen guten Teil des normalen Workflows auf Klischee-Ebene, jedoch für alles, was komplexer ist. Siehe superuser.com/questions/620454 und beachten Sie, dass Sie zum Aktualisieren eines Inhaltsverzeichnisses ein neues in die Mitte einfügen und auf das Popup warten müssen. Die Möglichkeit, die Rechtschreibung für einen Textblock dauerhaft zu ignorieren, besteht darin, die Sprache auf <-null zu setzen. Ist irgendetwas davon intuitiv? Aber das ist nicht der Punkt. Klartext legt die Struktur und den Inhalt des Dokuments vollständig offen. Kein Durcheinander, keine Aufregung.
Sean Allred
1
@ Rath Absolut. Wenn jemand versucht, ein paar junge Köpfe auf die dunkle Seite zu locken, sollten die Kommentare / Antworten zu den verlinkten Seiten Ihnen den Einstieg erleichtern. (Vor allem Jubobs 'Präsentation --- er hat ein Archiv hochgeladen und es ist sehr gut.)
Sean Allred

Antworten:

43

Viele Teilnehmer am Softwareentwicklungsprozess sind keine Entwickler und benötigen die Fähigkeit, mit der Dokumentation zu interagieren. Sollte QA / Marketing Word verwenden und Entwickler etwas ganz anderes verwenden? Es wäre inkonsistent, würde ein weiteres Tool in die Wartungskette aufgenommen, und der IT-Teil eines Unternehmens hätte möglicherweise keine Ahnung, was mit den Dateien zu tun ist, wenn er sich mit der Verwaltung / Pflege eines Word-Dokumentenspeichers bestens auskennt.

Vor allem haben viele Nicht-Entwickler jahrelang an der Universität mit Microsoft Word gearbeitet, um ihre Arbeit zu erledigen. Häufig hatten sie Schulungen zum Umgang mit Word. Sie wissen es viel besser als Alternativen. Ich kann kaum einen Unterschied feststellen, wenn ich in Open Office oder Word arbeite, aber als ich meine Schwägerin damit Geld sparen ließ, ließ sie eine Woche später ihren Ehemann ihr Word kaufen und verkündete: "Seit ich ein Wort habe, das ich liebe mein neuer Laptop! " Denken Sie an die Denkweise, die solche Dinge zusammenbringt. Eine geringfügige Änderung in dem, was sie gewohnt sind, ist für sie nicht geringfügig.

Moderne Wörter erlauben auch Versionsunterschiede, Anmerkungen mit Versionsverfolgung und das Zusammenführen von Änderungen. Es ist vielleicht nicht so einfach wie das Zusammenführen von Code, aber ich habe viele Projektmanager gesehen, die es einfach machen, also können Entwickler es mit Sicherheit auch schaffen.

Darüber hinaus ist es unter Entwicklerteams durchaus üblich geworden, Dokumentation in Wikis zu erstellen, da die Textdarstellung wiederhergestellt wird und gleichzeitig so einfach bleibt, dass auch Nichtentwickler Änderungen vornehmen können.

Jimmy Hoffa
quelle
7
Ich stimme Ihrem zweiten Absatz teilweise nicht zu: Die meisten Leute, mit denen ich zusammenarbeite, haben überhaupt keine Ahnung, wie man Word und andere Dinge benutzt. Und fühlen Sie sich im Allgemeinen unwohl mit allem, was nicht etwas ähnelt, das sie wissen (Bänder jemand? ;-)). Dies bedeutet, dass man ihnen alles aufzwingen kann. Der Rest fasst es leider ziemlich gut zusammen.
Nietonfir
@nietonfir Wow, es ist meine Erfahrung, dass Wort ist jeder PM und QA Personen Lieblingswerkzeug (read: only)
Jimmy Hoffa
4
@JimmyHoffa Es ist, aber die meisten wissen nicht, wie man Word richtig verwendet (z. B. Index, Bilduntertitel, Überschriften der ersten Seite, Nummern, Überschriften, ...).
nietonfir
2
@ JimmyHoffa: Ja, aber wie viel Training haben sie dafür bekommen? Und wie viele Funktionen von Word nutzen sie wirklich? IMHO konnten die meisten dieser Benutzer leicht zu WordPad wechseln.
Wiedereinsetzung von Monica - M. Schröder
Oh hallo, @ MartinSchröder :-) Wie für WordPad, während die meisten der Content - Autoren können nicht wissen , wie MS Word zu seinem vollen Potenzial "verwenden, um nur einige von ihnen tun . Nach meiner Erfahrung ist es eine kleine Gruppe von Hauptbenutzern, die (immer und immer wieder) ein Dokument für die Benutzer erstellen, die tatsächlich den Großteil des Inhalts hinzufügen. Wenn jemand eine Figur hinzufügen möchte, wird ein Kommentar hinzugefügt. (Die Pflege des Dokuments als Dokument wird dann mindestens zu einer Teilzeitbeschäftigung.)
Sean Allred
4

Persönlich denke ich, dass es um Bildung geht.

Die meisten Menschen haben den Eindruck gewonnen, dass die Verwendung eines Tools wie MS Word die Erstellung von qualitativ hochwertigen Dokumenten erleichtert, aber was ich gesehen habe, macht es tatsächlich schwieriger. Am Ende müssen Sie die Formatierung endlos debuggen und mit Ihren Tools kämpfen, um das gewünschte Ergebnis zu erzielen.

Mit Tools wie Scrivener können Sie sich ein Stück näher an die Realität des Dokuments heranwagen, ohne wie mit Word dagegen ankämpfen zu müssen. Teilweise aufgrund der Erkenntnis funktioniert das WYSIWYG nicht wirklich gut.

In meiner eigenen Organisation sind die Mitarbeiter umso zufriedener und produktiver, je mehr Mitarbeiter MarkDown für den Großteil ihrer Dokumentanforderungen einsetzen.

aboy021
quelle
Schlagen Sie wirklich vor, dass es einfacher ist, LaTeX zu "debuggen" als MS Word?
user253751
@immibis LaTeX3 weiß, dass dies ein Problem ist (sogar LaTeX2e, aber es konnte den Punkt nicht vermitteln). Im Idealfall erfolgt keine Codierung auf Dokumentebene (dem Autor zugänglich gemacht). Das gesamte 'Debuggen' wird auf Code-Ebene durchgeführt, wo Leute, die mit der Sprache vertraut sind, diese Arbeit erledigen. Vertrauen Sie mir, expl3Fehlermeldungen sind viel hilfreicher :)
Sean Allred
@immibis Es ist tatsächlich einfacher, LaTeX zu "debuggen" als MSWord. Es gibt Formatierungsprobleme in MSWord, die von niemandem behoben werden können, ohne das Programm MSWord selbst zu ändern. In diesen Fällen können Sie sich die Zeit nehmen, um LaTeX -> TeX -> C -> Assembler zu lernen, wie tief Sie gehen müssen. Ich kenne Benutzer außerhalb des Softwareentwicklungsbereichs, die über gute Kenntnisse in LaTeX und in Sachen pstricks verfügen. Sie wählen jedes Mal LaTex über Word aus. Sie usu. Machen Sie nicht viel komplexes Debuggen, sondern bitten Sie jemanden um Hilfe, was bei ihnen seltener vorkommt als bei MSWord.
Wolfmanx
0

Du hast wirklich 2 Fragen:

Erstens: Warum verwenden Nicht-Entwicklungsgruppen im Softwareentwicklungsprozess kein LaTeX oder anderes Markdown?

Das Problem bei der Migration auf LaTeX ist die wahrgenommene Lernkurve, insbesondere wenn Sie mit nicht technischen Benutzern arbeiten. Benutzer kennen bereits andere Formate und möchten keine andere Methode erlernen, um dasselbe zu tun, was sie getan haben. Sie wissen wenig oder gar nichts darüber, wie man 2 Dokumente unterscheidet. Daher ist es wenig sinnvoll, für sie ein textbasiertes Format zu wählen. Einer Person zu erklären, dass Sie eine Lösung für ein Problem haben, von dem sie nicht wusste, dass es eine ist, ist ein ziemlich schwerer Verkauf.

Sie können auch den Wert des Vorwärtsimpulses nicht unterschätzen. Um auf ein neues Format zu migrieren, müssen Sie andere Personen in Ihrer Kette wirklich überzeugen, dass es sich lohnt, in das Erlernen neuer Funktionen zu investieren. Auch wenn Sie nicht davon ausgehen, dass sie etwas bearbeiten. Die Migration auf ein neues Format erfordert Zeit und viel Mühe, wenn ein vorhandenes Format funktioniert (auch wenn es schlecht ist).

Die zweite Frage: Warum verwendet mein Team weiterhin Word-Dokumente, wenn es bessere Optionen gibt und diese mehr als erlernbar sind?

Dies ist etwas, über das Sie mit den Leuten in Ihrem Team sprechen sollten. Es kann triftige Gründe dafür geben, dass Word-Dokumente gepflegt werden, oder es kann auch nur daran liegen, dass dies schon immer so war.

Jede Änderung ist mit Kosten verbunden und es kann teuer und zeitaufwendig sein, Hunderte oder Tausende von Dokumenten in ein neues Format zu verschieben. Wenn Sie versuchen werden, Ihre Umgebung zu ändern, müssen Sie begründen, warum Sie sich ändern sollten

stoj
quelle
1
Dies versucht nicht einmal, die Frage zu beantworten: "Warum sind Markup-Sprachen im Klartext (wie LaTeX oder Markdown) im Software-Entwicklungsprozess nicht beliebter?"
gnat
+0, aber einverstanden - dies wäre als Kommentar angemessener.
Sean Allred
1
Nach der ersten Bearbeitung der Frage ist sie viel besser geworden. @gnat, ein anderer Look ist in Ordnung.
Sean Allred