Re: die alte GUI-Diskussion 2 / Re: Hoffnung

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Mon, 6 Mar 2006 19:27:41 +0100 (CET)

Alvar Freude <alvar(at)a-blast.org> wrote:
> Oliver Fromme <olli(at)lurza.secnetix.de> wrote:
> > Alvar Freude <alvar(at)a-blast.org> wrote:
> > > Bei Windows gibt es de fakto keine Shell.
> >
> > Doch, gibt es, ich verwende sie sogar ab und zu (notge-
> > drungen).
>
> dass es eine gibt weiß ich auch, deswegen schrieb ich ja "de fakto".

Ja, es gibt de fakto eine.

> In meinen Augen ist das Teil allerdings ziemlich unbrauchbar

Kannst Du das etwas konkretiesieren? Was vermißt Du daran?
Sie funktioniert natürlich deutlich anders als eine UNIX-
Shell; es ist ja auch kein UNIX. Aber »anders« heißt nicht
unbedingt »schlechter«. Hast Du schonmal mit VMS gearbeitet?
Würdest Du sagen, das hat auch keine Shell?

> und wenns denn sein musste habe ich immer gleich Cygwin installiert.

Kann man natürlich machen; habe ich auch gemacht, allerdings
primär aus anderen Gründen.

> Allerdings muss man Windows zugestehen, dass die in den NT-Versionen
> immerhin rudimentär brauchbar ist.

Aktuell ist Windows XP. Alles andere ist irrelevant.

> > > Zumindest kann man dieses Ding nicht guten Gewissens so
> > > bezeichnen.
> >
> > Warum nicht? Was sind Deine Kriterien für eine »Shell«?
>
> dass sie brauchbar ist ;-)

Das ist rein subjektiv, und ohne konkrete Kritikpunkte nicht
nachvollziehbar.

> Wobei das nicht nur das Shell-Programm selbst, sondern auch alles was
> dazu gehört betrifft:
> History, Tab-Completion usw. sind mal das wichtigste, ein less (o.ä.)
> sollte scrollbar funktionieren und ein Texteditor sollte erreichbar sein.

Gibt es alles.

> Unten schreibst Du, die Windows-Shell hätte History und Tab-Completion;
> mag sein, evtl. aber auch erst in neueren Versionen?

Unter Windows XP. Wie das bei veralteten Windows-Versionen
ist, weiß ich nicht genau, aber das interessiert ja auch
nicht. In älteren FreeBSD-Versionen hatte die /bin/sh auch
keine History.

> > Es gibt sogar so eine Art Manual-pages, nur daß man sie
> > per »help« statt »man« aufruft. Die »Manpage« der Shell
> > selbst erhält man mit »help cmd« (der Befehlsinterpreter
> > heißt cmd.exe).
>
> ich weiß.
>
> Was ich meinte ist, dass sich die ganze Umgebung nicht sehr komfortabel
> anfühlt

Vielleicht meinst Du nur »ungewohnt« statt »unkomfortabel«?

> und dass eben viele typische Shell-Sachen nicht vorhanden sind,
> z.B. ein grep.

Es ist vorhanden und heißt »findstr«.

Kann es sein, daß Deine ganze Kritik nur auf Unwissenheit
beruht? Vielleicht solltest Du Dich erstmal etwas näher
damit auseinandersetzen, bevor Du es durch den Schmutz
ziehst.

(Ich möchte Windows eigentlich nicht verteidigen, und ich
möchte Dir auch nicht zu nahe treten, aber ich bin schon
oftmals bei vielen Dingen unberechtigter Kritik begegnet,
die lediglich auf Ignoranz oder Unverständnis beruhte, und
reagiere daher auf sowas leicht gereizt. Bitte nicht per-
sönlich nehmen.)

> > > Aber: um find zu beherrschen, muss ich sehr viel *wissen*.
> >
> > Überhaupt nicht. Man muß grundlegend wissen, was find(1)
> > tut: Es liefert eine rekursive Liste von Dateipfaden, die
> > sich nach bestimmten Kriterien filtern lassen. Punkt.
> > Wenn man nach etwas ganz bestimmten filtern will, braucht
> > ma nur genau _diesen_ Abschnitt in der Mapage nachzulesen
> > (z.B. -name, wenn man nach Namen suchen will). Man kann
> > sich natürlich auch die Zeit nehmen und die ganze Manpage
> > durchlesen (dürfte nicht länger als 10 Minuten dauern),
> > wenn man möchte. Das dürfte aber anfänglich kaum notwendig
> > sein.
>
> wenn ich ein GUI nutze muss ich eben rein gar nichts durchlesen. ;-)

