Size: 4916
Comment:
|
Size: 4910
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
== What goes wrong in the SAGE notebook interface for secondary school (need of a "Lycee interface") == | == What goes wrong in the SAGE notebook interface for secondary school usage == |
Line 5: | Line 5: |
* the algebra under polynoms must be cached. QQbar, Number fields must stay in backend; * the namespace is huge (a general problem of SAGE) (the namespace of the notebook can be changed in sage/all_notebook.py) |
* the algebra under polynoms must be hided. QQbar, Number fields must stay in backend; * the namespace is huge (a general problem of SAGE) * the help on elementary functions is not well adapted |
Line 8: | Line 9: |
Supplementary questions: * do a french translation of commmands ? * is there some interactive geometry ? |
Supplementary: * do a french translation of commmands (?) * write some help files |
Line 15: | Line 17: |
* second degree polynom [1e S] |
|
Line 17: | Line 21: |
* second degree polynom [1e S] | |
Line 28: | Line 31: |
* demo file for polynoms at https://139.124.6.88:8001/home/pub/0 | * demo file for polynoms at https://139.124.6.88:8001/home/pub/0 (in french) or at https://139.124.6.88:8001/home/pub/2/ (in english) |
Line 30: | Line 33: |
In the current version, what is available at initialization : | What will be available at initialization : |
What goes wrong in the SAGE notebook interface for secondary school usage
Some of (nice) sage features are not well adapted at an elementary level. In particular:
- the oriented object syntax must be avoided: a student who see for the first time functions and derivation won't be able to understand f.derive(). The interface must be intuitive from the mathematic *standard* syntax point of vue;
- the algebra under polynoms must be hided. QQbar, Number fields must stay in backend;
- the namespace is huge (a general problem of SAGE)
- the help on elementary functions is not well adapted
Supplementary:
- do a french translation of commmands (?)
- write some help files
program of secondary school in France
In bracket are the corresponding levels.
- second degree polynom [1e S]
- sequences in particular recursive ones [1e S]
- sequences and approximations : pi, e, sqrt(2), ... [1e S]
- continuity and derivation [Tale S]
- functions study and graphics [Ta1e S]
- integration[Tale S]
- elementary graph theory [Tale ES]
Lycee interface
The sage lycee interface will be based on sage-4.2 (latest version on the 31rd of October). There is a running notebook server at : https://139.124.6.88:8001 and the corresponding applied patch is at: http://iml.univ-mrs.fr/~delecroi/lycee-vd.patch
For a quick overview:
demo file for polynoms at https://139.124.6.88:8001/home/pub/0 (in french) or at https://139.124.6.88:8001/home/pub/2/ (in english)
What will be available at initialization :
Variables and numbers
- t,x,y,z : are variables (in fact element of polynomial ring over QQ)
- var : use it to create new variables. var('t1,t2,t3') will create three variables in the global namespace.
- i, I : the well known complex number
- e, pi : well known real numbers
Rings and fields:
- ZZ, QQ, RR, CC : the integers, rationals, reals and complex (there are also more complicated Zmod, Zp, Qp, RDF, CDF, ...)
- real_part, imag_part : real and imaginary part of a complex
Functions:
- cos, sin, tan, arcos, ... : trigo
- cosh, sinh, arctanh, ... : hyperbolic trigo
- sqrt : the square root function
- log, exp : logarithm in any base and exponential
Dealing with polynoms:
- roots : compute the roots of a polynom (just a messy "def roots(p): return p.roots")
- derivative, integerate : compute the derivative and primitive
- factor : performs a factorization
Geometry:
- plot : plot functions or anyobject
- point, points, point2d : plot points
- line2d : lines
- text : some text (could have some latex expression between two '$')
- show : show a graphic object
Arithmetic:
- is_prime, gcd, lcm : standard arithmetic functions
- factor
- % : the modulo operator (rest of the euclidean division)
- Zmod(n) : the ring of integers modulo n
TODO
There is still a lot of problems:
- clearing the namespace causes some crashes (there are some general memory initialization). I make research to do it properly. For now, I use a "do it, if it works it's good" method.
- sqrt(n) (log(n), exp(n), ...) returns a symbolic expression which does not evaluate correctly as boolean expression.
- help topics in the rest documentation
latex rendering in plot is not easy to have : sage: text("
", (0,0)). Is there a better way ?latex "bug" for rational fractions : http://groups.google.com/group/sage-devel/browse_thread/thread/9d58693356e11947 and the corresponding (minor) trac ticket http://trac.sagemath.org/sage_trac/ticket/7363
Calendar TODO (mi2010)
- contacter des enseignants pour la conception de l'interface lycée.
- contacter des enseignants pour la conception d'ateliers pratiques tests
- régler le problème des machines pour les ateliers pratiques
- prévoir le spam général (depuis les listes du rectorat) pour les alentours du 10 Décembre
Programme (provisoire) (mi2010)
10h Présentation du logiciel Sage (qui ? ) D'où est parti le projet ? Qu'est-ce qu'un logiciel libre ? Son modèle de développement.
10h30 Premiers pas avec Sage avec "l'interface lycée" les feuilles de travail langage de programmation (~python) utilisation client serveur le partage des feuilles et un exemple de feuille de travail
11H30 Exposé de recherche en s'appuyant sur Sage (Arnoux sur le fractal de Rauzy ?)
14h Ateliers pratiques (propositions de TP à différents niveaux (terminale S et prépa) proposer l'installation des TPs modèles ouvrir un appel à demande de TP pour les profs de lycées (Anne C.) Des gens prêt à réaliser des TP
16h Table ronde: quelle place pour Sage dans l'éducation ? chercheurs + développeurs + enseignants secondaires
17h30 Fin (apéro)