ul-fmf / projekt-tomo

Spletna storitev za poučevanje programiranja
https://www.projekt-tomo.si
GNU Affero General Public License v3.0
14 stars 23 forks source link

Pregled storitve Pedal #247

Open lokarM opened 3 years ago

lokarM commented 3 years ago

Če bomo razmišljali o nadgradnji Toma, se verjetno splača pogledati https://pedal-edu.github.io/pedal/. Načeloma ima Pedal podobno filozofijo glede povratnih informacij ...

matijapretnar commented 1 year ago

@lokarM - a lahko dodaš kakšen screenshot in napišeš par alinej, v čem so razlike s Tomotom in kaj bi bilo vredno prenesti v Tomota?

lokarM commented 1 year ago

Na koncu sporočila sem imel tole - ker pa se ne veže neposredno na Pedal, dodajam spredaj (ne vem, kam bi načeloma bilo bolj smisleno dati - se opravičujem Matiji, ker dodatnoi ustvarjam zmedo)

Predlagam pa, da bi najprej (preden se lotimo vmesnika za sestavljanje) naredili sledeče:

===========================================================================

Glavna novost Pedala je, da ima poseben jezik za pisanje testov, oziroma, da so ustvarili API s Feedback Functions, ki se nekako "obesijo" na asserte.

Tega se verjetno ne bomo lotili, oziroma le posredno s pomočjo upo. vmesnika za sestavljanje nalog. Povod za njihov pristop je bil:

        _When we first giving automated feedback, our scripts became a pile of if statements and messages._

Pedalova shema:

image

Da bi lahko podrobneje ocenil, ali se da kaj od njihove kode neposredno (oz. z malo napora) uporabiti na Tomu, pa imam žal premalo praktičnega vedenja o kodiranju.

================================================================================ Je pa v primerih, ki jih najdemo na https://pedal-edu.github.io/pedal/teachers/examples.html kar nekaj dobrih idej, kaj bi bilo fino, da v Tomu imamo, tudi, če se stvari ne lotimo "po njihovo".

Jih bom v nasednjem komentarju predstavil nekaj.

Nasploh menim, da bi vmesnik za sestavljanje nalog z vsemi podnalogami bil lahko samostojen MileStone, z vrsto "podzadev" (issues)

lokarM commented 1 year ago

primeri s Pedal:

image

Koristno se mi zdi:

image

Ali pa take stvari:

(da ne uporabi določene knjižnice)

prevent_import('re', message="Using Regular Expressions would be a good idea." " But no, you may not use them here.", label="imported_re", title="No Regular Expressions")

(standardna napaka, da je v funkciji print namesto return )

prevent_printing_functions() ensure_functions_return()

ITD