Verbesserung am Webinterface zur Mathenacht

Toll, dass @db6edr den Jungs (@Meinert und @Simon) bei der Programmierung der Mathenachtseite unter die Arme greifen will. Da er um Nennung von Wünsche gebeten hat, mache ich mal dieses Thema auf.

Hier ein paar Anregungungen von mir:

  • Bei der Lösungseingabe alte Eingaben stehen lassen.
  • Eingabe/Änderungen schon während der 10 min Wartezeit erlauben. Nur Submit Button deaktivieren.
  • Wenn Eingabefelder nicht dem gefordertem Eingabeformat entsprechen oder leer sind, den Submit Button deaktiviert lassen und einen Hinweis neben dem Eingabefeld einblenden. Bei den ersten Versuchen müsste die Gruppe explizit ein “?” bei den noch nicht gelösten Aufgaben eintragen. So können frustrierende Wartezeiten, wegen nur formal falscher Eingaben vermieden werden.
  • Statistiken, damit das Mathenachtteam schon während des Wettbewerbs erkennen kann, bei welchen Aufgaben besonders viele falsche Antworten oder gar keine Antworten kommen.

Ja, gute Ideen. Ich hatte gestern auch schon @db6edr (und @Meinert) eine Nachricht mit einigen Vorschlägen geschickt. Der vollständigkeit halber, poste ich sie auch hier (in leicht geänderter Form):

  • Richtige Lösungen sollten gespeichert werden und nicht jedes Mal neu eingegeben werden müssen.

  • Die Prüfung der Lösung sollte toleranter sein:

    • Führende und abschließende Leerzeichen abschneiden (trim())

    • Mehr Trennzeichen zulassen, nicht nur “;” sondern auch “,”, "; " (mit Leerzeichen) usw. Auch wenn “1,5” dann sowohl “1 komma 5” also auch “1 und 5” bedeuten könnte, wäre das kein Nachteil, weil sich die richtige Interpretation aus dem Lösungstyp ergibt und ein zufällig als richtig erkannte falsche Lösung trotzdem extrem unwahrscheinlich ist.

  • Mögliche etwas flexiblere Umsetzung in PHP:

    <?php

    // Lösung der Aufgabe 10 in Runde 1 von Jahrgang 5/6 (aus Datenbank lesen bzw. User-Input)
    $loesungen = [“96;1/6”, “1/6;96”];
    $eingabe = "96 , 1 / 6 ";

    echo "Die Eingabe ist " . (pruefe($loesungen, $eingabe) ? “korrekt.” : “falsch.”);

    function pruefe ($loesungen, $eingabe) {
    foreach ($loesungen as $loesung) {
    $trenner_regex = ‘\s*[.,;/\s]\s*’; // Trenner
    $loesung_regex = preg_replace(’/\s*’ . $trenner_regex . ‘\s*/’, $trenner_regex, $loesung);
    if (preg_match(’/^’ . $loesung_regex . ‘$/i’, trim($eingabe))) {
    return true;
    }
    }
    }
    ?>

  • Zusätzlich sollte geprüft werden, ob die eingegebenen Daten überhaupt vom geforderten Lösungstyp sind und ggf. darauf hinweisen (und nicht nur “Falsch” anzeigen).

  • Evtl. (öffentliche) Statistiken zu jeder Aufgabe (Anzahl der Versuche, Anteil der richtigen Lösungen in Prozent, Anzahl/Anteil der Gruppen, die die Aufgabe gelöst haben)

  • Evtl. nicht gleich die komplette Lösungseingabe sperren, sondern nur für die Aufgabe.

  • Evtl. auch falsche Lösungsversuche protokollieren, sodass man später noch sehen kann, ob man eine Idee schon eingegeben hat oder nicht.

  • Evtl. die Gruppengröße den Schulen überlassen. Wir haben nur eine Gruppe pro Jahrgang angemeldet, obwohl deutlich mehr Gruppen teilgenommen haben. Manche bestanden auch aus fünf Schülern. Da wir die Lösungen zentral gesammelt haben und ja sowieso der ganze Jahrgang gesperrt wird (was ja auch nachvollziehbar ist), war das praktikabler. Wettbewerb vor Ort gab es trotzdem. Aus der Übersicht der angemeldeten Gruppen würde ich schließen, dass das noch andere Schulen so machen. Das kann ja jede Schule handhaben, wie sie meint, nur die Teilnehmerstatistik wird so verfälscht.

  • Evtl. in der Statistik links aufführen, wie viele Jahrgangsstufen in Runde 2 / 3 sind (nicht wie viele Gruppen), aus dem gleichen Grund.

  • Der Gruppenregistrierung sollte eine Schulregistrierung vorausgehen, wo dann zum Beispiel eine Kontakt-Mail-Adresse angegeben wird. Bei Hinweisen, fehlerhaften Aufgaben (kann ja passieren) oder Regeländerungen (nur noch 9 statt 10 Lösungen nötig) könnte dann eine Rundmail geschickt werden, weil man ja nicht alle 5 Minuten das Forum checkt.

  • Die Runde 1 sollte deutlich einfacher sein, sodass (fast) alle (nicht einzelne Schüler, sondern Jahrgänge) es schaffen, vor 21 oder 22 Uhr in Runde 2 zu kommen. Die Runde 2 darf dann ruhig schön schwierig sein. Man könnte ja vielleicht die erste Runde in 2 Runden mit je 5 Aufgaben aufteilen (ggf. wieder mit sehr leichten Aufgaben auf 10 auffüllen). Das wäre für euch kein großer zusätzlicher Aufwand, aber würde mehr Erfolgserlebnisse verschaffen.

