Krishty hat geschrieben:Naja; das 2. Fenster (mein Viewer) wird direkt aus dem ersten Fenster (dem Explorer) heraus gestartet. Es ist ja nicht so, dass ich erstmal auf den Desktop wechsle, ein neues Programm starte, und das sucht sich irgendein anderes Fenster auf dem System und beschließt, heute mal die Items in der selben Reihenfolge wie dort zu listen ;)
Naja, du hast mindestens einen Race-Condition drin, dass ich das Fenster schließen könnte, bevor dein Viewer den Code ausführen kann, der zu dem Fenster verbindet. Ich muss, wie ich dich kenne, zwar annehmen, dass dein Viewer so schnell startet, dass ich das Rennen in der Praxis nie gewinnen werde, ich finde es aber schon unbefriedigend, dass es überhauot so ist. Mein Punkt ist gar nicht so sehr, dass es nicht so funktionieren sollte wie du es dir vorstellst. Mein Punkt ist, dass ich als User eine mentale Verbindung zwischen dem Inhalt des Fensters und dem Verhalten deines Viewers aufbaue, nicht mit dem Fenster _an sich_. Sollte ich also einmal in 1000 Jahren durch einen kosmischen Zufall das Rennen gewinnen und in den failure Mode geraten, den du sicherlich einbauen wirst, würde ich im Leben nicht drauf kommen, dass es daran liegt, dass ich das Fenster geschlossen habe. Das ist es was ich ungut finde. Dein Eingangspostig hatte ich so verstanden, dass dir auch zuerst nicht klar war, wie der Windows-Viewer das macht, obwohl du es dauernd nutzt und Programmierer bist. Wie soll der User es dann verstehen. Oder andersrum: Wenn der User es nicht verstehen kann oder soll, muss es sich wenigstens immer und unter allen Umständen gleich verhalten. Was hier technisch unmöglich scheint.
Diese mentale Verbindung weicht natürlich mit der Zeit auf (vielleicht schon nach dem ersten Fokus-Wechsel), aber in den meisten Use Cases bleibt ein Viewer ja nur kurz offen.
Ist dir das denn bisher schonmal passiert, dass du auf ein Bild geklickt hast, und das Nächste, und dir dachtest: „STOP! Das ist jetzt aber nicht nach Dateinamen sortiert, sondern nach der Reihenfolge in dem Explorer, auf dessen Item ich geklickt habe! Das verwirrt mich und macht mich wütend!“?
Ich benutze das wirklich quasi nie. Ich habe ein anderes Beispiel: Ich nutze ein Programm, das KeePass heißt. Damit kannst du Passwörter in die Zwischenablage kopieren und nach 30 Sekunden oder wenn man das Programm schließt, leert es aus Sicherheitsgründen die (eigene) Zwischenablage. Ob das wirklich ein Sicherheitsgewinn ist, weiß ich nicht, ich kann mir Attacken vorstellen, bei denen es wenigstens ein bisschen hilft. Was ich weiß ist, dass ich bestimmt schon 100 Mal Strg+C->Fenster schließen->Strg+V->Fuuuuuu gemacht habe, weil ich nicht erwarte, dass ich ein Fenster, das ich nicht mehr brauche offenhalten muss. Ich weiß was passiert, ich weiß warum, aber mein implizites mentales Modell kann das nicht verarbeiten.
Bei mir war nämlich genau das Gegenteil der Fall – dass sie in der Explorer-Reihenfolge auftauchen, habe ich nicht gemerkt, bis es mal kaputtgegangen ist (neue Dateien in Ordner eingefügt).
Bingo. Ich hatte verstanden, dass du, von meiner vielleicht akademischen Rece-Condition oben abgesehen, technisch quasi nicht garantieren kannst, dass es nie kaputtgeht. In deinem Usecase vom Einfügen neuer Dateien hast du Fokusverlust, Aufweichen der Mentalen Verbindung und eine erstklassige Gelegenheit das Fenster zu schließen gleichzeitig. Ich geb dir ne 50:50 Chance. Und eins kann ich versprechen: Ein Programm das (auf diesen Usecase bezogen) in 50% der Fälle so und in 50% der Fälle anders funktioniert, ohne dass die Ursache offensichtlich ist, würde mich, deine Worte, richtig wütend machen. Auch bei 80/20 noch. 99/1 wäre wahrscheinlich akzeptabel.
Ich weiß, dass es dir ums größere Ganze geht, nur gerade in der UI-Entwicklung muss man sehr viel praktisch testen …
Nur um es nochmal ganz deutlich zusagen: Solange es funktioniert habe ich keine Einwände gegen das Feature. Das "große Ganze" ist hier, dass Programme nicht darüber lügen sollen, was sie können. Wenn du nicht garantieren kannst, dass es beim Einfügen von Dateien weiter funktioniert, und das kannst du nach meinem Verständnis nicht, denn, wie das Beispiel KeePass zeigt, ich würde das Fenster nach dem Einfügen auch dann schließen, wenn ich eigentlich weiß, dass ich nicht sollte, dann fühle ich mich verarscht, wenn es manchmal geht.
Ich habe lieber den geringeren Komfort z. B. immer händisch auf "Aktualisieren" klicken zu müssen auf das es immer funktioniert, als dass das Programm für mich entscheidet, wann ich von Vorne anfangen darf. KeePass lasse ich das nur durchgehen, weil es zumindest einen kleinen erkennbaren Sinn hat, und nicht "ging nicht besser" ist.
Ich bin nicht sicher, was du mit "praktisch testen" meinst. Würdest du User fragen, würden sie dir sagen, dass sie die Komfortfuinktion wollen, scheiß auf den Fehlerfall. Das ist mir schon klar. Aber dann wunder dich bitte nicht im anderen Thread, was User bereit sind für einen Buillshit hinzunehmen. Die Entwickler sind es doch, die den Usern antrainiert haben, dass sie diesen Komfort nur um den Preis von unerklärlichen Fehlern am anderen Ende bekommen. Nach der fiktiven Welt in der mein Klick auf aktualisieren an der Tagesordnung ist, aber dafür nie etwas kaputt geht, kannst du den User ja leider nicht fragen.