Teaching basic lab skillsfor research computing

What to Teach Researchers About the Web

One reason I'm reflecting on what I've learned in the last two years is a question that is back on the top of my work pile: what should we teach researchers about the web? Partly, it's a priority because I'm currently embedded in Mozilla; their mandate is to defend and extend the open web, and their educational efforts are all aimed at that, so I ought to be doing something too. The real reason, though, is that a lot of things have brought this into sharper focus recently:

So what can we teach people that meets these goals, and respects our constraints?

Visualize this: plug an interactive Javascript visualization engine into a web page, show them how to put their data somewhere accessible, and voila: interactive data exploration on the web. This would be fun, but it would fail our debuggability/reproducibility requirement.

OpenDAP is a framework for sharing the kind of grid-based data that's common in the earth sciences. Setting up a server would be out of reach, but formatting query URLs to pull data from public servers would be within reach, and we could easily run such a server on our site to provide a stable target. My concerns are (a) it's only showing learners half of the equation, and (b) it's not directly relevant to people in genomics and other fields.

Kynetx (as described in Phil Windley's book The Live Web) is a framework for handling event streams. It's very cool, but it's still very young, and I don't know any scientists who are using it.

Read dynamic, write static: download data from several sites, merge it, and produce some static HTML pages that other people can then download and merge. This is a common pattern in real life (especially when run periodically by cron), and with a little bit more work, we can show people that they only need to download things that have changed. On the downside, it's not really dynamic or interactive, and I want people to see that the web is more than just a bunch of pipes that deliver documents.