Doch, klar. Du mußt die Beschriftung der Buttons und son-
stigen GUI-Elemente lesen. Und für jemanden, der einen
solchen Dialog zum erstenmal benutzt, dürften die in vielel
Fällen viel zu knapp sein, um zu wissen was sie tun, d.h.
man muß sich auch noch durch die Online-Hilfe klicken.

Davon abgesehen sind GUIs, deren Bedienung es erfordert,
daß man ständig zwischen Maus und Tastatur wechseln muß,
unergonomisch. (Das ist nicht nur mein Empfinden, sondern
dies wurde mehrfach in Unteersuchungen festgestellt.)

> > > Ich kann nicht
> > > das Ding anwenden und jedes mal eine weitere Option nebenher (!)
> > > auffinden, die ich nutzen kann, sondern ich muss jedesmal die
> > > Anleitung lesen.
> >
> > Nö, wieso mußt Du das? Ich persönlich habe irgendwann mal
> > die find-Manpage vollständig durchgelesen (ich war halt
> > neugierig, was alles geht, habe aber nicht nach einer kon-
> > kreten Funktion gesucht). Danach habe ich nur gelegentlich
> > mal das eine oder andere Detail in der Manpage nachgeschla-
> > gen, z.B. ob bei "-path" Wildcards auch "/" erwischen oder
> > nicht. Solche Details müßte ich im Falle eines GUI aber
> > ebenso nachlesen (in der Online-Hilfe oder sonstwo).
>
> Du weißt also nach einmal durchlesen dutzende Optionen auswendig?

Nein, muß man ja gar nicht. Man muß nur die wissen, die man
gerade braucht, und das sind oft nur zwei oder drei. Die-
jenigen, die man öfters braucht, prägen sich sowieso von
ganz allein ein.

> > Ich verwende find häufig, um nach irgendwas zu suchen, z.B.
> > eben mal herauszufinden, wo der syscall mount() definiert
> > ist: find /usr/src/sys -type f | xargs grep '^mount'
> > (Als billiger Ersatz für ein Crossreferenz-Tool, dessen
> > Installation sich für mich meistens nicht lohnt.)
>
> warum sollte man das nicht in ein GUI packen können?

Das war doch kein Gegenbeispiel zur GUI-Diskussion.

> > Häufig verwende ich es auch, um Dateien zu finden, die
> > älter oder jünger als eine bestimmte Referenzdatei sind,
> > Zum Beispiel: find /var/log -newer /var/log/lastlog
> > (Liefert mir alle Log-Dateien, in die seit dem letzten
> > User-Login etwas geschrieben wurde.)
>
> warum sollte man das nicht in ein GUI packen können?

Auch das war nicht als Gegenbeispiel gedacht.

> > Eine andere typische Aufgabe: Hardlinks finden:
> > find . -type f -links +1 -ls | sort
> > Und natürlich, um herauszufinden, wo die anderen Hardlinks
> > einer bestimmten Datei sind:
> > find . -inum 123456
>
> warum sollte man das nicht in ein GUI packen können?

Auch das war nicht als Gegenbeispiel gedacht.

> Der Knopf "finde alle harten Links auf diese Datei" im Info-Dialog zu
> einer Datei wäre zum Beispiel viel einfacher und intuitiver.

Ich finde »find . -inum 123456« viel einfacher und intui-
tiver. Vor allem hat es den Vorteil, daß ich das Ergebnis
sofort in einer Pipe beliebig weiterverarbeiten kann.

> > > > Nichtmal einfachste Dinge werden
> > > > berücksichtigt, z.B. daß ein Dialog sich an derselben
> > > > Stelle öffnet, an der man ihn zuletzt geschlossen hat,
> > >
> > > Da kann man sich trefflich drüber streiten, ob man das wirklich
> > will und > für welche Art von Dialog man das will.
> >
> > Also, _ich_ will das, und ich denke mal, die meisten ande-
> > ren Anwender wollen das auch. Ich finde es sehr kontra-
> > produktiv wenn z.B. derselbe Pop-Up mal links oben und
> > mal rechts unten aufgeht (unvorhersagbar und ohne ersicht-
> > lichen Grund).
>
> naja, wenn die zufälligerweise irgendwo erscheinen, dann ist das wohl
> ein Bug. Ich meinte eher, dass man sich darüber streiten kann, ob ein
> Dialog an der aktuellen Mausposition, in der Bildschirmmitte, in der
> mitte des aktuellen Fensters, links oben oder an der alten Position
> erscheinen sollen.

