Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

dev-etudiant [15/02/2005 21:51] (Version actuelle)
Ligne 1: Ligne 1:
 +===== Fil conducteur =====
 +
 +Il est fréquent que des projets de dévelopement confiés aux étudiants en
 +informatique à l'​Université consistent à réinventer la roue et s'​avérerent
 +relativement inutiles.
 +
 +Un sujet de projet ayant pour but la réalisation ou l'​amélioration d'un
 +projet libre est tout aussi pédagogique qu'un projet visant à refaire un
 +petit jeu de plateau, un manipulateur d'​image,​ ou encore un bot irc en perl
 +
 +
 +Un tel projet permettrait aux étudiants :
 +
 +  * de découvrir un nouveau logiciel (probablement)
 +  * de s'​instruire sur différentes notions (e.g. Logiciel / Licences libres)
 +  * de créer un front-end utile, agréable d'​utilisation (si possible ;), et
 +       ​surtout d'​apprendre à utiliser les librairies graphiques (e.g. Qt, Gtk)
 +  * de voir comment fonctionne une équipe de développeurs et quels outils ils
 +       ​peuvent être amenés à utiliser (outils de développement,​ de communication,​
 +       de versionning,​ de déboguage, de gestion des bugs, de soumission de patchs,
 +       ​etc.) ​
 +  * dans certains cas, apprendre à chercher ce qui existe déjà, trouver la
 +       ​meilleure base, et s'en servir ​
 +  * sans doute même de comprendre le code source (même si ce n'est que
 +       ​partiellement) du logiciel sur lequel le projet est basé, corriger ou
 +       ​rapporter un bug
 +
 +Pour les enseignants,​ les difficultés sont la correction de sujets différents
 +et la préparation des sujets. Trouvons quelques idées de sujets pour les projets
 +"​classiques"​ (10 heures en binôme) et pour les projets tutorés (50 heures en
 +binôme ou trinôme).
 +
 +Le but n'est pas d'​imposer ce type de projets. Il s'agit simplement d'​avoir de
 +telles propositions en plus de celles par défaut afin de permettre à ceux qui
 +le désirent de se lancer dans cette aventure enrichissante. ​
 +
 +===== Quelques propositions =====
 +
 +  * Digikam : 
 +    http://​cvs.sourceforge.net/​cgi-bin/​viewcvs.cgi/​digikam/​digikam3/​TODO?​rev=HEAD&​content-type=text/​vnd.viewcvs-markup
 +    http://​cvs.sourceforge.net/​cgi-bin/​viewcvs.cgi/​digikam/​digikamplugins/​TODO?​rev=HEAD&​content-type=text/​vnd.viewcvs-markup
 +  * KDE : http://​www.kde.org/​jobs/​ et http://​www.kde.org/​mailinglists/ ​  
 +  * moteur de jeu (beaucoup de jeux ne sont pas présents en libre) ​
 +  * édition de schémas (spécifications graphiques, diagrammes, plans) ​                           ​
 +  * IA d'un jeu (cf. infra, éventuellement) ​                       ​
 +  * demander à des scientifiques de l'ULP un truc simple informatiquement, ​                      
 +    dont ils auraient besoin, adapté à ça                          ​
 +  * interfaces pour des commandes (très utile pour filer Linux à du grand                        ​
 +    public, ensuite...) ​             ​
 +  * driver d'un matériel documenté ​   * client ou serveur d'un protocole documenté ​                    
 +  * outils type Decrypthon ​          
 +  * génération de code à partir de spécifications
 +  * http://​orchestria.u-strasbg.fr/​~blindaue/​projets/ ​               ​
 +  * http://​gna.org/​projects/​savane ​    
 +  * une interface logique entre Python et /​dev/​dsp ​                
 +    qui permettrait d'​envoyer directement une onde calculée ​         ​
 +    à cette interface (il se peut que ça existe chez ecasound ​       ​
 +    mais c'est à mon avis trop confus) ​
 +  * réaliser qqs exemples de \"​physical modeling\" ​                  
 +    en Python (il en existe des exemples en Lisp)                    ​
 +  * réécrire un autre LaTeX en Python (il existe le projet ​        
 +    ConTeX qui est écrit en Perl, mais incroyablement ​               ​
 +    mal documenté, en outre Perl ...)  ​
 +