Tuesday, July 30, 2013

Professor for one year (week 16): What is excellence?

After one semester of teaching at the University of Konstanz, it's time for some retrospection.  Konstanz is one of those "excellent" German universities -- which also means they have a bit more money than non-excellent universities.  (By the way, how are these universities labeled: "ordinary", "miserable", "amateurish"?)

So far, I spent several years at the University of Zurich (UZH), at the University of Basel (I taught at both), and at the University of Applied Sciences Northwestern Switzerland (although I didn't teach there).  As researcher and lecturer, I had contact to departments concerned with study affairs and teaching in the broadest sense (e.g., teaching evaluation, examination authorities, e-learning consultants), to people concerned with facilitating research activities (e.g., publication database managers, third-party funding offices), and to the general administration (e.g., human resources, secretaries, and the "Abwart" or "Hausmeister" [caretaker] -- nowadays called "facility manager" in German).

For general issues like getting keys and a badge, German bureaucracy meets all the known prejudices perfectly.  You have to go from pillar to post just to realize that today nothing will happen, you will not even get the form you have to fill before being eligible to get a key.  The scene where Asterix and Obelix have to get permit A38 is a perfect match.  You have to find out by yourself about all the things you might need.  I was told, I even had to fill a form and get the signature of the department confirming that they would pay the costs for a -- trash bin!  I didn't even try to get a pencil, yet -- I rather bought one myself.  Whereas at Swiss institutions (not only in higher education) everything is prepared beforehand and you will get an invitation when to come where and collect your keys and your badge.  You are taken care of.  You just go and grab a new pencil.

At all Swiss institutions I worked at, offices were cleaned twice a week, restrooms were cleaned twice a day (around noon and in the evening, so when you come the next day, everything is clean).  In Konstanz, offices are cleaned twice a month, restrooms once a day (around 16:00; of course, people use them after this, so when you come the next day, everything looks messy again).

Swiss offices and lecture halls are equipped with high-value furniture from USM or Vitra, and desks and chairs are renewed regularly.  There is a design concept defining which furniture goes in which kind of working space (there are different chairs for offices, lecture halls, cafeterias, and waiting areas).  It gives a good atmosphere, you feel valued.  Someone invested in getting you a great office to create a positive and creative working ambiance.  Chairs meet ergonomic standards.  Oh, and you just order a new shelf, another chair for visitors, or a desk lamp by e-mail or online -- some days later you find it in your office.  In Konstanz, desks and chairs look very used and accidentally assembled.

I was lucky that someone wanted to get rid of an old orange desk lamp with a proper light bulb and I could use it; I don't like neon light coming from the ceiling.  And yes, this red chair is a victim of the ravages of time.

The only design furniture I am aware of are original Eames Side Chairs on stretchers in front of some professors' offices (a kind of waiting area for consulting hours). 

But this is probably due to the time the university was build: In the 1960s, the Eames furniture served -- as intended -- as mass produced chairs; you can still find the fiber chairs in older stadiums, concert halls, or universities.  Today's Eames chairs are rather expensive (at the University of Freiburg im Breisgau, several dozens of original Eames DSS had been stolen this Spring) -- but still very nice for large seating in cafeterias or concert halls.

What I do like in Konstanz are some rather "facilitating" aspects:  As lecturer you get a link to configure evaluation questionnaires for your lectures, then you receive the printed copies to use them in your class.  Only two hours after submitting the filled-in questionnaires, I got an elaborate analysis via e-mail.  That's great!  At the UZH I had to evaluate the questionnaires myself manually.  Part of getting the excellence label for Konstanz meant  investing in support for students -- for example, they have a very active writing center -- and for researchers.  They provide a regular newsletter pointing to open calls for grants and awards sorted by topics -- i.e., calls for linguists, for chemists, etc. -- and by career level.  That's very convenient!

And then there are some simple things when you realize that this excellence label means something else than the word "excellence" -- Swiss universities don't label themselves as "excellent", but they offer more convenience for scientists.  For example, let's consider getting reimbursed for expenses related with attending conferences.  As researcher you go to conferences and workshops to present and discuss recent findings and to do networking.  In some areas like computer science or computational linguistics, where publications are mainly conference proceedings, authors have to attend the conference and give a talk to get their articles published.  Depending on the location and the duration of a conference, this can get rather expensive.  Since the university has an interest in publications, they should pay for it.  At UZH and in Basel, researchers could get reimbursement up to CHF 1000 per year.  Swiss researchers can also get funding from academies.  So maybe going to two European conferences per year is possible.  If there is additional money at the general budget of the institute or as part of third-party funded projects, you can even publish more.  In Konstanz, the amount of money available is very limited -- less than 2000 € per year to be split between all junior researchers (i.e., non-professors) of one rather large department.  Oh, and don't forget the messy forms you have to fill in before and after the conference!  And of course you have to submit two copies of the form, both signed and filled manually (as always, the forms cannot be filled properly by using a PDF viewer).  If you don't have third-party money, you will have to pay everything yourself -- which is feasible with a professor's salary, but not with the usual 50% or less assistant salary.  In the end, this contributes to statements like "in engineering, regular money is less than 20% of the general budget" (see here) -- everything else researchers acquire themselves.  The time you spend writing grant proposals is time you cannot spend to do research, to publish, or to teach. 

Comparing just single elements (reimbursement of conference travels, furniture) at Swiss and German universities shows that indeed Swiss universities are much more attractive without labeling themselves as "excellent" -- of course not to do so is part of the Swiss culture, but then: what does this say about German culture and the German self-perception? But of course these conclusions are based on a very small sample.  

Thursday, July 25, 2013

Professor for one year (week 15): Exams and why to prefer computer-based ones

Finally, last week was the last week of teaching.  In the seminars and lectures, we summarized the topics of the classes and tried to understand what the things learned could be used for in the future.  And for the Perl course, there was the final exam.

With Bologna, students get credits for every course they attend.  And to give credits, lecturers have to assess students' achievements.  To make this sound not as scary as "exams", Switzerland uses "Leistungsnachweis" (evidence of academic achievement) instead of "Prüfung" (exam), however, in Germany these things are still called exams.

To assess students' achievements, one can use a variety of tasks: the more traditional ones like oral exams, seminar papers, presentations, written exams; more modern ones like multiple-choice tests as a form of easy-to-assess written exams; or sophisticated ones like e-portfolios.  To choose an appropriate form of assessment, lecturers should consider the topic of the course -- there is no sense in writing a seminar paper when students should learn how to microscope or how to program.  The exam should be a task similar to the ones students had to solve during the course.  The lecturer should assess the knowledge and the skills student had to acquire during the semester. 

So for the programming course, students learned the basics of Perl and they had to program a lot.  As computational linguist, Perl is a perfect language for preprocessing data you would like to analyze or for extracting information from analyses.  So that's what we did during the course: opening and reading files, extracting words and sentences to count and order them, cleaning HTML files, printing to files, etc.  Students had to solve assignments during the term, making up 40% of the overall grade.  They could use whatever help they could find -- and it's pretty easy to detect copy-paste solutions from Google, just ask students to explain their submitted code in front of the others.

For over 10 years now, I conduct the exams for programming courses on the computer.  This way, the exam is very much like an assignment they had to solve the weeks before.  And students can test their code before submitting -- I don't assess code that is not running.  When I studied, I had to program on paper for exams, and when I came to the University of Zurich in 2001, this was still the case for the programming courses at the Department of Informatics.  However, in real live, you will never ever program on paper, so there is no sense in having an exam like this.

For the Perl course, students found two input files in a folder on the Learning Management System (LMS) and they had to submit their solution to this folder.  Using an LMS during the exam means: There is an Internet connection.  This means: You can google a lot!  But usually this doesn't help unless you have understood the task at hand to reformulate it yourself.  And in this case, you are almost certainly able to solve it without help -- except for looking up which bracket has to go where.

The results for the assignments during the semester haven't been too bad, although students reported that they had spent a lot of time for solving -- which was intended, you have to spend around 20 hours a week to really earn those 9 ECTS points.

For all programming exams, I have a more theoretical (or knowledge) part and a more practical part.  The theoretical part is easy to answer if students get aware that I start each lesson with a short recap of the lesson before -- the questions just come from these parts.  There seems to be a strong correlation between gender and success rate in the theoretical and practical parts: Women profit from having memorized for the theoretical part, men profit from having stamina and finding creative workarounds for the practical part.  Yes, programming is a lot about failure, and you have to practice a lot to feel comfortable with a new language.  To learn programming is a lot about to learn from your own errors and to learn not to give up, but try again and find a solution for the given task -- there is always more than one solution.  I'm not sure if this really correlates with gender or rather with being more a linguist or a programmer -- preferring humanities or engineering -- but as a computational linguist, you are both, so you have to build stamina to get this code running and providing you the information you need.

For the theoretical part, I prohibited the use of the computer -- that would have been too easy -- and students had to answer some questions on paper.  And there I understood why paper-based exams are really bad.  I had prepared sheets of paper with the questions (printed in 12-point font size) and enough space to write the answers.  Students wrote in even bigger font size, so the space was big enough, indeed.  12-point font is fairly readable. However, students almost wrote with their nose!  They bent to the table creating terrible hunchbacks -- it would have been a good demonstration for physiotherapist, I almost felt back pain myself.  For the practical part, however, everybody set straight, looked at the screen and sometimes at the keyboard and the paper with the task.  A much healthier impression. 

Isn't this a strong argument to abandon handwritten exams at all?  And for the final exams towards your BA or MA degree, you have to write 4 or more hours by hand.  Not to mention the poor examiner who has to read handwritten essays produced under stress by unaccustomed writers (when was the last time you wrote more than one page by hand?) -- it looks like a mess, the writing gets poorer towards the end and every page is sprinkled with revisions and annotations pointing to extra sheets, etc.

Oh, and I would love the integration of interactive checkers into an LMS.  Students get feedback from the programming environment on syntax errors and static semantic errors, but interactive checkers would also give feedback on semantic issues, thus facilitating the learning process for students as well as the assessing process for lecturers.  Combined with automatically assessible multiple-choice, short-answer, or sentence completion tests (yes, you can assess all levels of knowledge and skills with appropriate use of those tests, too), I would be freed from grading.

Wednesday, July 17, 2013

Professor for one year (week 14): Consultation-hours

When you teach and supervise student projects, students sometimes want to discuss something.  They come to your consultation-hours.

If you don't have a walk-in policy, because you don't want to be interrupted constantly, you have a dedicated time when students can come to your office.  I offer consultation two hours a week on Tuesdays.  However, sometimes nobody will show up, sometimes five students are waiting in line.  So some consultation management is needed.

The traditional way is to use a sheet of paper.  You print a list (or draw one by hand) with consultation slots and pin it to your door.  Students have to sign up for a slot beforehand and then they can come for consultation.  However, this means you have to remember to pin a new sheet of paper each week (or you need a secretary for this task), and students have to come by twice.  Sometimes they even have to stop by your office more often in case all slots for this week have been filled already.  This is very inconvenient, especially when your office is on a floor no student comes by regularly.  I also don't think it is a good idea that everybody can see who is coming when for consultation -- sometimes students even have to write the topic they want discuss.  And I don't want to pin paper to my door -- it's ugly and there are fire authority regulations.

For some time now, I have been looking for an electronic solution.  I have only a few requirements:

  1. I want to set up all the slots at once with as least effort as possible.
  2. Students should sign up some days in advance -- I prefer to plan my days and maybe skip the consultation-hours completely if nobody will come.  So no surprises an hour before, please.
  3. I want to be notified who is coming when.
  4. No costs.
  5. Oh, and I just want to have this tool only, no fancy add-ons.  No need to create a bigger structure.
I thought about using Doodle, but this would not meet the requirement #1, and also for requirement #2 it would not work.  Of course your LMS (learning management system) or your university's CMS (content management system) would be the perfect plase for a tool like this.  However, they usually don't offer this kind of functionality. 

The University of Konstanz uses ILIAS, and you can have a personal calender -- as for most LMS.  This calender also has a "Consultation hours" functionality.  Perfect!  And you can integrate this calendar into all your courses.  Even better!

But then it doesn't meet requirement #5.  Of course, it is nice to have this calender in all the courses I use for lectures.  But some students I supervise do not attend any of my courses.  So they cannot access this calendar.  Unless I create another course with this calendar only -- no, wait, I have to ask someone to create such a course, I cannot do this myself because of the right managament.  There is no structure element in ILIAS where students could access calendars for consultation-hours of lecturers.  They have to sign up for a specific course first and then they can access this calendar and book a consultation appointment.

So in the end, I do have a sheet of paper pinned to my office door -- a description on how to sign up for consultation.  At least I don't have to remember to print a new one each week.

Sunday, July 7, 2013

Professor for one year (week 13): Teaching since 19 weeks and it goes on and on

Last week was my 19th week of teaching without a break and I have two more weeks to go.  How is that possible, as terms in Europe are 14 or 15 weeks?

In February, I started teaching at the University of Basel.  Spring term in Switzerland starts mid-February and ends in early June (week 8 to 22).  Fall term starts in September and ends the week before Christmas (week 38 to 51).  After lectures end there is a three-week period for exams (for Fall term this period starts in the first week of January).  This schedule has been in place since 2005.  Before that, we had Winter and Summer terms, starting and ending ca. 5 weeks later than today's Fall term and Spring term.

Why did Switzerland change term schedules?  Well, that's easy, the Swiss wanted to be "compliant with the European term schedules."  And rumor goes that the then Rektor of the University of Zurich (UZH) was the main figure causing this change -- he simply stated that UZH would switch to this schedule anyway, so all the other members of the CRUS (Rectors' Conference of the Swiss Universities) had to follow.