Wenn es _derselbe_ Dialog oder Pop-Up ist (nicht etwa nur
der gleiche), dann hat er gefälligst dort aufzugehen, wo
ich ihn zuletzt zugemacht habe, insbesondere dann, wenn ich
ihn vorher an die gewünschte Position hingeschoben habe.
Das will ich nämlich nicht jedesmal erneut tun müssen.
Das sollte das Standardverhalten sein, und wenn nicht,
sollte es sich _wenigstens_ so konfigurieren lassen.

> Kommt natürlich auch drauf an, ob es modale oder nicht-modale Dialoge
> sind.

Gerade unter Windows gibt es viel zu viele modale Dialoge.
Da kriege ich auch öfters einen Schreikrampf. Gerade vor
einer Minute erlebt:

1. Ich will eine Mail weiterleiten. An sich kein Problem,
    sollte man meinen. Aber: In diesem Fall geht es um
    Windows. Und um Outlook.

2. Ich klicke auf Weiterleiten. Will dann einen »Reply-To«
    setzen, gehe also im Menü auf »Ansicht« --> »Optionen«
    (warum, zum Henker, ist das unter Ansicht?!?).

3. Dann will ich die betreffende Adresse aus dem Mailtext
    kopieren: Geht nicht. Ist ein modaler Dialog. Wie
    offenbar _alle_ Dialoge im Menü. :-(

> Und ob die betreffende Applikation alles in ein Fenster packt oder
> alles in eigene Fenster.

Typischer Fall wäre ein Datei-Dialog (»Open«, »Save as«).
Das ist in praktischen jeder Applikation ein eigenes Fen-
ster.

> > > Ein positives Beispiel hingegen ist da der sshd bzw. dessen
> > Einbindung: > da muss ich eben nicht erst irgendwelche Schlüssel mit
> > irgendwelchen > kryptischen Befehlen generieren,
> >
> > Das liegt aber daran, daß ein SSH-Schlüssel erheblich
> > einfacher aufgebaut ist als ein X509-Schlüssel von
> > OpenSSL. Letzterer braucht zwangsläufig mehr Parameter
> > und einen komplexeren Aufruf.
>
> dem Anwender ist es doch wurscht, wie komplex das hinten ist.

Es _darf_ ihm aber nicht wurscht sein. Er sollte schon
willens sein, zu verstehen, was der Unterschied zwischen
einem Schlüssel und einem Zertifikat ist. Anderenfalls
kann er auch gleich auf Verschlüsselung verzichten.

Wenn ich ein Auto fahren will, sollte ich auch wissen,
was der Unterschied zwischen einem Hand- und einem Auto-
matikgetriebe ist und wie das funktioniert. Sonst sollte
man sich besser nicht hinters Steuer setzen.

> > Was meinst Du mit »deutlich mehr konkretes Wissen«?
> > Was ist z.B. an »tcpdump port 80 or port 25« schwer?
> > Wenn man weiß, wie TCP/IP funktioniert und daß man
> > Begriffe mit "or", "and", "not" und Klammern kombinie-
> > ren kann, hat man eigentlich schon alles an der Hand,
> > um tcpdump zu verwenden.
>
> Mit Ethereal kannst Du auch nachträglich filtern, kannst einfacher und
> übersichtlicher die Inhalte der Pakete anschauen (bzw. selektiv des
> gewünschten Pakets) usw.

Kann man mit tcpdump durchaus auch machen. Und was »ein-
facher und übersichtlicher« ist, ist rein subjektiv.

> > > Ich sprach ja davon, dass man bei einem kommadozeilenbasiertem UI
> > mehr > Wissen benötigt als bei einem grafischen.
> >
> > Das einzige zusätzliche Wissen ist das über die Shell (so
> > wie man beim GUI wissen muß, wie eine Maus funktioniert).
> > Alles andere Wissen ist bei beidem im wesentlichen iden-
> > tisch.
>
> Demnach wären GUIs ja überflüssig und jeder erstzunehmende Anweder
> würde ohne arbeiten ... ;-)

