[Wikide-l] Re: mediawiki-bausteine als navigationselemente
Ivo Köthnig
koethnig at web.de
So Feb 29 11:43:18 UTC 2004
Am Sonntag, 29. Februar 2004 06:16 schrieb Timwi:
> Ivo Köthnig wrote:
> > Da sieht man, dass du selten Artikel schreibst.
>
> Bitte versuche doch, dir solche herablassenden Kommentare zu sparen. Ich
> versuche hier, faktisch zur Diskussion beizutragen, und nicht die
> anderen Kinder zum Weinen zu bringen. ;-)
Wer weint denn hier? :-))
> >>>Abgesehen davon muss so ein Feature auch so
> >>>implementiert sein, dass der alte Name eine Weile gesperrt ist, damit
> >>> ihn sich niemand aneignet, während alle anderen noch realisieren
> >>> müssen, dass Coma nun ein Dorftrottel ist...
> >>
> >>Das ist ja wohl auch trivial, in dem man den alten Benutzernamen einfach
> >>als neuen Account registriert und dann nicht verwendet.
> >
> > Sag mal will du mich nicht verstehen oder bist du dazu unfähig?
>
> Bitte beruhige dich etwas. Ich bin sicher nicht unfähig, aber vielleicht
> drückst du dich nicht klar genug aus. Du wolltest doch, daß der alte
> Benutzername unbenutzbar wird? Also leg einfach einen unbenutzbaren
> Account unter diesem Namen an. Was ist daran falsch?
Das Problem ist: Jemand will seinen Account-Namen ändern und alle Signaturen
und jedes andere Vorkommen seines Namens sollen sich mitändern! Ich glaube
ausser Dir ist das jedem hier klar geworden.
Du fällst ständig in einen Rechtfertigungsmodus zurück, indem du nicht dieses
Problem vor Augen hast, sondern nur ein Teilproblem und präsentierst eine
völlig unzureichende Lösung...
> >>Wenn es zu einfach ist, seinen Benutzernamen zu ändern, dann machen die
> >>Leute das ständig. Es ist wichtig, Benutzernamen mit Personen (bzw.
> >>Persönlichkeiten) verbinden zu können, aber wenn die Benutzernamen sich
> >>ständig ändern, geht das nicht mehr. Man weiß dann vorne und hinten
> >>nicht mehr, wer wer ist.
> >
> > Genau deshalb habe ich ja auch gesagt, dass der alte Account einen Monat
> > lang gesperrt bleiben soll. Das kann man ja auch leicht dahingehend
> > ausbauen, dass der neue mindestens einen Monat bestand haben muss...
>
> Selbst bei nur einem neuen Namen pro Benutzer pro Monat gäbe es
> immernoch ein heiloses Durcheinander. Bei mehr als 30 Benutzern wäre das
> schließlich mehr als eine Namensänderung pro Tag.
Dann sind es halt 2 Monate und beim nächsten mal muss man ein halbes Jahr
warten. Ist deine Fanatsie so begrenzt, dass du jetzt den Zeitraum in Frage
stellen musst. Du solltest Wissen dass man Software an der Stelle leicht
anpassen kann.
> Ich habe eins davon gesehen (http://meta.wikipedia.org/wiki/Wikitax),
> bin davon aber wirklich nicht sonderlich vom Hocker gerissen. Was ist so
> sonderlich anders, wenn man statt ''...'' halt [/.../] benutzt. Kommt
> aufs Gleiche raus. Die vorgeschlagene Syntax zum Einrücken ist Overkill
> (wer muß schon rechts einrücken) und komplizierter als einfach ':'.
Es benutzt immer die gleiche Klammerung. Das ist leichter erlernbar. Jeder der
eckige Klammern sieht, weis genau, da ist etwas ausgezeichnet. Bei unserer
Syntax muss man das ganze Markup kennen... Abgesehen davon kann das die
Software aus dem gleichen Grund leichter parsen.
> Davon abgesehen, hast du meine Frage nicht beantwortet. Was ist denn
> jetzt an unserer momentanen Syntax uneinheitlich?
Zum Beispiel die Verwendung von {{}} solchen Klammern für den Media-Wiki
bezug. Zum Beispiel die Verwendung von ~~~~ für Signatur. Zum Beispiel
<nowiki></nowiki> (ich dachte wir wollen kein XML). Genauso <math> und
</math>. Und dann natürlich noch '',''',==,=== usw.
Da ist überhaupt nichts einheitlich. Das ist ein sammelsurium von "Das
brauchen wir grade", lasst es uns einfach mal so machen, egal ob es ins
bisherige Schema passt.
> Aha. Du gibst also selbst zu, daß es zwei Möglichkeiten gibt:
> (1) Die Syntax ist prima maschinell parsebar. Warum dann eine neue
> einführen?
> (2) Die Syntax ist nicht maschinell parsebar. Dann würde eine Umstellung
> also einen Teil der Artikel vorübergehend unleserlich machen und
> unnötigen Arbeitsaufwand verursachen.
Schon wieder das Rechtfertigungsschema: Ich habe die Antwort auf (1) doch
schon längst gegeben. Das war ja der Grund für diese Teildiskussion.
Und warum man den 2. Fall erst recht beheben sollte ist doch wohl auch klar.
Oder willst Du eine Software haben, die ständig undefinierte Sachen
produziert.
> > Am Ende landen wir sowieso bei etwas, was ähnlich zu XML ist
> > und wir werden nur noch logisch formatieren...
>
> Hm, da bin ich mal gespannt. :-) Bis dahin mache ich mal lieber mit der
> einfachen und schnellen Wiki-Syntax weiter, hmkay? :-)
Also deine Argumentation ist lustig. Bei RDBMS, einem riesen Monster von
komplizierter Software (die garantiert 100erte von Bugs enthält) bestehst du
auf dessen Verwendung, noch dazu unter dem Performance-Argument (und nach wie
vor lasse ich nur das Argument des einfacheren Designs der
MediaWiki-Software, Datensicherheit und vielleicht gerade mal so noch
Skalierbarkeit gelten).
Aber wenn es um XML geht, was ja fast zu unserem Zweck erfunden wurde und
unter dem Gesichtspunkt der Einfachheit entwickelt wurde, da ist es dir dann
zu kompliziert. Noch dazu wo es schon schnelle, einfache Parser für soetwas
gibt, die uns die halbe Arbeit abnehmen könnten.
> > Es kann nie Schaden die Software zu dokumentieren und auch zu erklären,
> > warum man bestimmte Dinge so macht, wie man sie macht.
>
> Andererseits gibt es aber auch einige Dinge, die einfach
> selbstverständlich sind; vorausgesetzt, es sind hinreichend erfahrene
> Leute dabei. Was natürlich bei einer so extrem offenen Community wie
> Wikipedia nicht immer ganz der Fall ist.
Das Problem dabei ist: Für den einen ist es selbstverständlich, der andere hat
keine Ahnung davon. Und an anderer Stelle ist es umgekehrt. Ohne dass es
wirklich fruchtet, aber genau deshalb wird jedem Informatikstudenten von
Anfang an nahe gelegt die Software zu dokumentieren. Undokumentierte Software
ist spätestens nach 5 Jahren unwartbar, weil dann keiner mehr exisitiert, der
sie versteht. Abgesehen davon ist genau dass auch ein Grund, warum das Rad
ständig neu erfunden wird in dieser Branche.
> Für Web-Anwendungen, die Daten verwalten, verwendet man halt ein RDBMS.
> Das ist halt so. Das hat sich bewährt, rohe Dateien nicht. Ich verstehe
> eigentlich auch gar nicht, warum so viele Leute das in Frage stellen.
> Wozu gäbe es denn sonst RDBMSe?
RDBMSe gibts zur Verwaltung von großen strukturierten Datenbeständen. Die gab
es auch schon lange vor dem Web, damit hat es überhaupt nichts zu tun. Das
Web ist nur ein neuer Anwendungsfall, aber auch dort eigentlich nur für
"große strukturierte Datenbestände", wie z.B. Kundendatenbanken...
Ich erkläre es auch nochmal hier: Wir haben zwar große Datenbestände, aber
unsere Artikel sind höchstens ein bissel verlinkt. Und wir müssen sie maximal
nach ein paar Kriterien sortieren. Der einzige Grund für ein RDBMS hier sind
die eher Nebensächlichen Vorteile, die ein DBMS noch zu bieten hat. Zum
Beispiel, dass viele Personen gleichzeitig drauf zugreifen können, und
bestimmte Dinge betreffs Datensicherheit. Schon bei der Skalierbarkeit glaube
ich nicht mehr so recht an mySQL oder Postgre.
> > Wenn die Developer das kapieren würden, könnten sie sich eine Menge
> > unnützer Diskussionen ersparen...
>
> Vielleicht. Auf der anderen Seite kann man sich aber fragen, ob die
> Leute, die diese Art von Diskussionen lostreten, überhaupt dabei sein
> sollten. (Nicht, weil sie vielleicht etwas nicht wissen, sondern
> vielmehr, weil sie glauben, etwas zu wissen ("Dateien sind besser!
> RDBMSe sind Mist!") und von diesem Glauben nicht abzubringen sind.) Mir
> ist schon klar, daß die Diskussion "RDBMS vs. Textdateien" ein
> Extrembeispiel ist, und bei subtileren Dingen ist Dokumentation
> natürlich schon wichtig.
Also ich denke ich weiß schon worüber ich da rede, schließlich habe ich das
studiert. Ich mag mich in der Praxis da nicht so gut auskennen, weil ich mich
mit Datenbanken nun nicht primär beschäftigt habe, aber ich kenne die Vor-
und Nachteile vom theoretischen Standtpunkt durchaus. Und im Gegensatz zu
manch selbsternannten mySQL-Guru weiß ich auch ungefähr, was da intern in
einer Datenbank abgeht.
Wenn ihr statt SQL lieber Relationale Algebra verwenden würdet (und intern
wird eine Abfrage (keine Anweisung!, wie z.B. schreib dies und dass dort hin)
immer insowas umgewandelt), könnte ich Euch auch genau sagen, welcher
Ausdruck schneller als der andere ist. Abgesehen davon kann man an der Stelle
von Hand optimieren, was der SQL-Parser nur sehr sehr bedingt kann. Die Frage
an der Stelle wäre höchstens noch, ob wir so kompliezierte Abfragen haben
oder nicht. Wenn nicht, lohnt sich der Aufwand auch nicht. Abgesehen davon,
kann es natürlich auch sein, dass mySQL gar keine direkten Abfragen in dieser
Form zuläßt? Dass wissen dann höchstens wieder die Gurus.
> Ernsthaft: Datenbankschemadesign ist wohl eher sowas, wo man nicht sagen
> kann, "das ist wegen soundso und deshalb dies und jenes". Es ist
> vielmehr etwas, das so mit der Erfahrung kommt. Man kann vielleicht
> sagen, "Wir brauchen einen Index, um die Daten effizient abrufen zu
> können", aber gleichzeitig will man ja auch nicht zu viele Indizes. Das
> gleiche gilt für verschiedene andere Aspekte (welche Spalten in einer
> Tabelle, welche Datentypen, welche Zusammenhänge). Es gibt sehr viel
> mehr "Grundregeln" (z.B. möglichst wenig Spalten variabler Länge) und
> sehr viel weniger spezifische Entscheidungen ("ich verwende hier X statt
> Y weil blahblah").
Warum man welchen Datentyp verwendet finde ich nun auch nicht besonders
spannend. Aber das Grunddesign (wozu ist welche Tabelle gut und was steht
drind) muss man schon erklären. Meine Erfahrung ist auch die, dass man beim
Schreiben einer ausfürlchen Dokumentation wie von selbst viele Schwachstellen
findet, weil man nochmal intensiver über sein Design/Code reflektiert.
> Ich kann dir aber wohl sagen: Die zwei Hauptprobleme, die ich mit der
> momentanen Datenbank sehe, sind (1) die Aufteilung in 'cur' und 'old',
> und (2) viel zu häufige Verwendung von Textdatentypen (VARCHAR und
> BLOB), wenn Ganzzahlen (INT) ausreichen. Brions Vorschlag löst nur das
> erste.
Die Trennung von cur und old hat zumindest den Vorteil, dass cur klein ist und
man das noch runterladen kann. :-). Aber im Bedarfsfall sollte eine einfache
SQL-Abfrage auch eine Cur-Tabelle generieren können.
--Ivo Köthnig