Ich hoffe, ihr nehmt die Kritik nicht persönlich, denn so ist sie nicht gemeint. Im Gegenteil, ihr gebt euch total viel Mühe und der Wettbewerb hat unseren Schüler/innen sehr viel Spaß gemacht. Ich halte das für eine sehr tolle Idee, die den Kindern zeigt, wie viel Spaß Mathe machen kann. Und sie zeigt auch “richtige” Mathematik, nämlich das systematische Nachdenken über Probleme, und nicht nur “rechnen”.

Wenn die Formulierung “… was wir zu dritt oder viert bis zur nächsten Mathenacht umgesetzt bekommen…” ein Hinweis auf begrenzte Kapazitäten ist, dann biete ich hiermit gerne an, an dem einen oder anderen Punkt mitzuhelfen und Konzepte und/oder Programmcode zu schreiben oder zu testen.

Grüße
Henrik

Es ist Absicht, dass nur 1 Lösungstyp zugelassen wird. Was ich mir am ehesten vorstellen könnte richtig/falsch/falscher typ

Es wurden ja schon sehr viele gute Ideen genannt. Was ich auf jeden Fall befürworte, ist, dass die richtigen Lösungen gespeichert werden.
Bei der Eingabe fände ich es sinnvoll, Leerzeichen zuzulassen, bzw die beim check dann einfach zu streichen. Als Trenner würde ich allerdings nur “;” verwenden (bzw. mit Leerzeichen). Ich kann mich auch daran erinnern, dass das Eingabeschema mal neben den Eingabefeldern stand. Das fand ich sehr sinnvoll und habe es dieses Jahr vermisst.
Die Schulregistrierung finde ich sehr sinnvoll. Wir haben für jede Gruppe dieselbe eMail-Adresse verwendet, und waren da sicherlich nicht die einzigen. :wink:
Des weiteren fände ich eine Jahrgangsregistrierung sinnvoll. Die Gruppen treten ja eigentlich erst in Runde 3 wirklich in Kraft, davor ist ja alles jahrgangsübergreifend und wird auch, wie ich sehe nicht nur bei uns, in den Schulen so behandelt. Zudem würde es die Statistik erleichtern, da man dann eine genaue Übersicht hätte, wie viele Leute pro Jahrgang mitmachen (wenn man die mit Liste macht). Wir haben zum Teil jetzt fünf Leute pro Gruppe angemeldet gehabt.
Und wenn man dann mal in Runde drei ist, wo die Lösungen ja in Gruppen getrennt eingeschickt werden, sind nur noch einzelne wach, die dann auch gruppenübergreifend arbeiten und ihre Lösungen einschicken. Von daher halte ich das Gruppensystem nicht für sinnvoll.
Ansonsten hat es dieses Jahr technisch super geklappt, auch von den Eingabeformaten her. Dickes Lob!

Ich finde die hier genannten Vorschläge super. Wir haben zu lange die Gruppen unkoordiniert arbeiten lassen. Anfängerfehler :wink: Beim nächsten Mal würde ich für den ganzen Jahrgang einfach als Ziel ausgeben, gemeinsam die 3. Runde zu erreichen.

Wäre es nicht möglich, bei Aufgaben bei denen mehrere Zahlen eingegeben werden sollen, entsprechend viele Kästchen zu machen, damit die Trennzeichenproblematik entfällt?

Bei uns an der Schule (und an anderen auch) treffen sich ALLE Gruppen zuhause, da es anders organisatorisch nicht möglich ist. Hier ist die Gruppeneinteilung unbedingt notwendig.