The idea was to have similar times for starting and ending terms, to make it easier for students in Europe to switch universities.  Sounds reasonable, right?  Except: The surrounding countries still stick to their original term schedules of Summer and Winter terms.  

For a lecturer like me, one effect is extreme long teaching periods.  When teaching in Basel ended, I had 7 more weeks in Konstanz.  And I already feel exhausted, but I still have two more weeks.

For students it means extremely short breaks when coming from a non-Swiss university to a Swiss university, or extremely long breaks when going from a Swiss university to a non-Swiss university  -- OK, there are far more worse things than long breaks.

For the scientific community and the role of Swiss universities as conference organizers, the impact is worse: A perfect month for conferences in Europe is September -- everybody had their summer vacation and the next term will start mid October.  However, Swiss universities start teaching mid September, making it impossible to find a reasonable large room for a whole day (or even a week!) that is not needed as lecture hall.

In general, I like the concept of Spring and Fall terms better than the Summer and Winter terms -- which is what was in place when I studied.  In June and July it can be pretty hot in Europe (and also in Switzerland), so everybody would prefer to be at the lake -- and most of the students (except when forced to attend a lecture) will simply go there.  The most annoying term, however, is the Winter term.  You have to start teaching (or learning) again after the Christmas/New Year break.  It is OK to have exams after New Year, or as lecturer it is OK to assess exams and seminar papers in January.  But motivation to teach another 4 weeks after the Christmas/New Year break is really low.