Nein, GUIs sind durchaus nicht überflüssig. Sie eignen
sich sehr gut für graphisch orientierte Anwendungen, wie
etwa Bildbearbeitung, DTP, CAD usw.

Sie eignen sich auch für Anwendungen, die einen begrenzten
Leistungsumfang haben, oder die sich an Benutzer mit wenig
Bedürfnissen und geringen Kenntnissen richten. Das mag
in Ordnung sein, wenn die Benutzer mit dem Leistungsumfang
zufrieden sind. Ich finde es aber absurd, zu behaupten,
daß _jede_ beliebige Tätigkeit prinzipiell in ein GUI ver-
packt werden kann, das dann auch noch mindestens genauso
effizient gehandhabt werden kann.

> > Eines der Probleme mit GUIs ist auch, daß man häufig mit
> > der Hand zwischen Maus und Tastatur wechseln muß. Das
> > tötet die Effizienz, insbesondere für 10-Finger-Tipper.
>
> Dafür gibt es Tastenkürzel. ;)

Aha, und die lernst Du alle auswendig? Was unterscheidet
das vom Lernen von Optionsbuchstaben? Und wo bleibt da die
Intuitivität des GUIs?

> > > Ich stand vor der Wahl:
> > > Holst Du Dir einen neuen Notebook mit Wintel-Technologie? Dann gibt
> > es da > viel Gefrickel, um FreeBSD laufen zu lassen und um anständig
> > arbeiten zu > können.
> >
> > Kommt drauf an. Auch ich habe mir ein neues Notebook ge-
> > kauft, habe aber bei der Auswahl sorgsam darauf geachtet,
> > was für Hardware drin ist und wie gut sie unterstützt wird.
> > Und für den Notfall habe ich mir ein Rückgabe recht vom
> > Händler zusichern lassen (wenn man per Versandhandel kauft,
> > hat man ja eh 14 Tage Rückgaberecht). Und siehe da: Fast
> > alles lief auf Anhieb mit FreeBSD. Ganz ohne Gefrickel.
> > Nur für die 3d-Beschleunigung (die ich eh nicht brauche)
> > mußte ich auf die nächste Xorg-Version warten, aber das war
> > auch kein Problem.
>
> wenn ich in der c't so die Horrormeldungen zu Linux auf Notebooks lese,
> dann habe ich durchaus den Eindruck dass es mit FreeBSD besser läuft. ;-)

Geht mir auch so.

> Aber nichtsdestotrotz funktioniert mit OS X eben einfach alles ohne dass
> man erstmal hoffen muss, dass es wirklich geht.

Dafür schränkt es die Hardware-Auswahl drastisch ein, und
beim Preis muß man auch nochmal drauflegen.

> Selbst die zsh ist schon installiert :-) (allerdings ist die Bash default)

Das zählt für mich als Minus-Punkt. Beides. Ich finde
auch, daß bei FreeBSD die csh/tcsh nichts in /bin verloren
hat.

Per Default sollte gar keine Shell installiert sein (außer
evtl. die /bin/sh, denn irgendwas muß halt zum Ausführen
von /etc/rc usw. vorhanden sein). Und dann sollte sich
jeder genau die Shell installieren können, die er benutzt,
und sonst nichts. Wieso sollten ein halbes Dutzend Shells
auf meinem System herumlungern und Platz verbrauchen, wenn
ich nur eine davon verwende? Klar, Festplatten sind billig,
aber ich sehe trotzdem nicht ein, warum man den Platz mit
beiden Händen zum Fenster rauswerfen soll. Zumal es nicht
bei Shells aufhört: Was für Shells gilt, gilt ebenso für
Texteditoren, Browser, MUAs und so weiter.

Wer mich schon länger kennt, weiß, daß ich für den minima-
listischen Ansatz bin. BIND, sendmail und ein paar andere
Dinge haben im Basis-System nichts zu suchen. Daß UUCP
und Perl rausgeworfen wurden, war ein Schritt in die rich-
tige Richtung. Meine Güte, wenn ich daran denke, daß ganz
früher sogar mal TCL im Basissystem war ... *schauder*

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.
"I started using PostgreSQL around a month ago, and the feeling is
similar to the switch from Linux to FreeBSD in '96 -- 'wow!'."
        -- Oddbjorn Steffensen
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 06 Mar 2006 - 19:29:19 CET

search this site