Skip to content

Minimalismus ...

gedanken In der Diskussion über Plugins ist mir wieder einmal das Paretoprinzip ins Gedächtnis gesprungen. Einen kurzen Ausflug hatte ich schon einmal im Mut zum Unperfektsein.

Meine Meinung ist, dass etwa 80% der Menschen nur 20% der Software nutzen, die sie betreiben. Ganz gut sehen, kann man das am Beispiel einer Textverarbeitung. Die meisten Menschen (vielleicht 80%), die ich kenne, nutzen eine Textverarbeitung, um Briefe und andere ein- oder maximal zwei-Seiter zu verfassen (20% oder weniger des Funktionsumfangs der Textverarbeitung).

Ich kann mich noch nicht einmal erinnern, dass Textverarbeitungssoftware in den letzten 15 Jahren irgendwelche bahnbrechenden Neuerungen erfahren hat. Die allermeisten Aufgaben könnten mit dem Windows-Programm Wordpad oder einem Pendant erledigt werden.

Die Frage ist, warum man dann Textverarbeitungen so aufbläht, dass sie fast alles können, obwohl die Nutzer das eigentlich nicht benötigen und Kunstgriffe anwenden müssen, um vernünftig arbeiten zu können.

Wäre es nicht viel schlauer, einen rudimentären Editor zu schreiben und die benötigte Funktionalität mit Plugins nachzurüsten? Der rudimentäre Editor, das Gerüst, stellt die Basisfunktionen zur Verfügung, kann sehr klein, kompakt, unglaublich schnell, kurze Startzeiten haben und vielleicht sogar weitestgehend fehlerfrei sein.

Alles andere könnte mit Plugins nachgerüstet werden. Wer keine Absatzformate oder Inhaltsverzeichnisse braucht (so wie die meisten), wird das Plugin nicht installieren oder es wird es nur dann installieren, wenn es wirklich benötigt wird, ansonsten wird es einfach deaktiviert.

In dem Zusammenhang ist vielleicht interessant, dass das installierte OpenOffice.org vermutlich mehr Platz auf der Platte belegt als je durch den Benutzer an Dokumenten erzeugt wird. (Anderes Thema aber vielleicht auch nachdenkenswert).

Das hätte wirklich Charme ...

Das gleiche gilt dann auch für Webbrowser, Mailprogramme, Tabellenkalkulationen, ...

Trackbacks

Dirks Logbuch am : Geschwindigkeit ...

Vorschau anzeigen
Wir diskutieren gerade bei identi.ca über Rechnergeschwindigkeiten. Wenn es nicht um das Spielen oder Videoschnitt geht, kann man meiner Meinung nach mit jedem aktuellen Betriebssystem seine Arbeit tun (siehe auch den Brief an einen Windowsnutzer).

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

erdnix am :

*Genial einfach!
Geschwindigkeit, Ressourcenverbrauch, Ubersichtlichkeit in der GUI sowie im Programmcode...
Alles würde sich verbessern.
Mit einem "Ein Klick" Plugin Installer der direkt in die Oberflaeche intigriert ist waere es kinderleicht z.B. OOo zu erweitern.
Wie schon gesagt die Idee ist genial.

Dirk Deimeke am :

*Die Herausforderung ist, die Plugins, die voneinander abhängig sind, "in Schach" zu halten. "Absatzformat 43" arbeitet vielleicht mit "Inhaltsverzeichnis 33" zusammen aber nicht mit Version 35.

Letztenendes haben das aber die Linux-Distributionen mit Ihren Paketverwaltungen bereits gezeigt.

Charly am :

*Gute Idee,
vielleicht so in Richtung Latex "in einfach" (obwohl ich Latex echt schätzen gelernt habe).
Die Frage ist, wie man sowas richtig lostreten kann - ich wäre auf jeden Fall ein williges Opfer (als Nutzer) - auch wenn Speicherplatz heutzutage "nix mehr kostet", könnte weniger oft mehr sein...

Dirk Deimeke am :

*Mit LaTeX setze ich mich derzeit wieder verstärkt auseinander, weil ich es mag, dass die Texte (und auch die PDFs) einfach gut aussehen und ich mich nicht um das Aussehen kümmern muss. (Ich überlege auch daran, meinen Workshop auf der nächsten Ubucon mit LaTeX zu machen).

Ich wäre von einer wirklich einfachen und kleinen Textverarbeitung auch begeistert. Den Writer von OpenOffice.org nutze ich derzeit nur für Briefe und davon schreibe ich vielleicht zehn, maximal zwanzig pro Jahr. Aber ich ärgere mich jedes Mal über die Startzeit ...