If there is a proper place to call for changing German term schedules, please let me know.

Wednesday, July 3, 2013

Professor for one year (week 12): Lessons learned

You learn from errors.  It would be great if you could just learn from errors made by someone else.  But sometimes I even make the same error again and again -- at the first sight it looks like a different situation, but in the end it's not.  However, here is a short list of lessons I hope I finally got:

Don't trust the nice guys

This is the academic equivalent of "Give him an inch and he will take a mile."  There are deadlines and guidelines.  Both are there for a purpose.  Sometimes, people ask you for an extension of a deadline.  And if you think the person will be able to meet the new deadline and deliver something of high quality, you agree -- even more, if you think it's a nice person and everything will go smoothly.  But then people start negotiating this and that and you spend a lot of time discussing and explaining that of course you expect guidelines to be carefully attended.

Don't make verbal contracts

Although in Switzerland (and maybe in Germany, too?) contracts don't necessarily have to be signed by the involved parties, it's not a good idea to only have verbal contracts.  I made this error twice.  The last time, I accepted a job without even asking about the payment.  I was lucky enough that the payment is OK.  Before this, I got an offer including a statement about payment.  I agreed, resigned my former job and started the new one.  I hadn't signed a contract for the new job.  Two weeks after my first day I got the contract -- with a much lower payment.  It turned out that even the salary stated in this contract wasn't correct.  I could negotiate a bit, but I regretted having resigned my old job.

