- Children's mental models of recursive LOGO programs
- Recursion vs. iteration: An empirical study of comprehension
- Cognitive fit: an empirical study of recursion and iteration
- Do Values Grow on Trees?: Expression Integrity in Functional Programming
Like Tetris, but more informative. From the folk at Information is Beautiful"
I've bemoaned before the lack of empirical research on programming language design. Here is one modest result, showing what you might expect, that side effects in expressions harm program comprehension. The sign of a good psychological experiment is surprise. While the result in this case is unsurprising, perhaps the observation of similar results for both inexperienced and experienced programmers is a bit more surprising.
This paper reports the results of a study on the impact of a type of side effect (SE) upon program comprehension. We applied a crossover design on different tests involving fragments of C code that include increment and decrement operators. Each test had an SE version and a side-effect-free (SEF) counterpart. The variables measured in the treatments were the number of correct answers and the time spent in answering. The results show that the side-effect operators considered significantly reduce performance in comprehension-related tasks, providing empirical justification for the belief that side effects are harmful.
Conference Reviewing Considered Harmful offers a delightful and provocative view on the strengths and weaknesses of conferences, and how they might evolve.
This paper develops a model of computer systems research to help prospective authors understand the often obscure workings of conference program committees. We present data to show that the variability between reviewers is often the dominant factor as to whether a paper is accepted. We argue that paper merit is likely to be zipf distributed, making it inherently difficult for program committees to distinguish between most papers. We use game theory to show that with noisy reviews and zipf merit, authors have an incentive to submit papers too early and too often. These factors make conference reviewing, and systems research as a whole, less efficient and less effective. We describe some recent changes in conference design to address these issues, and we suggest some further potential improvements.The paper applies the methods of the systems community to evaluate systems conferences. Three cheers for reflexive research!
I'm a PhD student in cultural evolution, with a dabbling interest in programming, Haskell, etc. I noticed that in several places (your blog, and certain video interviews) you expressed an interest in understanding how cultural innovations spread (eg. programming paradigms) and what conditions favor and inhibit innovations spreading. I wanted to recommend a book to you on this topic, Everett Rogers's 'Diffusion of Innovations'. It is a very well known book across various social sciences, and it is both readable and thought-provoking; I think you might find it interesting for a principled understanding of why (programming language) innovations have spread as they have.Thank you for the recommendation, Marius! To answer you question: I want insight into the factors that make programming languages successful. Why did Perl, PHP, and Ruby capture a larger market share among developers than Racket, ML, or Haskell? It seems clear that one factor is what economists call 'Network Effects', but I wish to develop a more nuanced answer.
Additionally, I would be interested in hearing any specific thoughts or ideas you might have on studies or questions that my field might try to answer about the spread of programming languages and paradigms; I would be interested to combine my work and non-work hobby in some sort of way.
My students's honours projects revealed a surprising relation between Mandelbrot and Julia sets, illustrated in the video. As is well known, each point on the Mandelbrot set generates a corresponding Julia set, and moving the point on Mandelbrot causes the corresponding Julia to vary in a characteristic way. Also as is well known, the Mandelbrot set contains reduced images of itself, and similarly the Julia set contains reduced images of itself. Here is what surprised me: moving a point about the reduced Mandelbrot set causes the reduced Julia set to vary, in exactly the same characteristic style as moving a point about the full Mandelbrot causes the full Julia to vary. This only becomes apparent when using a real-time interactive application such as Mandelbrot Maps. Is this fact well known? (I've spotted at least one other YouTube video illustrating the fact, so I'm not the only one to discover it.)
The video above was produced by my student, Alasdair Corbett, whose version of Mandelbrot Maps for Android phones and tablets is available from Google Play (formerly Android Market). Alasdair is using the Google Play rating system as part of the evaluation for his honours project, and I encourage you to download the app and rate it. (Not to mention that it's great fun to use.) We believe Alasdair's project is the only Android app that permits real-time interaction showing the relation between Mandelbrot and Julia.
If you don't have an Android device available, you can see the same effect using Iain Parris and Edward Mallia's web app. (But it's not as much fun without a touch screen!)
Check it out!
draft paper. Comments welcome!
Continuing a line of work by Abramsky (1994), by Bellin and Scott (1994), and by Caires and Pfenning (2010), among others, this paper presents CP, a calculus in which propositions of classical linear logic correspond to session types. Continuing a line of work by Honda (1993), by Honda, Kubo, and Vasconcelos (1998), and by Gay and Vasconcelos (2010), among others, this paper presents GV, a linear functional language with session types, and presents a translation from GV into CP. The translation formalises for the first time a connection between a standard presentation of session types and linear logic, and shows how a modification to the standard presentation yield a language free from deadlock, where deadlock freedom follows from the correspondence to linear logic
that's from today's BMJ http://bit.ly/y0f4nM To be clear: the LibDems are voting for a bill to reduce NHS care and charge for services.
Today's #NHSbill technical must-read: it provides a legal basis to reduce care + charge for services bit.ly/y0f4nM
36 LibDem MPs on twitter who can vote against the disastrous #NHSbill. Here are their names. http://bit.ly/AlTfqx pls RT
It's quite clever. They're changing the law to make very bad things possible, but not planning to use it *yet* #NHSbill http://bit.ly/wT0Jdi
i feel a bit like, if you're not going to bother to help yourselves, nobody else should be arsed. seriously: what are you thinking?
The fact that every LibDem MP doesn't have 1,000 people turning up to their surgeries, camping and pooing on their lawn, is a shame to u all
The dismantling of the NHS, in front of your faces, is going to change your world in 10, 20 years. you've done nothing. bit.ly/wT0Jdi
i just feel like the #NHSbill is a real turning point in my disillusionment at the nation, rather than our politicians.
i'm writing all your names down, and the ones who do nothing about the #NHSbill today are banned from whining in 2028.
Dan Grossman writes,
I just posted at http://wp.acm.org/sigplaneducationboard/ information on the ACM/IEEE-CS CS2013 Computer Science Curricula Report, the document that includes the Programming Languages Knowledge Area written by the SIGPLAN Education Board. From now until July 15, anyone can comment on any part of the report using an online system linked from http://cs2013.org. Active and hopefully positive participation from the SIGPLAN community would be most welcome, both constructive suggestions and comments on what is new that you like.Comments from the programming language community have been important in the past, so do take a look and leave your mark.
The British Medical Association, the Royal College of Nursing, and the Royal College of GPs publicly oppose the government's NHS reforms. A focused campaign can convince the Conservatives and Lib Dems that pressing ahead will cost them the next election. 38 Degrees aims to put up billboards in London and in key Conservative and Lib Dem constituencies. I've contributed. Now is your chance.
WOW! Over 15,000 of us have donated over £200,000 so far this week. Huge billboards will be going up in 150 locations across London on Monday morning.38 Degrees - Donate to buy NHS billboard ads
If another 5,000 of us donate by Monday, we can take the ads to high streets across the UK. Imagine the extra pressure when billboards appear in 50 of the most marginal Lib Dem and Conservative constituencies. Not to mention those of Andrew Lansley, Nick Clegg and David Cameron!
David Cameron is trying to ride it out. He knows his plans for the NHS are a disaster.  But after more than a year of phoney listening exercises, aggressive spin and backroom deals, he thinks abandoning the plan now would simply be too embarrassing.
But there’s one thing that politicians care about more than saving face: saving their jobs. At the moment, Cameron is gambling that it’s best to force through the changes - then hope that it doesn’t cost him too many votes later on. We can shift this calculation by proving to Cameron that the NHS is already an election issue, and a losing one for his party if they refuse to listen.
Elections for the Mayor of London are fast approaching. Cameron desperately wants the Conservatives to win. Together, we can buy billboards all over the city, on the very streets where Cameron bought billboards promising the NHS would be safe with him. The adverts can warn potential Conservative voters that most doctors and nurses think the changes will make our NHS worse.
Sometimes 38 Degrees members come together to pay for things which otherwise only big companies and political parties can afford. Earlier thousands of us chipped in to hire a crack legal team: their report made the front page of The Observer. This helped force Lansley to back away from plans to scrap his legal duty to provide our health service. Now we can take one big, bold message to the voters Cameron cares about most.