Mailprogramme sind auch so ein Thema. Ich bin Heavy-User und brauche sehr gute Filtermöglichkeiten. Silvia bracht sie nicht, da sie nicht so viel macht. Ich brauche IMAPS-Support und keinen POP-Support, warum schleppe ich das also mit (gut, momentan benutze ich nur noch Horde und das ist im Web).

Die Möglichkeiten sind grenzenlos und Linux macht vor, dass es möglich ist.

Dirk Deimeke am :

*Ach, ein Nachtrag:

Speicherplatz kostet zwar nichts mehr, aber auf Netbooks oder Smartphones lässt er sich manchmal nicht nachrüsten ...

peterp am :

*Und wie soll ich Otto Normalnutzer dann erklären, dass es besser ist, eine Überschrift als Überschrift zu markieren, statt sie "groß, kursiv und fett" zu machen, wenn er dafür nicht die nötigen Mittel (Formatvorlagen) an Bord hat?

Nein, ich glaube der Firefox-Ansatz ist nicht einfach so auf andere Software zu übertragen. Ich habe keine Lust, mir meine Funktionen erst mühsam zusammenzusuchen. Ich kaufe/lade mir eine Software, die sich Textverarbeitung nennt. Dann möchte ich damit auch meine Texte verarbeiten und nicht erst unzählige Plugins installieren müssen, um bspw. eine Marginalspalte oder floatende Bilder einzufügen.

Wenn ich daran denke, wie viele Plugins es für Firefox gibt, die entweder kaum ein Mensch braucht, oder die alle dasselbe machen, oder aber die man dringend brauchen würde, sie aber nicht findet; ja dann wünsche ich mir, dass wenigstens meine Textverarbeitung/Tabellenkalkulation alles dabei hat.

Dirk Deimeke am :

*Mal davon losgelöst, dass die meisten Nutzer Formatvorlagen nur dann nutzen, wenn sie dazu gewzungen werden, denke ich, dass das nur funktionieren kann, wenn Plugins zu Paketen zusammengefasst werden.

So wie es die Meta-Pakete in einer Linux-Distribution umsetzen, wenn Du ubuntu-desktop installierst, bekommst, XServer, Gnome, ...

Es spricht ja nichts dagegen, dass Du "Deine Texstverarbeitung" mit allen verfügbaren Plugins ausstattest. Das Modell leistet auch das.

EnTeQuAk am :

*Plugins sind nicht für alles Übel eine Antwort. Je komplizierter die Software desto schwieriger und Aufwändiger sind entsprechende Pluginsysteme.

Da Plugins in der Regel über einen gesicherten Kontext ausgeführt werden sollten, gibt es immer einen gewissen Overhead – sowohl im Code des Programms/Plugins, als auch in der Performance (ich gehe von richtig großen Dingern aus… Rechtschreibprüfung oder so).

Plugins müssen auf entsprechende Schnittstellen zurückgreifen, die zu schreiben ist auch nicht einfach, die jedoch auch noch ABI/API-Stabil zu halten ist ein Mammutwerk. Das merkt man beim Firefox wenn mal eine neue Version davon herauskommt, ich kenne keine Statistiken aber gerade einmal gefühlte 10% aller Addons überhaupt laufen noch mit dem FF 3.5, bis alle anderen wieder laufen vergeht unnötigt Zeit.

Maintainer und Wartbarkeit: Liegt der Code im Repository der Hauptanwendung, oder gar direkt sichtbar in der Anwendung besteht die Möglichkeit das viele andere Entwickler drüberschauen können/müssen/wollen. Ein Plugin-Entwickler ist da eher sein eigene Herr, klar auch hier gibt es Abhilfen, aber auch das muss alles Koordiniert werden. Integration mit anderen Plugins/Features währe wieder ein Thema, das ein noch größeres Mammutwerk bereit stellt, Abhängigkeiten schafft uvm.

Man könnte unendlich lange weiter Philosophieren, ich denke Plugins sind zwar Hauptbestandteil einer größeren Anwendung wie Textverarbeitung, Tabellenkalkulation, sollten jedoch nicht mit unnötigem Core-Krams niedergemacht werden. Dagegen bin ich für Plugins die solch sachen wie Collaboration in Abiword bringen.

Im Allgemeinen, schau dir mal Abiword und Gnumeric an – die beiden Projekte implementieren irgendwie relativ genau das was du ansprichst, klein schmal können was man braucht, sind aber unglaublich erweiterbar.

Gruß,
Christopher.

Dirk Deimeke am :

