Jeder Web-Entwickler kennt das: da codet man lokal auf dem Rechner, dann muss man sich das Ergebnis im Browser anschauen. Dafür braucht man dann bei dynamischen Seiten schon einen Webserver, und wenn eine Datenbank dabei ist auch noch ein DBMS, und das alles lokal auf dem Rechner. Damit das ganze dann auch online funktioniert sollte die Konfiguration nicht zu sehr vom Webserver in der produktiven Umgebung abweichen, also pflegt man schon mal mindestens zwei Konfigurationen. Und wenn es dann online steht testet man es trotzdem gleich noch mal. Und man kann bei der Konstellation auch nur vom Entwicklungs-System aus arbeiten. Ist das nicht bescheuert, das man die Webseite von überall erreichen kann aber nur am Arbeitsplatz daran arbeiten? Irgendwie doof. Ganz zu schweigen davon das ich bei jedem Rechner-Wechsel alles wieder neu einrichten muss. Welch eine Verschwendung von Arbeitszeit.
Wäre es nicht viel einfacher gleich online zu arbeiten? Die Lösung ist eine Online-Entwicklungsumgebung. Dann braucht man für die Entwicklung nicht mehr als für die Betrachtung der Webseite. Ein Browser reicht. Und plötzlich kann man die Webseite genau so bearbeiten wie man sie betrachten kann: von überall. All meine Einstellungen und meine Projekte liegen auf dem Server. Egal von welchem Rechner ich arbeite.
Die Lösung heißt Codiad.
Codiad
Codiad ist ein Online-Editor. Funktionieren tut er ganz einfach: man entpackt ihn wie viele andere Webanwendungen auch einfach in ein Verzeichnis auf dem Server, sagt ihm in einer Config-Datei unter welcher Domain er sich befindet, und schon geht es los. Beim ersten Aufruf wird ein initialer Benutzer und ein erstes Projekt angelegt, fertig.
Codiad bietet drei Ansichten: auf der Linken Seite befindet sich der Projektbaum, auf der rechten Seite die geöffneten Dateien. Links unten können die verschiedenen Projekte angezeigt werden. Ganz rechts kann das Menü aufgeklappt werden in dem die Einstellungen und Punkte wie „Datei speichern“ zu finden sind, ebenso wie der Logout.
Die Oberfläche wirkt aufgeräumt und übersichtlich. Es gibt Unterstützung für eine Reihe von Sprachen (derzeit über 40) inklusive Syntax-Highlighting. Ebenso werden eine ganze Menge Hotkeys angeboten die einem das Gefühl geben mit einem normalen lokal installierten Editor zu arbeiten (STRG-S wird wohl jeder gerne nutzen).
ESC
– Close any open dialogs / Exit multieditCTRL+S
– Save current fileCTRL+O
– Open current file in browserCTRL+F
– Find in current editorCTRL+R
– Find & Replace/All in current editorCTRL+H
– Advanced Search / Search & ReplaceCTRL+A
– Select allCTRL+D
– Delete current line(s)CTRL+P
– Find matching element [{()}]CTRL+L
– Go To LineCTRL+Up-Arrow
– Move up editor in active listCTRL+Down-Arrow
– Move down editor in active listALT+Up-Arrow
– Move current line(s) upALT+Down-Arrow
– Move current line(s) downALT+Shift+Up-Arrow
– Copy current line(s) above currentALT+Shift+Down-Arrow
– Copy current line(s) below currentCTRL+Space bar
– AutocompleteCTRL+Click
– MultieditCTRL+Z
– UndoCTRL+Shift+Z
– RedoALT+0
– Fold allALT+Shift+0
– Unfold allCTRL+/
– Comment Line
Zusätzlich gibt es einen Plugin-Mechanismus mit dem die Funktionen erweitert werden können. Neben den vorhandenen Plugins können somit fehlende Funktionen oder Sprachen auch selbst entwickelt werden bzw. der Editor an die eigenen Bedürfnisse angepasst werden. Wem der Stil des Editors nicht gefällt der kann auch andere Themes installieren um das Syntax-Highlighting oder gleich den ganzen Editor anzupassen. Kollaboratives Arbeiten wird ebenso unterstützt wie das in der Oberfläche ersichtliche Multi-Projekt-Management. Was will man mehr?
Praktischer nutzen
Alles in allem geht die Arbeit mit Codiad flüssig von der Hand. Wie bei jeder IDE muss man sich kurz einfinden, auf Grund der aufgeräumten Oberfläche geht das aber schnell. Der Editor beschränkt sich auf das wesentliche und tut das gut. Die Dateien werden direkt online bearbeitet und die Ergebnisse können ebenso direkt in der Webseite betrachtet werden. Einfacher geht es kaum.
Aber was ist mit der Trennung zwischen Entwicklung und Produktion? Sollte man an einer Webseite arbeiten die Live ist und auf der sich Besucher tummeln? Nein. Natürlich nicht. Man sollte auf einem System entwickeln und die fertige Entwicklung auf einem produktiven System veröffentlichen, nachdem sie getestet wurde. Trotzdem ist Codiad sinnvoll: die Möglichkeit zur kollaborativen Arbeit ermöglicht ein Entwicklungssystem im Web. Warum nicht zwei Server im Web stehen haben? Einen für die Entwicklung und einen für den produktiven Einsatz. Oder zwei identische Systeme bei denen eins im Web steht und das andere im internen Netz? So oder so entfallen verteilte Entwicklungs-Systeme und die multiple Wartung, sowie Konflikte beim Deployment. Ein zentrales Entwicklungssystem kann leichter gewartet werden, ebenso wie die dortigen Bedingungen leichter mit dem produktiven System synchronisiert werden können.
Codiad ist mein persönlicher Favorit. Ich nutze ihn. Ich mag übersichtliche Editoren die ich für alle Projekte nutzen kann, und ich arbeite gern von überall. Codiad ist meine Lösung! Und auf jeden Fall einen Blick wert …
https://github.com/Codiad/Codiad
https://github.com/Codiad/Codiad/wiki
https://github.com/Codiad/Codiad/wiki/Hot-Keys
https://www.heise.de/ct/ausgabe/2016-19-Online-Programmierumgebung-Codiad-Web-Based-IDE-3309077.html