This page is kept for historical purposes only. Please see the home page for my current situation. —Luca Saiu.

DLL (Développement de Logiciel Libre) - 2011

DLL is a course introducing the philosophy and practice of
free software, taught by me at Institut Galilée, Université Paris Nord. For some strange reason I don't really understand this course used to be named "DEVL"; anyway, fine-tuning and evaluation rules apart, DLL is still the same as DEVL.

The course has been completely in French since 2009, but I still maintain these pages in English. There are essentially three reasons:

Mailing list: if you're a DLL student then you should must subscribe

If you are a DLL student then you must subscribe using this simple web interface, if I didn't already subscribe you. You can send a message to all subscribers (including me, of course) by writing to the address .


We have 6 séances, each one made of 90 minutes in the classroom followed by 180 minutes in the lab; 15 minutes break every 90 minutes.

We're not very lucky this year as our timetable is quite irregular, with long gaps; but I am planning your project so that you can make some use of this.

Tue  2011-09-20  13:45..15:15  DLL CM1  Becquerel
Tue  2011-09-20  15:30..18:45  DLL TP1  G20[78]
[Practice with Scheme: finish the first TP at home]
Tue  2011-10-11  13:45..15:15  DLL CM2  Becquerel
Tue  2011-10-11  15:30..18:45  DLL TP2  G20[78]
Tue  2011-10-25  13:45..15:15  DLL CM3  Becquerel
Tue  2011-10-25  15:30..18:45  DLL TP3  G20[78]
[Long interval without DLL: homework]
Wed  2011-12-14  13:45..15:15  DLL CM4  Becquerel
Wed  2011-12-14  15:30..18:45  DLL TP4  G20[78]
[Long interval without DLL: big project]
Wed  2012-01-11  13:45..15:15  DLL CM5  Becquerel
Wed  2012-01-11  15:30..18:45  DLL TP5  G20[78]
Wed  2012-01-18  13:45..15:15  DLL CM6  Becquerel
Wed  2012-01-18  15:30..18:45  DLL TP6  G20[78]

Course Diary

This has to be tailored somewhat to the students' level of experience; anyway I assume all of them are complete beginners on Scheme. In each class session I will also show some interesting examples of widely-used free software, usually to be taken as examples from an architectural point of view.

Useful resources for the theoretical part

You can find some course slides on the DLL 2007 page, and other material on the DLL 2008 page.

Useful resources for the practical part

I've not personally read it yet, but many people have recommanded this free book conceived for command-line beginners: Introduction to the Command Line.

You are strongly encouraged to use the Guile manual. It's very well-written.

Some students asked me for a tutorial on Scheme. For people having some time to spend (in a useful way) I have recommended the SICP video lectures: it's a full course in video you can freely download, following Structure and Interpretation of Computer Programs (the whole book text is also freely available on the net, here) by the book authors Harold Abelson and Gerald J. Sussman. The course is about programming in general (with some emphasis on computer languages), and it uses Scheme as a tool. Enlightening and surprisingly deep for an introduction.

Matériel du cours en français

Plusieurs étudiants souhaitent du matériel en français. Les sujets du cours sont presque complètement couverts par ces documents.


The project has its own page now.


The rattrapage project is now published in its own page.

Final mark

If this is not your first attempt at this course, please notice that the evaluation rules have changed: this year there is a mandatory project. No written exam, no homework.

Don't even think about cheating

Speaking with other students and sharing ideas is okay. Copying nontrivial code from others is cheating. Adding your name to nontrivial code (or text) written by others is cheating. It's also illegal.
If you cheat you'll flunk the exam, in the best case.

Even simply asking for people to do part of your project is grounds for flunking, and this of course includes web forums and mailing lists. Of course you can ask general questions wherever you like but the project is for you, and you have to do it -- not anybody else.

Please don't be offended by this section if you are a honest student, as you're supposed to be. It's actually very sad that I have to write this, but experience has taught me that not all students behave like reasonable and mature people, so I need to treat some of them like elementary school children.

I always like to be friendly and informal and maybe my easygoing behavior may be misinterpreted, so I'm stating this explicitly: I will be inflexible on this. You're old enough to vote, hence you must take responsibility for your actions. If you cheat your final mark will be zero and I will notify the people in charge. And please avoid pathetic scenes after it happens: no crying, no begging. At least save me that part of the job.

I simply refuse to believe that the other teachers don't read the source code submitted by students; yet for some crazy reason some students believe that I don't, and they send me stuff copied from the Internet or from other students.
If you want to make me very angry, that's the right way. Don't insult my intelligence like that.

Back to my home page...

Luca Saiu
Last modified: 2012-05-27
Copyright © 2009, 2010, 2011, 2012 Luca Saiu
Verbatim copying and redistribution of this entire page are permitted provided this notice is preserved.