*Ich gebe Dir mit (fast allem) Recht. Plugins bei Firefox sind ein schlechtes Beispiel, weil Firefox als Gerüst schon sehr gross ist. Wenn man es auf die völlig rudimentären Funktionen runterbrechen könnte, würden (nur als Beispiel) die Bookmarkverwaltung oder die Proxy-Einstellungen rausfallen, beides sicherlich wichtige Features, aber beides wird weder von allen Benutzern gebraucht, noch stellt es das Ende der Entwicklung dar.

Das Gerüst muss sehr rudimentär sein, mit einem wirklich minimalen Set an Funktionen.

Dass Entwicklung mit Hilfe von Plugins schwierig ist und eine Herausforderung darstellt, gerade was Sicherheitskonzepte und Schnittstellen angeht, steht ausser Frage.

markus am :

*also ich finde das Firefox Konzept gut...
Ich meine, was interessiert mich das, wenn User X damit nicht klar kommt ein paar Plugins zu installieren? Solange ich die Wahl hab, mach ich lieber das und habe damit nur genau das, was ich will.. (gilt in dem Fall übrigens für Texteditoren, Browser, E-Mail etc. etc..)

Was mir gar nicht geschmeckt hat, war dass einige Funktionen die es von Plugins gab dann in den Browser nativ übernommen wurden, allerdings nur rudimentär... das hat ihn aufgebläht, weil ich jetzt den größeren (langsameren) Firefox habe und dazu trotzdem die Plugins brauche, weil der Firefox mir da an den Stellen allein nicht reicht, quasi sind viele Funktionen doppelt vorhanden, ich denke da z.b. an tabmix plus, downthemall oder adblock plus an deren Leistungsumfang die nativen Lösungen von Firefox selbst nicht annähernd ran kommen.

Dirk Deimeke am :

*Das spricht dann wieder dafür, das Grundgerüst möglichst klein zu halten, oder?

Keba am :

*Die Plus-Punkte liegen auf der Hand (und ich liebe das FF-Konzept, bei meinen Programmen werde ich auch so gut wie es geht Plugins ermöglichen), aber hier mal ein paar Minus-Punkte:

- Man braucht ne API/ABI bauen und eine Doku dazu schreiben. Das frisst Zeit. (ok, man kann der Community natürlich die Arbeit danach überlassen. Obs nun schneller/einfacher/besser geht den Grund und eine API oder den Grund und viele weitere Funktionen zu bauen, weiß ich nicht)
- Sachen werden doppelt und oft nicht zu Ende entwickelt (ala "Addon $foo könnte noch Funktion $bar gebrauchen, aber der Entwickler hat keine Zeit mehr")
- Man braucht eine Community und muss bereit sein mit dieser zusammenzuarbeiten.
- Kompatibilität mit neueren Versionen, von kleineren Addons haben die Entwickler oft auch nicht den Nerv das Addon immer weiter zu pflegen...
- Geschwindigkeit: Auch hier muss man sich fragen, ob ein überladenes Programm, oder ein durch Addons eigentlich langsameres Programm schneller ist.
- Viele User haben keine Lust sich ihr Programm zusammenzubauen.
- Plugins haben unterschiedliche Qualität und lassen sich unterschiedlich bedienen.
- es gibt sicher noch mehr...

Vllt. wäre es am besten, wenn die Entwickler selber die API nutzen und darüber Addons schreiben. Dann gibts eine "Classic"-Version und eben eine "Core", beide lassen sich beliebig aufbessern...

Dirk Deimeke am :

*Einige der von Dir angesprochenen Punkte gelten unabhängig davon, ob Du Plugin-gesteuerte Programme hast oder nicht.

Dokumentieren musst Du in jedem Fall, wenn Du mir mehreren an einem Projekt arbeitest.

Auch in grossen Projekten werden Teile nicht zu Ende entwickelt.

Dass es unterschiedliche Bedienkonzepte gibt, könnte eine Leitlinie verhindern, so das nur die Plugins, die der Leitlinie folgen, veröffentlicht werden.

Ganz ohne Schwierigkeiten geht das alles sicherlich nicht.

pidikun am :

*XUL-Engine von Mozilla sollte sowas eigtl hinbekommen...
Tabs für Dokumente wären auch nicht schlecht.
Ein weiterer Vorteil wäre die Plattformunabhängigkeit.
PDF-Export und HTML-Ausgabe sind ohnehin schon implementiert...

Dirk Deimeke am :

*Genau darum geht es, es sollte so wenig wie möglich "schon implementiert" sein.

Kommentar schreiben

Gravatar, Favatar, Pavatar, Identica, Twitter, MyBlogLog Autoren-Bilder werden unterstützt.
BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
:'(  :-)  :-|  :-O  :-(  8-)  :-D  :-P  ;-) 
Formular-Optionen