Nein, dann muss jedes Jahr von Hand das alles gemacht werden, und jedes Jahr muss die Datenbank darauf angepasst werden.

Zumal etwa 1-2 Wochen vor der Mathenacht Aufgaben verändert wurden…

Das wäre nicht (sinnvoll) möglich. [Es gibt aktuell nur 2 Personen die die Datenbank betreuen, und die machen auch noch andere Sachen]

Trotzdem ist das ne interessante Idee. :wink:

Wg. Trennzeichen es steht in Runde 1 in dem Anfangstext, dass IMMER mit ; getrennt wird und ALLES ohne Leerzeichen einzugeben ist. Von daher existiert diese Problematik eigentlich nicht…

[Klar es gab jetzt einen Tippfehler, vor ca. 5 Jahren gab es insgesamt ca. 10 Aufgabenänderungen, was ich viel Schlimmer fand ;), von daher werden die Aufgaben besser…]

Ich denke es werden viele der hier genannten Ideen mal bei einer Besprechung aufgenommen werden.

Dabei gibt es aus meiner Sicht mehrere Kriterien:

  1. Wollen wir das umsetzen
  2. Können wir das (theoretisch) umsetzen
  3. Wie ist der Zeitliche aufwand… [Alle arbeiten Freiwillig und Ehrenamtlich bei der Mathenacht mit. Einige sind gleichzeitig noch Schüler / Student.]
  4. Die Änderungen sollten nicht jedes Jahr neu angepasst werden müssen. [-> Daher z.B. pro Aufgabe ein Antwortfeld.]

Ich habe auch noch ein, zwei Wünsche:

  1. Für Schulen, bei denen sich mehrere Gruppen einen Browser teilen, ist es sehr umständlich, sich immer ab- und neu anzumelden. Daher sollte es möglich sein, parallel mehrere Anmeldungen aktiv zu halten und wie bei Browser-Tabs zwischen ihnen hin- und her schalten zu können.
  2. Die Aufteilung von mehrzahligen Antworten in mehrere Eingabefelder wünsche ich mir auch. Da das erwartete Format bekannt ist, kann daraus dynamisch die richtige Zahl Eingabefelder erzeugt werden. Eine Änderung an der Datenbank ist dafür nicht notwendig; Server und Webanwendung müssen nur einmalig angepasst werden.

Dirk

Klar kann man die Anzahl der Eingabefelder dynamisch erzeugen. Überhaupt sollten alle Eingabeformulare komplett dynamisch aus Datenbankeinträgen erzeugt werden und nicht immer neu programmiert werden müssen. Ich habe selbst hautnah miterlebt, wie viele Änderungen da bis zur letzten Woche noch rein mussten.

Allerdings gab es und wird es sicher auch wieder geben Aufgaben mit offener Anzahl an Antworten (Typ: N;N;…).
Und mal sind die Antworten breit (z.B. Typ: Wort(12)) mal schmal (N). Ich glaube das wird leicht mal unübersichtlich und bei schmalen Bildschirmen passt vielleicht nicht mehr alles drauf.

IMHO Dann lieber Hinweistext/Format links, dann Eingabefeld mit fester Breite und Fehlermeldung rechts.
Das ergibt ein klares Bild.
Ein überall einheitlich verwendetes Semikolon als Trennzeichen finde ich da nicht schlimm.

Z.B. bei N;… Ist es gewollt, dass nicht klar ist wie viele N das jetzt sind…

OK, das Argument überzeugt.

1 Like

Bitte einmal anrufen; dann lassen sich einige Punkte leichter klären.

Denkt bitte daran, die Ergebnisse des Telefonats hier festzuhalten. Danke!

Ich habe heute mit Meinert gesprochen; in den nächsten Tagen folgt eine geschlossene Kategorie hier im Forum, über die wir uns dann austauschen und abstimmen können.

Bis demnächst :slight_smile:

Dirk

Die versprochene Kategorie Entwicklung habe ich gerade eingerichtet und schon einige der Punkte aus diesem Thread übernommen.

Sie kann von allen gelesen werden, aber nur diejenigen, die aktiv an der der Umsetzung der Ideen arbeiten, haben dort auch Schreibrechte. Wenn ihr uns unterstützen wollt, meldet euch bitte direkt bei mir. Alles weitere können wir dann klären.

Dirk

Es gibt einen Fehler bei der Anmeldung während der Mathenacht:

Ist die Schule in einem Jahrgang schon in Runde 2/3 und meldet sich in dieser dann eine neue Gruppe an so ist diese Gruppe in Runde 1.