archives

LtU turns 7: The year of spam

Seven years ago today LtU was born. I find it incredible that we have been doing this for so long, that some of the earliest members are still here, and that some of the same topics are still going strong! While the range of topics and general style of LtU remained fairly constant over the years, each year brought with it its own flavour. The main reason for this was that LtU was always open to new members, and each contributing editor influenced the discussion according to his interests.

So how can one summarize year seven?

I think that for Anton and me year seven will be remembered as the year of spam. We have been fighting spam daily, and I fear that we will have to put in place more draconian measures on new users shortly. Some of you probably saw a couple of spam messages that managed to get past us. But let me assure you: this is a tiny fraction. There are hundreds of new users that signed up only to post spam, with at least two or three new spammers signing up daily. Since we try to accommodate new members, I am not deleting users that fail to comply with our request for real names or identifying personal information - and so detecting potential spammers before they begin posting spam is difficult and time consuming. One reason why I posted fewer programming language related posts was that I was simply too busy fighting spam...

This is a good opportunity to thank Anton again for all he does to keep LtU up and running ( his insightful and amusing posts I take for granted, you see). Without his help in putting in place the technical infrastructure required for all the spam monitoring and control we would have drowned in spam long ago. This is one reason (aside from the fact that I was very busy with other things) that year seven is (still) not the Year of the Wiki. We put up a wiki, but decided that the integration of the wiki into LtU would require too much time, time both us couldn't spend this year.

Spam came to LtU for the simple reason that LtU became too well known a site... In fact the second thing that happened to LtU this year is that the number of active members grew considerably. This is, of course, very gratifying. I still remember the early days, when LtU had three members, and we didn't know if between the three of us we can keep finding enough interesting material to keep the site alive.

As one might expect this meant that some topics that were discussed here many times came up for discussion again. It is good to revisit these issues from time to time, but I fear that the rising volume of messages, and the number of new users, some of whom with less decorum than others, kept many old timers from engaging in these discussions, leading to some long threads that were not up to the usual quality of LtU discussions. Since no one was there to object, some may have gotten the impression that these threads (replete with ad hominem attacks, insults and language advocacy) are acceptable on LtU. I am partly to blame for not stepping in, but I just didn't have the time to follow all these discussions. So let me take this opportunity to remind everyone that discussions of this type are not welcome by the LtU community, and suggest more recent members consult the LtU policy as well as the LtU spirit pages. We discussed various forms of moderation and control in the past, and I still think the conclusion we reached - that is that the community should "police" itself - is the right one. If you find the content or style objectionable, post about it (in a separate thread, if needed).

I noticed that several of the LtU contributing editors began to post less and less. While I think the items on the home page are
interesting and exciting, there are fewer new home page items each week than I'd like. One reason for this is that many prefer to post things on their own blogs, and a fair amount of LtU candidate material gets posted to places like programming.reddit.com. While there are LtU members who prefer to keep the site restricted as much as possible to the discussion of published academic papers, my opinion is that if a regular member considers some project, site or presentation to be of interest to the LtU community, he should post about it here. This is even truer when it comes to contributing editors, of course. Contributing editors - don't hesitate, contribute! I remind everyone that we have some departments that are begging for stories, top among them the new departments devoted to Scala and Ruby.

It seems to me that LtU is in a state of transition. We can fight to remain the LtU we all know and love - but this requires effort. Or we can hope for the best, and see LtU turn into comp.lang.misc. To make sure we don't jump the shark, the community has to step up. Both in terms of steering the conversation, and keeping threads from getting long and disorganized, and by posting new and interesting stuff!

This is a good opportunity to ask long time members to mentor new members, not just direct them to the getting started page :-) . I implore old timers that are sitting back to engage in the conversation, and let us know what they are up to. We miss you guys!
And most of all, I pray for spammers to just crawl back to where they came from.

The last wish, I know, is unlikely to happen. The others I think are within our reach!

Happy birthday everyone!

Testing first year programming students

Saeed Dehnadi and Richard Bornat describe a test for programming aptitude:

Learning to program is notoriously difficult. A substantial minority of students fails in every introductory programming course in every UK university. Despite heroic academic effort, the proportion has increased rather than decreased over the years. Despite a great deal of research into teaching methods and student responses, we have no idea of the cause.

It has long been suspected that some people have a natural aptitude for programming, but until now there has been no psychological test which could detect it. Programming ability is not known to be correlated with age, with sex, or with educational attainment; nor has it been found to be correlated with any of the aptitudes measured in conventional intelligence or problem-solving-ability tests.

We have found a test for programming aptitude, of which we give details. We can predict success or failure even before students have had any contact with any programming language with very high accuracy, and by testing with the same instrument after a few weeks of exposure, with extreme accuracy. We present experimental evidence to support our claim. We point out that programming teaching is useless for those who are bound to fail and pointless for those who are certain to succeed.

Based on their experience, there are essentially three groups in an introductory programming class, those who want to learn more faster, those who manage to pass and those who still have no idea what programming is all about once the course is completed. It seems it is not the teachers fault either,or as they put it:

The cause isn't to be found in inappropriate teaching materials or methods either. Essentially, the computer science community has tried everything (see section 2) and nothing works. Graphics, artificial intelligence, logic programming languages, OOP, C, C++, PROLOG, Miranda: you name it, we've tried it. We've tried conventional teaching, lab-based learning by discovery and remedial classes. We've tried enthusiasm and cold-eyed logical clarity. Nothing makes a difference. Even the UK's attempt in the 1980s to teach the whole UK population to program on the BBC Micro ran into the sand.

Food for thought.