I can't log in
 
LSI
Accions del document

Compiling and blowing balloons!

Life is a constant change, the stars follow their way, the Cosmos is expanding and curricula change as well. A 180º turn is what Programming I, a mandatory first year course in FIB, has done. Exams in front of a computer with a computerized judge who will tell you its verdict at the very same moment that you finish your program is one of the novelties Professors Jordi Petit and Salvador Roura from the LSI Department have incorporated. Let's see what they have learned.


LogoDelicious  Digg!
 
Reprogramming Programming I
Blowing up balloons!
NoiprogramantToday we attended as relaxed onlookers the first partial exam of   Programming I. The students started their classes fifteen days ago and they are going to  take a test to see if they are on the right track.


We talk with Jordi Petit:
This is the first of how many exams?
This term we started a new period and in this period we consider continuous evaluation to be vital. We believe that knowing how the students are assimilating new knowledge is good for both, students and teachers. That's why we propose to do six partial exams, one every two weeks, and three final ones.

Are these exams like the ones done in other previous terms?
No, this is also a novelty. We think that if we want young people to learn how to program we should evaluate them programming. Therefore, in an exam situation, students enter  the computing rooms, sit in front of a computer and they are challenged to solve real programming problems.

The most interesting part of this setting is the one called Jutge, ("Judge" in Catalan) a computer program that allows the student to know if he or she is doing well while they are still taking the exam. This way, the student has the chance to go on thinking and looking for new strategies in order to get to develop the right program.

In this course, the first about programming that an undergraduate at FIB takes we are not evaluating our students' theoretical knowledge so much as their skills to get to create programs that solve easy problems using basic techniques and with the feedback of the Jutge.

Who is this Jutge?
JordiPetitJutge is software programmed by Salvador Roura and myself. The idea came from the programming contest organized by UPC. If we were able to work with two hundred people following a Jutge methodology it didn't seem impossible to do it with five-hundred first-year students. So we gave it a try and here we are.

We are very pleased with this initiative because we can see that little by little other disciplines are applying similar strategies. Obviously, this will not be the right model for everything either in the mathematical world or in computing; however we think it is interesting to introduce practical and modern knowledge to the next generations.
 
What other changes has the course undergone?
Docència As I was saying, from now on we will evaluate the course on a continuous way; on another hand, the exams are done on the computers and knowing the verdict from the Jutge. Besides that, the professors have created a two hundred fifty problems collection, arranged by difficulty, which students can work with at any time and any place because they have the Jutge's support. Working this way, students become more autonomous and they can get better prepared.

On the other hand, the timetable has been re-scheduled. Now students spend the same amount of hours learning theory as they spend practising in the computing labs, three hours a week.

Finally, we have generated a computing structure with which professors can know which students have tried to solve all the problems, which problems have generated more confusion ...etc. This is key data in order to structure your lessons or evaluate a student.
Is all this new for this term?
No. The continuous evaluation is a novelty for the 2008, but the exam methodology, the problem collection or the Jutge were introduced three terms ago.

During this period have you seen any change on the students?
Although it may be a bit too early to observe radical changes, we believe that this new way of working can help them to establish their programming basic skills better. We are willing to fill our classes with curious and motivated students who will get far in programming.

Some professors who teach the second part of this subject have mentioned that students seem to feel more comfortable in the lab and that helps them on pedagogical aspects.

Jordi has a very optimistic attitude towards the UPC students, but he has a reason. For the last years Jordi himself and Professor Salvador Roura have been travelling around the world  as trainers of  young programmers

Salvador, could you talk about the Programming Contest Jordi mentioned before?
Tomàs Lloret came to FIB some years ago, in 2002. Tomàs had taken part at the Physics and Mathematics Olympiad and he was willing to participate in a similar programming contest between universities organized by the Association for Computing Machinery (ACM).

That was an exciting proposal. That year we trained   for the contest just a couple of weeks and we ranked fifteenth for the South-West of Europe. That encouraged us to organise a UPC contest and to devoted more time to it. UPC got to four semi-finals in a row.

How does the UPC Contest work? 
FinalRoura Everything starts at this time of the year, around February, when students have finished their exams and they have some time off. Those who are keen on participating in the contest must do some previous homework that will be handed in at the beginning of September. Around two hundred candidates register every year. The last phase of the contest requires the candidates to be physically present and it is then when the best nine are chosen. The nine qualified contestants, organised in three groups of three, compete for the South-West of Europe in the ACM contest, which typically takes places on one of the last weekends of November. If they qualify, they go to the world contest that is held around April. Last year we went to Tokyo and it was a real good fun experience.

What are these coloured balloons popping around the computer room?
Concurs (Laugh) Yes, the Programming Contests are a real experience and the balloons are a tradition. Usually between six and ten problems are proposed at each round. Each one is associated with a a balloon of a different colour. When a candidate solves a problem related to a balloon, he blows it up and attaches it on the computer. The room looks like a Carnival, and the brighter competitors are surrounded by colours.

How would you define the type of people who enrol in these activities?
They are very special youngsters. Some of them have an incredible potential.  Many are studying two degrees at the same time, and in spite of that they complain about getting bored.

Tomàs Lloret, for example, who was first to ask us to participate in the contest, is currently working in Google, California. Other examples of ex-candidates are Edgar González who is currently doing his PhD at LSI or Omer Giménez who is now a professor at LSI.

How do you work and what do you get from this non-profit-making task?
The best reward is to be able to offer challenges to the bright students and to take part in their adventures. On the other hand, for me it represents a personal challenge. In order to be his programming trainer I have to be fit, too!.

It is very interesting to play a healthy competition and to encourage them to do amazing things.

Could we say that Programming I follows the methodology of this Contest?
No. We could say that they use similar technology. Thanks to Jutge the students can practice wherever and whenever they want and they can have immediate feedback on their work.

On top of that, the exam is also done using the same server; although the mark does not take in consideration the ranking of the students finishing first. If a student answers all the questions properly, he or she will get the top mark, no matter how much this person took out of the total time allowed. However, the more attempts to solve the problem one tries the more penalty he gets penalized. We do this in order to avoid people programming without thinking.

Noiglobus Talking with Jordi and Salvador I feel in the mood for programming and blowing balloons.  It looks as it were as easy as to play with balloons, even though I am very aware that this balloon game demands quite an effort and it is not as easy as it seems.

Spending sometime with some ex-contestants like Edgar González and Omer Giménez we realize that participating in the contest is an enriching experience in many levels: personal, labour and for your cv. They admit to have enjoyed working with healthy competition and to have become more aware of well done work and efficiency.

Therefore, we encourage all UPC students to participate at the sixth edition of the Programming Contest and we remind students and professors alike that they can also participate in other contests open to everybody: www.topcoder.com




Press Contact:
ilapuente@lsi.upc.edu
 
Darrera modificació: Març 2008
© UPC. Technical University of Catalonia
Departament de Llenguatges i Sistemes Informàtics
About this web.