Monday, June 06, 2011

Coding Day Dublin

Can you do anything useful in a day? This is the premise of code day where computer programmers are invited to work with scientists for a day to try solve a real problem the scientists are trying to deal with. "For those unfamiliar with a code retreat, it’s a hack day with a focus, the angle placed solidly on solving interesting technical problems." Hacking here means writing short programs that do something cool.

On the 28th of May I spent a day in the Science gallery trying to create fixes for various small problems. There were about two dozen people there with about a third of the scientists. Declan, Andrea and Qamir who organise loads of these programmers meet ups around Dublin ran the event and helped make it a really friendly atmosphere.

The small projects that seemed to work best involved visualisation. The problem of taking data and presenting it in an interesting way seems just right for a few hours timeframe. Possibly this is because rather than a complex scientific issue all that has to be understood is what sort of information needs to be conveyed.

It is quite difficult to get up to speed on a problem in such a short period of time. I had a really interesting talk with Scrazzl but even understanding their system took so long I felt like I was wasting their time. This meant we spent a lot of time just understanding the basic background of someones research. Treemetrics were also doing some really interesting Operations research work on forest management. It was really interesting to hear what people were working on but perhaps a day that was focused on one theme might allow the coders to read up and get some understanding in advance. Not that I think all such coder days should have a single theme just that it might be interesting to try one that did.

One of the most interesting projects at the day was fight malaria at home. This is a distributed computer project like SETI at home or folding at home. The aim is to test drug molecules against proteins present in malaria to check for potential binds. This could than guide researchers as to what drugs are worth testing in real life. The guys from the project were really friendly and interesting. If you do have knowledge of BOINC or even just want to learn it it would be a great project to help out on.

Instead of just criticising are very fun and worthwhile day I will give an example of the sort of focused task I am talking about.

Something that is big, widespread and multidisciplinary. I am reading The Fever by Shah at the moment which made me think Malaria was one such problem. Off the top of my head diarrhea diseases, political expenses, maths education and are all areas that people from many areas could come together and do some interesting projects/demonstrations over a day on. But malaria is one of those big thorny problems that a hackday about could be really cool. I have a Google Document of possible ideas here

2 comments:

Anonymous said...

Hi, thanks for the interesting post.

Did you notice any correlation between the languages/tools the groups were using, and the amount of progress made? Were any science-specific tools (Matlab, R, etc.) in action? If not - do you think they might have been useful here?

Howell

red dave said...

I did not see enough of the projects to really judge what ones worked. I had some fun making nightingale graphs using R package* but then we realised you could do this in python which he already knew.

A common issue seemed to be dealing with file formats. Converting pdf to html for example. This is the sort of task you are most likely to do with someone elses program (like calibre) and some scripting glue to automate the process.

I am not sure a python for science or a ruby for science day would work better than a more general one.

I also now think that a malaria hack day would not be a great idea but that an argument for a full post.




*http://www.oga-lab.net/RGM2/func.php?rd_id=HistData:Nightingale