Don't procrastinate

This is easy, you should start a task as early as possible and necessary.  Most of the time I estimate the time a job will take.  And I start just the estimated amount of time before the deadline.  Sometimes it is easy and my estimation is correct.  But most of the time it is not.  Some jobs or projects take longer and then I have to work until very late, I get tired, and I'm angry about myself.  Sometimes I get a job done a lot faster than estimated -- but then I'm angry about myself too, because I spend more time planning and thinking about the task and defining the best point to start than for the task itself.  If I would have started immediately, I could have had more time for something else.

You always underestimate the time needed for a software project

"Software project" refers to every kind of programming task, may it be small or large.  Even with a lot of experience, every project is something new and every project comes with surprises.  Clients change specifications on the fly, you start without any specification at all, nobody is available for beta-testing -- it just has to work now! --, you don't have a backup structure or even a backup strategy.  You spend hours with debugging, because you have been interrupted in the middle of programming a structure.  You work with a not-so-mature framework.  Documentation is only available for a different version of the framework than you are using.  The data you work with is bigger than expected and interactive processes have to be transferred to batch processes.

But what to learn from all this -- don't program at all?  The better lesson is probably to learn to estimate better.  Somewhere I read that for programming you estimate the time needed, then double the amount, and then take the next larger time unit -- for a task estimated to be done in one hour, this will result in two days you should allow for.

