Comments (3)
@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?
from projekt-tomo.
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:
- ko učitelj naredi/popravi nalogo, jo lahko predlaga za repozitorij (torej, ko je naloga OK (pripravljena previlna rešitev) - YES/NO/SUGGEST (ki je hkrati tudi Yes)
- DOKLER NI REPOZITORIJEV, bi bilo fino (če je enostavno izvedljivo), da bi admin (ali poseben račuin) dobil pošto o tem, katere naloge so nastale na novo, oziroma bile spremenjene [da potem mi "poberemo" tovrstne naloge za bodoči repozitorji].
===========================================================================
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:
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)
from projekt-tomo.
primeri s Pedal:
Koristno se mi zdi:
- sestavljalec naloge na enostaven način preveri klic funcije/metode (ensure_function_call('print'))
- enostaven način preverjanja prepovedanega pristopa (pretvorba v niz) # Give message if they try to use strings instead of numbers prevent_ast("Str")
- lep način povratne informacije pri uporabi napačnega prijema
Common mistake is that students put a $ in their code
if "$" in get_program():
explain("You should not use the dollar sign ($) anywhere in your code!",
title="Do Not Use Dollar Sign"
priority='syntax', label="used_dollar_sign")
- zagotovitev, da se uporablja konstanta ... ensure_literal(9.5)
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
from projekt-tomo.
Related Issues (20)
- Težave s prijavo HOT 7
- Zvezdica za prijavo v predmet je premalo očitna HOT 2
- Šumniki HOT 2
- Javljanje napačnih rešitev ob dodajanju `Check.secret`
- Omejitev glede dolžine uporabniškega imena HOT 1
- Težave s samodejnim oblikovanjem Python kode HOT 1
- Preverjanje uradnih rešitev v obliki, kot jo vidijo študenti HOT 2
- Brisanje starih poskusov HOT 3
- Check.difflines ne deluje pravilno HOT 3
- Priprava razvojnega okolja HOT 3
- Vidnost nalog HOT 8
- Gumbi za učiteljske datoteke
- Izboljšave administrativnega vmesnika
- Enostavnejši uporabniški vmesnik za sestavljanje nalog
- Celosten pregled uporabniškega vmesnika HOT 1
- Prenovi CSS
- Infrastruktura za prevode
- Učenci ne vidijo semaforjev HOT 1
- Organizacija skupin pri predmetu
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from projekt-tomo.