Archive

Archive for April, 2007

Wrapping Up 49X for the Term

April 29th, 2007
Comments Off

Another term, another great bunch of 49X projects:

  • David Wright and Richard Zhao made a lot of progress rewriting a brain scan visualizer for the Rotman Research Institute. The project was co-supervised by Imran Somji, an ex-49er himself.
  • Muhammad Ali and Adam Foster built a very nice dashboard display for DrProject. It hasn’t been integrated into the main code yet, but that ought to happen in May.
  • Melissa Luu, Lisa Ly, and Apple Viriyakattiyaporn improved the user interface for a family tree visualizer for the REED. Their customers plan to deploy it this summer.
  • Rick Valenzano and Debbie Winter explored the relationships between game theory and evolution.
  • Lillian Angel, Jane Shen, and Martin Williams made a lot of improvements to the Online Marking Tool;Martin is going to continue working on it full-time this summer.
  • David Chen and Winson Chung fixed a lot of bugs in the CPython version of Mark Guzdial‘s multimedia Python library, while Mikhail Temkine cleaned up some in VPython.
  • Maria Khomenko and Andrey Petrov implemented new kinds of file locking in SQLite.

It was a very productive term; my only regret is that I was too busy to get t-shirts printed or arrange the usual end-of-term dinner. Maybe now that marks are in…

Best wishes, and best of luck, to everyone who took part — I look forward to hearing all about your future adventures.

Uncategorized

Integrating IM into DrProject

April 29th, 2007

We’d like to try to integrate instant messaging into a software project management portal like DrProject, so that users who prefer IM to email will find DrP more appealing (i.e., use it of their own free will), and (more importantly) so that their conversations won’t evaporate, but instead will stick around and be searchable. Here are a few random thoughts:

  1. Students have made it clear that they’ll only use it if they can use their current favorite IM clients—no downloads, no switching to Trillian, no in-browser chat.
  2. Students have also made it clear that they’re worried about privacy. IM conversations tend to wander a lot, and they don’t want Big Brother listening in to their griping about the course and prof.

These are the two big ones: if we can’t solve both of them, students will pay lip service to in-portal IM, then go back to doing what they do now (swap IM handles at the start of term, do all their talking off the record, then argue three months later about who actually said/promised/invented what).

Here are some other thoughts:

  1. In-portal IM will be a lot more powerful if participants can use wiki syntax in their messages to hyperlink painlessly to tickets, wiki pages, etc. Assuming traffic is routed through a server built into DrProject, this shouldn’t be too hard (parse as the message passes through, insert appropriate linkage) — except that it means everyone except the original author will get the hyperlink, while she will not. Hm…
  2. How do you search IM logs? A two-student, one-term project can be treated like one long document, but what about something larger (10 students at a time for two years with heavy traffic)? Has anyone looked into pagination or segmentation for searching long-lived narratives?
  3. How do you link into IM logs? If I want to refer to a portion of an IM conversation from a wiki page or ticket, what’s the link syntax? Again assuming all traffic is routed through a server built into DrProject, I could enumerate the messages, and invent some link syntax for individual messages or message ranges… Is there a better way?
  4. IM meetings tend to be unproductive and frustrating because of time lag problems—I think we’re done topic A, so I move on to item B, not knowing that Jane is still adding a comment on A, which now appears interleaved with the start of B. The way I handle this in conference calls is to do a roll call (basically, ask everyone if they’re ready to move on). The IM equivalent would be support for some kind of voting, which would be useful for more than just keeping the meeting moving. I think it could be layered on top (have a bot at the server parsing the message text looking for roll calls and votes); the problem is that many people multi-task while they’re in online meetings, so there’d likely be long lags waiting for people to respond. Would social pressure fix this over time?

DrProject, Research

Google TechTalk on OLPC

April 27th, 2007

Via Simon Willison, a video of Ivan Krstic talking about OLPC at Google.  Good overview…

Uncategorized

Empirical Study of Test-Driven Development

April 27th, 2007
Comments Off

If you have five minutes to take part in a study of test-driven development, your input would be very welcome.

Uncategorized

Joel Spolsky on Recruiting

April 25th, 2007
Comments Off

Joel Spolsky has a guest editorial in Inc. magazine titled “Recruiting the Top 1 Percent“. It won’t be new to regular readers of his blog, but it’s a good summary of his views…

Uncategorized

Code Review Tools

April 25th, 2007

We’re two weeks away from starting another round of revisions on the Online Marking Tool (OLM), so I’ve started catching up with other code review tools. So far, I’ve looked at:

and I’d welcome pointers to others that people have actually used. The most interesting find by far has been Best Kept Secrets of Peer Code Review, a free (if you’re in the US; cheap elsewhere) book from SmartBear that includes an excellent summary of empirical data on the effectiveness of code reviews, explains what’s wrong with the heavyweight approach pioneered by Michael Fagan at IBM in the 1970s, and then presents results from a large study done at Cisco showing that lightweight peer reviews of code are just as effective, but much less costly. Yes, they’re trying to convince you to buy their software, but the data really is on their side. The question now is, where and how do we integrate this into undergrad teaching?

Research, Teaching

Tenure, Fertility, and Misinformation

April 24th, 2007

Interesting post at Marginal Revolution (a site I hadn’t seen before, and about which I know nothing) reporting on a study reporting that the gender gap among tenured professors can be entirely explained by fertility decisions.  What makes the Marginal Revolution post really interesting is the comments, which claim that the Survey of Doctorate Recipients data the study is based on is inaccurate, because doctoral candidates routinely lie when filling in the survey.  And around and around we go…

Equity

Periodic Table of Visualization Methods

April 24th, 2007
Comments Off

This is just plain cool: a systematic classification of visualization methods with pop-up examples. Kudos to Ralph Lengler and Martin Eppler…

Uncategorized

Guidance on Undergraduate Software Projects

April 23rd, 2007
Comments Off

As announced previously, U of T is bringing in two new software engineering courses starting in 2007-08.  Team projects will play a large part in both, so I’m looking for student-friendly guides to project management.  I know of three books and one online resource that focus specifically on this topic:

  1. Dawson: The Essence of Computing Projects — A Student’s Guide (Prentice-Hall, 1999, 013021972X).  Focuses on research projects, rather than development, but does have some material on project planning.
  2. Fincher, Petre, and Clark (eds): Computer Science Project Work (Springer, 2001, 185233357X).  Surveys the types of projects students can do, rather than providing how-to advice.
  3. Ludi: Student Survival Guide to Managing Group Projects 2.5 (http://www.csc.calpoly.edu/~sludi/SEmanual/TableOfContents.html, viewed April 23, 2007). This one focuses mostly on group dynamics, dealing with couch potatoes, and so on.
  4. Ricketts: Managing Your Software Project: A Student’s Guide (Springer, 1998, 3540760466).  More on development than Dawson, but still very traditional in its outlook (e.g., favors planning over agility); includes some useful discussion of group dynamics.

I’m sure there must be more out there, but Google and Amazon aren’t turning anything up.  I’d welcome pointers or suggestions — it’s tempting just to crib from “grownup” books, but I know from experience that undergrad projects are different from their industrial counterparts, and I’d like 301 and 302 to run as smoothly as possible the first time out.

Teaching

Friday Humor

April 20th, 2007

One of my new-month’s resolutions was to consolidate my posts (fewer, with more content), but I just can’t resist this XKCD comic:

Uncategorized