End then you have to take into account the user of the code you produce.  If it is only you, you can skip comments and keep it simple (like using default variables, anonymous datastructures, short versions of control structures, etc).  For other programmers being the users, you need to add more information and you should do error handling.  The next step would be a program someone will call from the command line.  Even more effort is needed for a web application.  And even more time you need for adding a nice GUI and converting it into an actuall application.  I think there was an article in the Communications of the ACM some months ago basically saying that each step increases the time needed by factor ten.  And of course being a computational linguist, most of the time your "clients" will be linguists or other non-technical users -- so whatever you program it has to have some kind of interface and user guidance.  Meaning that you are creating actual applications, not scripts that just output a number or a string.

Don't reschedule your plans and don't discuss programming with non-technical people

Having said that programming will allways need more time than you had estimated -- the Hofstadter's law -- you should never agree to reschedule your plans because your users think they need the things to be done just now.  The only effect this will have is more stress on you and constant arguing with your users.  People without any experience in programming usually cannot assess the complexity of a task --  How costly is sorting large data?   How long does it take to create a frequency list?  What does it need to allow users to make searchable comments during annotating corpora?  What does it mean to "have everything in a database?" -- You are the expert, you estimate the time needed and you decide if a feature should be implemented at all.  There is no sense in spending a lot of time in implementing a "probably-nice-to-have feature" just to find out that no-one will use it.  If users don't provide a specification and are not willing to create a specification together with the programmer, it's up to the programmer to create something.  With usually tight schedules in projects, there is no time for specifying something on the fly or to make substantial changes after a first version has been tested.