Hi!
Welche Auswirkungen hat es denn in deinen Fällen konkret gehabt? Wieviel Daten hast du eingespart und wieviel Pflegeaufwand hast du generiert?
Das läßt sich in einer komplexen Anwendung kaum bestimmen. Ich entnehme aber deinen Ausführungen, dass du es für kaum nennenswert hälst?
Das war jetzt wieder ernst gemeint. (Nicht nur) ich halte es für wichtig, nicht ins Blaue hinein Verbesserungen zu versuchen. Sie müssen nachvollziehbare Änderungen bringen und sollten den Wartungsaufwand nicht unangemessen hoch treiben.
Ich geb doch niemanden die Schuld an irgendwas. Sondern sage nur, dass mir dieser Tipp geholfen hätte, wenn ich ihn früher aufgeschnappt hätte und ich mich wundere, dass und warum er so kontrovers hier diskutiert wird, ohne das ich erkennen kann, was ich nun davon habe, wenn ich alle Felder selektiere, anstatt select * zu vermieden wo immer es geht.
Nicht wo immer es geht, sondern wo immer es sinnvoll ist. Das ist der entscheidende Unterschied. Und das ist mein Anliegen, sinnvolle Werkzeugverwendung statt unreflektierte Regelanwendung.
Wenn man sich auf etwas spezialisiert, ist es sicher einfacher, sich umfassend und allwissend über alle Aspekten eines Bereiches zu informieren.
Oder man wird zum Fachidioten. Das versuche ich zu vermeiden, indem ich mich bemühe, die Dinge von allen Seiten aus zu betrachten. Auch dann, wenn ich mit der Gegenseite nicht konform gehe, muss ich deren Argumente kennen, um auch meine Lage besser einschätzen zu können.
Da es aber nötig ist, wenn man im Webbereich arbeitet, von allen etwas zu Wissen, grenzt das an eine Unmöglichkeit. Du brauchst, um eine Seite zu betreiben, das Wissen von mehreren Programmiersprachen, Auszeichnungssprache, Serverkonfiguration, Datenbanken, daneben die vielen kleineren Sachen, wie das Auswerten von Logfiles, Bildbearbeitung und dazu kommen ständig neue Änderungen und Erweiterungen, die sich die Nutzer wünschen.
Komplexe Themen erfordern nun mal komplexes Wissen, wenn man es richtig machen will. Das bekommt man nicht durch Tutorial-Lesen sondern vor allem durch eigene Anstrengungen - und viel investierte Zeit.
Insofern sehe ich das Lernen, wie du es dir vorstellst als utopisch an. Und ich glaube dass es vielen, die hier Fragen und manchen die hier antworten nicht anders geht. Es ist wesentlicher einfacher mit klaren Regeln zu arbeiten, als sich über jede Regel Gedanken machen zu müssen.
Das ist auch in meinen Augen verständlich - aber nicht in Stein gemeißelt. Man kann wenigstens versuchen, die Blickschärfung anzuregen. Regeln können vor allem bei komplexten Dingen nur dann einfach sein, wenn sie zwar viele Fälle abdecken, aber die Ausnahmen nicht berücksichtigen. Deswegen sollen ja nach meinen Vorstellungen nicht die Regeln das Maß der Dinge werden sondern das Wissen, wie etwas funktioniert. "Immer mysql_real_escape_string() anwenden" ist beispielsweise eine einfache Regel, und sie ist auf diese Weise vereinfacht nicht richtig, weil sie die Ausnahmen unberücksichtigt lässt und damit einige Sicherheitslücken bestehenbleiben. "Bei Strings mysql_real_escape_string() anwenden" erhöht die Komplexität der Regel schon um eine Bedingung. Aber dann fehlen immer noch die Fälle für Zahlen, Datumsangaben, Konstanten (wie NULL), unveränderliche Strings und so weiter. Die Regel versprach Einfachheit - und hat es nicht halten können. "Kontextgerechte Behandlung" ist auch eine einfache, diesmal aber allumfasende Regel. Sie ist jedoch so unspezifisch, dass man damit ohne weiteres Wissen nicht viel anfangen kann.
Was nützen dann die Regeln, wenn sie Lücken lassen, die sie zu stopfen versprechen?
Die Aussage gegenüber dem Laien sollte nicht sein: "XY ist (meistens) Mist" sondern er muss herangeführt werden zur eigenständigen Klärung der Frage: Ist XY in einem speziellen Fall a) angemessen, b) ungeeignet oder c) die Auswirkungen nicht relevant?
In einem Kurs an der Uni magst du Recht haben, aber in der Praxis sieht das anders aus, wie man hier jeden Tag hundertfach sieht.
Ich habe keine Ahnung, wie Uni-Kurse arbeiten. Aber ich kann mir gut vorstellen, dass auch die Uni mehr oder weniger nur Grundlagenwissen lehren kann und die Methodik wie man sich selbst das fehlende Wissen beschafft. Zu wissen, wie irgendwas in der Theorie geht, ist schön und gut, da fehlt nur die Praxis. Reines Wissen zu lernen fällt mir nicht leicht, und das wird mit zunehmenden Alter nicht besser. Ich verbrauche viel Zeit mit Ausprobieren und dem ungezwungenen Umgang, gerade auch angeregt durch Forumsprobleme. Erfahrung erfordert Anstrengung.
Von denen die hier Fragen, ist vielleicht einer im halben Jahr wirklich bereit und willig intensiv etwas zu lernen, die meisten suchen eine Lösung im Rahmen ihres Wissens.
Einfach gesagt wäre das ihr Problem. Weitergedacht ist es aber auch mein Problem, weil durch ihre unsicheren Systeme auch mein Leben beeinträchtigt wird. Ich bekomme Spam nicht weil meine Systeme Lücken haben, sondern weil irgendwer anders seins nicht abgesichert hat. Wer das nicht einsehen will oder sich hinter seiner Lernunfähigkeit versteckt, ist auch irgendwie egoistisch. Natürlich mach ich mir keine Illusionen, das ich durch meine Hinweise hier die Welt verbessern kann, aber ist das ein Grund nicht wenigstens ein kleines bisschen Aufklärung zu betreiben?
Lo!