.astronomy so far

The first 3 days of .astronomy have been busy. So busy, I haven't had the time or energy to write about them until now! Here's a quick summary of what's happened:

I arrived at the conference a bit before 11AM on Monday, having taken the earliest flight available that day (I didn't fly in the night before, as that would've meant missing Video Games Live). When I came in, Robert Hollow was giving a talk on pulse@parkes, a fascinating program he runs to get students into astronomy by giving them real observing time on the Parkes radio telescope in Australia. He gave an engaging presentation, and made me wish I could give it a go myself.

Next up, Arfon Smith and Chris Lintott gave a talk on Galaxy Zoo, which has come a long way since I last looked at it. They described the architecture (Ruby, running on AWS), some of the project's successes, and some of the new projects they're working on, including Galaxy Zoo Mergers, a project dedicated to determining and documenting the details of galaxy mergers.

After lunch, I gave my Python 101 tutorial. Due to a screw-up on UPS's part (more about that later), the USB drives hadn't arrived; I made do with a couple of loaned drives. Fortunately, most people were running macs, and so already had Python installed.

The start of the tutorial was delayed a bit due to trouble getting the projector working. After that, however, things went fairly smoothly; I walked attendees through the basics of Python via the Python console, starting with its use as a calculator, and working up through variables, data types, functions, and (briefly), classes.

Due to the late start, there wasn't enough time, unfortunately, for the workshop part I had planned, which involved doing some basic data analysis on one of several datasets I'd put together for the purpose. The tutorial as a whole seemed reasonably well received, however: Nobody seemed bored, and nobody complained about being left behind. People didn't hesitate to speak up with questions, which helped greatly.

For the last session of the day, I listened in on the Radio Citizen Science session. Unfortunately, 90% of this went way over my head. The day wrapped up with a summary session, where people briefly discussed how the sessions went, raised suggestions, and so forth.

I missed out on most of the Tuesday morning program due to the ongoing saga with DHL. The online tracking over the weekend had looked promising, with the drives okay for a delivery on Monday. Monday morning, the tracking page said they were 'on hold'. Calling up DHL, they told me they had arrived too late for the morning delivery, but would be on the truck in the afternoon. In the afternoon, however, the tracking page said "address info required". Upon calling DHL, they claimed the address was not correctly provided, and they needed us to supply it. The conference organizers did so.

Tuesday morning, however, the package was again "on hold". This presented a major problem, since the drives were needed for the App Engine tutorial at 1:30, so the afternoon delivery simply wasn't going to cut it - if DHL delivered it at all! After some desperate phone calls, we decided to visit the depot ourselves and pick it up. One of the organisers, Carolina Odman, kindly agreed to accompany me, as she speaks Dutch and was in the mood for shouting at couriers. One €55 taxi ride later, I finally had hold of them; another €55 taxi ride back got us back to the conference venue a mere half hour before my tutorial was due to begin.

Desperate unpacking and setting up ensues. The USB drives themselves look fantastic - Memotrek have done a bang-up job. It's at this point, however, that I discover that dcfldd, the tool I had planned to use to write to multiple drives in parallel, actually writes to the listed output devices serially, one block at a time. While this creates a lovely 'chaser' affect across the 14 USB drives being flashed, it's not terribly practical in terms of speed. I was forced to reduce the number being flashed, and take them with me to the room I was giving the App Engine 101 in.

A combination of the drives that were finished, people downloading installers themselves, and others helping by flashing drives on their own machines ensued. Astonishingly, we managed to do this in parallel with the beginning of the App Engine intro, so everything worked out with a minimum of disruption. The USB drives themselved proved very popular both at the 101 and later in the conference both as swag and a handy source of getting started materials for App Engine.

For the session itself, I started with a brief introduction about App Engine, followed by a walkthrough of the workings of the wiki app, and a description of what the hackathon would entail - namely, improving the wiki to support revisions.

Several people chose to work on the wiki app; others worked on their own apps or through other tutorials. One attendee, a dedicated ruby fan, got a simple JRuby app up and running - not bad for under an hour from scratch!

The session after mine was presented by Caroline, and consisted of an overview of the BOINC architecture and how it can be used and extended for citizen science apps. Discussion about how it compares to Galaxy Zoo type projects, and how different sorts of citizen science apps work on each ensued.

Unfortunately, my attention was only half on the BOINC session and the rest of the proceedings, as I spent most of the rest of the afternoon writing a flashing app in Go that supports truly parallel writes to multiple devices. The app makes a rather good example of concurrency and message passing in Go, in fact, so I'll be writing up an article about it later.

Today (Wednesday) was designated a 'Hack day'. Everyone worked on their own projects, or teamed up to work on a group project. I'll hopefully go into detail about what we got done in a future post - possibly even with something to show off!


blog comments powered by Disqus