Pregătirea unui concurs

From Algopedia
Revision as of 15:58, 26 November 2015 by Cata (talk | contribs) (Created page with "== Ce înseamnă o problemă? == Crearea unei probleme de concurs înseamnă mai mult decât o sursă care să ia 100p. În primul rând este nevoie de o idee. Acest pas dur...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Ce înseamnă o problemă?

Crearea unei probleme de concurs înseamnă mai mult decât o sursă care să ia 100p.

În primul rând este nevoie de o idee. Acest pas durează cât durează, arta nu poate fi grăbită. Sperăm că potențialii membri ai comisiei au fiecare 1-2 idei.

De la idee la problemă completă avem nevoie de următoarele.

  • Autorul scrie o implementare de 100p și una ineficientă, dar cât mai corectă (cât mai greu de greșit).
  • Altcineva scrie o soluție de 100p.
  • Doi oameni diferiți (posibil aceiași de mai sus) scriu două mânăreli.
  • Autorul descrie în mare generatorul de teste. Cel puțin o altă persoană își dă acordul sau propune îmbunătățiri.
  • Autorul și o altă persoană stabilesc limitele pentru punctaje parțiale.
  • Autorul descrie, pe o pagină, soluția, pentru a o publica ulterior.

Ca timp, asta înseamnă, estimativ:

  • 2 ore redactarea enunțului (pot fi și imagini, asta durează);
  • 10 ore pentru cele 4 implementări;
  • 3 ore pentru generatorul de teste și generarea testelor;
  • 1 oră pentru uploadarea pe evaluator, ultimele teste etc.;
  • 2 ore pentru descrierea soluției;

Total: 18 ore per problemă.

Volumul total de muncă depinde de numărul de probleme, inclusiv problema (problemele) de rezervă. Luând ca exemplu 7 probleme, avem nevoie de 126 de ore. De aici decurge mărimea comisiei: fie 3 oameni a 42 de ore, fie (mai bine) 6 oameni a 21 de ore.

Așteptări de la membrii comisiei

  • Să contribuie cu volumul de muncă așteptat de la ei. De exemplu, dacă

avem 7 oameni la 7 probleme (cazul RMI), atunci un membru trebuie să facă, în medie, toate cele de mai sus (un enunț, patru implementări, un generator, o expunere de soluție).

  • Să fie disponibili, pe cât posibil, pentru 1-2 întâlniri în persoană.
  • Să îi informeze pe restul despre progresele făcute și planuri de

viitor, măcar printr-un e-mail la 2-3 zile. Când știu că vor să se apuce de ceva, să anunțe, ca să nu duplicăm efort.

  • Dacă apar urgențe de orice fel și își dau seama că nu vor putea

contribui, să anunțe imediat, ca să îi putem înlocui.

  • Dacă sunt autorii unei probleme, să fie disponibili pe telefon sau în

persoană în timpul concursului, în afară de cazul în care altcineva acceptă această răspundere.

        • 3. Comunicare

Mie îmi place mult e-mailul. Poate nu sunteți de acord cu mine (știu că Dan nu e fan), dar are două mari avantaje:

(1) Este asincron. (2) Ajunge la toți membrii simultan, spre deosebire de telefon.

Aș propune următorul mod de comunicare:

  • Dacă un mesaj este pentru tine, răspunde în maxim 24h. Nu ține lumea

în loc.

  • Probleme separate în threaduri separate.
  • Poți sări threadurile cu probleme de care nu te ocupi (toată lumea se

ocupă de toate problemele până când se găsesc concret oameni pentru fiecare din ele).

  • Dacă ai discuții telefonice cu alt membru și rezultă ceva de interes

pentru toți, dă și un e-mail.

        • 4. Cronologie propusă
  • 3 luni înainte: Victor stabilește câte probleme dorim și la ce nivel

(orientativ - OJI, ONI, lot).

  • 3 luni înainte: Victor începe să caute oameni pentru comisie. Le

explică clar ce volum de muncă se așteaptă de la ei și la ce termene. Dă-ne un e-mail și celor care suntem oarecum „auto-confirmați”. E bine să știm, să nu plecăm fix atunci etc.

  • 2 luni înainte: componența comisiei se cam știe, oamenii s-au gândit,

independent, la probleme. Planificăm întâlniri ca să ne expunem ideile.

  • 1,5-1 luni înainte: avem minim o întâlnire de două ore, preferabil

două, la distanță de o săptămână, în care dezbatem idei. Cu cât mai repede identificăm 1-2-3 probleme de care suntem siguri, cu atât mai repede începe implementarea.

  • 1,5 luni - 1 săptămână: Se lucrează cu spor. Dacă un om are în medie o

încărcare de 30 de ore, poate lucra 6 ore pe săptămână timp de 5 săptămâni.

  • 4 săptămâni: setul de probleme este definitivat. Se asignează oamenii

la probleme. Persoana considerată „autor” este responsabilă să găsească oameni pentru mânăreli / alte soluții și să escaladeze din timp dacă nu găsește.

  • 1 săptămână: toate problemele sunt scrise și puse pe site. Toată

comisia pleacă un weekend la munte.

  • 1 săptămână: team leaderii se întâlnesc pentru traduceri.

Neclaritățile sunt colectate și trimise comisiei.

  • 3-4 zile: comisia a corectat neclaritățile, team leaderii

definitivează traducerile.

  • 2 zile înainte: cineva (Victor?) tipărește și multiplică subiectele.
        • 5. Mediul de evaluare

Merită o cronologie separată.

  • 2 luni înainte: stabilim mediul pe care se va face evaluarea. Dacă

este CMS, stabilim numărul de sisteme necesare și alocarea lor pe zile.

  • (CMS) 2 luni înainte: Victor vorbește cu Mihai și încep să caute

calculatoare

  • (CMS) 2 luni înainte: Victor caută administrator de CMS. Tudor știe

sistemul, dar dacă este altcineva, are nevoie de timp să învețe sistemul.

  • (CMS) 1 lună înainte: un server este funcțional și rămâne funcțional

permanent.

  • (CMS) 2 săptămâni înainte: Victor adună listele de elevi participanți
  • (CMS) 3 zile înaintea: conturile elevilor sunt create. Se creează și

10 conturi generice pentru situații de urgență (oameni care uită să se înscrie).

  • (varena) 3 zile înainte: ne asigurăm că nu sunt teme cu deadline în

timpul concursului

  • (varena) 1 zi înainte: mută serverul pe UPS.
  • Dimineața concursului: Firewall, de tăiat accesul la orice în afară de

CMS / Varena (și cplusplus.com dacă concursul e pe varena).

  • (varena) În timpul concursului: de monitorizat tabela ia_tokens și de

golit oricând apar tokeni, ca să nu intre în modul Captcha.