mthie spaces

Chrome OS: "Wie kannst du nur?!" - Teil 1

27.08.2012 23:32

Ich werde oft gefragt: "Wie kannst du nur mit Chrome OS" gefolgt von irgendeinem Verb. Ich will darüber mal ein bisschen was schreiben, damit ich die Frage nicht drölf Mal pro Woche beantworten muss.

Fange ich also mit dem Verb an, was bei mir am Meisten zutrifft: "programmieren".

Ich verdiene mein Geld damit, viele Einsen und Nullen durchs Netz zu prügeln. Im Normalfall würde ein "normaler" Web-Entwickler wohl Folgendes verwenden:

  • eine lokale IDE, mit der man debuggen kann (Breakpoints setzen, den aktuellen Stack nachvollziehen, lokale Variablen prüfen, usw.), Autovervollständigung hat und irgendwas mit der Maus bedienen kann
  • eine lokale oder semi-lokale (im Firmennetzwerk befindliche) Testumgebung, die grob wie das Livesystem funktioniert, allerdings oft mit Xdebug oder Zend Debugger versaut ist
  • eine Million Mini-Tools installieren, die einem "die Arbeit erleichtern"

Woher ich diese Annahme nehme? Ich habe das früher genau so gemacht.

Doch dann habe ich festgestellt, dass dies alles großer Schwachsinn ist. Mit Chrome OS, speziell dem Chromebook und seit weniger als 24 Stunden auch der Chromebox sieht meine Entwicklungsumgebung so aus:

Jeder dieser drei Punkte würde wahrscheinlich schon 99% der restlichen Webentwickler zum Schreien bringen, aber die Kombination aller Punkte wirkt wahrscheinlich wie ein Teufelsanbeter im Vatikan - zumindest wenn ich mir die entsetzten Gesichter anschaue, jedes Mal, wenn ich genau dies erzähle.

Warum ich damit in meinen Augen effizienter programmiere? Ganz einfach:

  • ich zwinge mich, sprechende Klassen-, Methoden- und Variablen zu verwenden - wenn ich es nicht mache, suche ich ständig und stundenlang nach Parameterreihenfolgen, Namen usw. und wie ich letzte Woche feststellte, können mit dieser Methode auch keine dämlichen Rechtschreibfehler durch ein gesamtes Projekt gezogen werden
  • ich greife nicht ständig zur Maus - ich sehe immer wieder Entwickler, die sich durch ihre IDE klicken, wenn sie in einem Vervollständigungsdialog etwas suchen und finden; das würde alles viel zu lange dauern
  • durch den äußerst effizienten Editor habe ich keine Wartezeiten beim Start - wenn ich mir "ein Monster namens Eclipse" mal so anschaue, das beim Start so lange braucht, wie ich für das gesamte Einrichten eines Projekts, bin ich ganz froh, dass ich instant programmieren kann
  • die Automatisierung macht das Leben einfach - benötigt man für viele Sachen einen FTP-Client (ja, die meisten haben es immer noch nicht verstanden), damit man Dinge bei einem Kunden hochladen kann, kann ich diesen Prozess des Uploads und des Sync aller Sourcen zum Zielserver automatisieren; es spart einfach so unheimlich viel Zeit
  • ich kann mich mit jedem Rechner dieser Welt mit jedem Betriebssystem einloggen und jederzeit weiterarbeiten, ohne auch nur ansatzweise eine Software installieren (Ausnahme: Windows - aber putty ist mit ein paar hundert kB nicht gross und läuft ohne Installation) zu müssen - instant

Rein theoretisch bliebe ja noch die Möglichkeit, eine Online-IDE zu verwenden - aber habt ihr die mal getestet? Natürlich können die Meisten davon Syntax-Highlighting, aber für viele Coder braucht es zumindest Codevervollständigung für die Programmiersprache selbst.
Oder anders: Habt ihr mal versucht, euch in PHP für alle Suchfunktionen die Reihenfolge des $needle und des $haystack Parameters zu merken? Aber ich weiss von einigen IDEs, dass diese hart an genau diesen Features arbeiten.

Dies sind aber trotzdem alles Gründe, warum ich wohl auch in den nächsten Jahren einer von zehn Entwicklern weltweit sein werde, der überhaupt auf einem Chrome-OS-Gerät entwickeln kann. Schade eigentlich, haben diese Geräte doch äußerst viel Potential.