Archive

Archive for January, 2009

2008 Smiley Award

January 21st, 2009
Comments Off

On September 19, 1982, CMU’s Scott E. Fahlman posted a message on the department’s online bulletin-board system proposing that we use :-) as a symbol for “I’m just kidding” and :-( as a symbol for “This is serious”. In celebration of this pivotal event in the history of human communication , the Department of Computer Science of Carnegie Mellon University established an annual Smiley Award for innovation in technology-assisted person-to-person communication. This year’s winners are Jennifer Gooch and Turadg Aleahmad for “One Cold Hand? A Site for the Collection and Reunion of Pittsburgh’s Dropped Gloves”.

Uncategorized

Intellectual Infidelity

January 21st, 2009

I’m a long-time reader of New Scientist (I even wrote a few articles for them back in the 1980s and early 1990s), but having browed BBC’s new Knowledge Magazine, I’m seriously tempted to stray…  But it makes me wonder yet again: where are the Carl Sagans and David Suzukis of computing?  Lots of people write about what’s going on in our industry, but there don’t seem to be any rock-star popularizers for the science.  (Go ahead, make me an offer…)

Uncategorized

Text Is Still King

January 21st, 2009

Text is still king—or at least “evil overlord”.  Over on his Fastware blog, Scott Meyers (of Effective C++ fame) has been explaining why he’s writing his next book in LaTeX: it’ll handle cross-referencing, can generate every output format he cares about (PDF, HTML, etc.), and plays nicely with version control. The last is (for me) the most important: I’m in several collaborations right now that are using Microsoft Word or OpenOffice for documents, and since version control systems can’t diff or merge concurrent edits to them, we’re having to play “pass the baton”.  I posted a plea to the Google Summer of Code mentors’ list yesterday begging people to propose projects that would teach their tools how to play nicely with version control; we’ll see what comes of it.

Uncategorized

Graduate Students

January 17th, 2009
Comments Off

Along with students doing course-sized consulting projects, I have a metric passle of graduate students who are starting to converge on thesis topics:

Meanwhile, the three students in my first cohort are supposed to be submitting their theses before the end of the month, but they’re all now several weeks behind schedule. Being a prof turns out to be a whole lot like being any other kind of manager…

Research, Teaching

When the New Shows Start

January 15th, 2009

For Canadians who are as frustrated as I am by how hard it is to find out when TV shows restart this winter:

  • Battlestar Galactica premieres tomorrow (Friday, Jan 16).
  • Chuck returns Thursday, Feb 5 (moves to 10:00 pm).
  • Stargate:Atlantis starts on March 29th.
  • Eureka will start as soon as the Sci Fi Channel announces their dates.

Space: The Imagination Station

Uncategorized

I Know It’s Just In My Head…

January 15th, 2009

…but the music for BubbleSpinner (a truly addictive little game) reminds me of some of the soundtrack for Homeworld (the best game ever, which even two lousy sequels couldn’t spoil).  I played HW for the last time three years ago today; I still miss it.

Uncategorized

Update on This Term’s Projects

January 15th, 2009
Comments Off

I blogged a couple of weeks ago about this term’s consulting projects. Here are a few more details:

  • Hanieh Bastani is working with AutoDesk to create animation software with realistic flesh and bone models.
  • Botond Ballo, David Cooper, Eran Henig, Bill Konrad, Derek Kwok, Phyllis Lee, and Kosta Zabashta are porting DrProject to Django. They’re joined by Heather Grant (University of Alberta), Zuzel Vera Pacheco (University of Havana), Dan Servos (Lakehead University), and Jason Whyne (University of Waterloo).
  • Arnold Binas and Alex Levinshtein are building a better friend finder for Chapters/Indigo, while Laurent Charlin and Maksims Volkovs are building them a better recommendation engine.
  • Aran Donohue and Veronica Quinones are working with James Leung of the University of Alberta to build an abstraction library in Python so that we can plug different version control systems into applications.
  • Fan Dong is continuing his work on the usability of scientific workflow tools.
  • Andriy Borzenko and Cameron Gorrie are using a small suite of programs to gauge the usability of different parallel programming systems.
  • Valdas Bancewicz and Anatoliy Kats are writing image-to-object matching algorithms on GPUs for MDA.
  • Eben Hailemariam is writing fluid flow simulation code on GPUs for the Civil Engineering department.
  • Bijoy Mandal and Weichen Wang are helping Prof. Matthew Roorda (Civil Engineering) visualize real-time traffic data.
  • Torsten Hahmann is doing geospatial reasoning for the ILUTE project in the Civil Engineering department.
  • Phillipa Gill and Lee Zamparo are investigating better spam filtering techniques for MessageLabs.
  • Ziad Hatahet and Vivek Lakshmanan are looking at the feasibility of moving TUCOWS mail hosting service to NFS v4.
  • Mohammad Jalali and Rory Tulk are seeing whether we can automatically generate REST APIs from ORM metadata. (This one might be renegotiated, since there’s been more prior work than I’d realized.)
  • Zachary Kincaid might be implementing a domain-specific scripting language—details to follow.
  • Matthew Ansell is building wizards for Mirarco.
  • Michalis Famelis is helping StereoLogic build tools to reverse engineer business processes.
  • Nick Shim and (probably) Olga Irzak are putting ClearCanvas‘s medical imaging software on a Microsoft Surface.
  • Andrew Trusty is preparing the first open source release of Psiphon.
  • Carolyn MacLeod is extending our survey of how scientists use computers.
  • Hooman Bahador, Nikola Kramaric, and Ainsley Lawson are helping Prof. Ian Spence (Psychology) study the effects of video games on attentional field of view.
  • Michael Reimer is trying to get the Tesseract OCR software to work as an accessibility aid.
  • Jennifer Ruttan is working with Mozilla to adapt Ubiquity as an accessibility aid.

It’s going to be a busy term, but I’m looking forward to it.

Basie, Teaching

Beautiful Architecture

January 14th, 2009

Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design is now available from O’Reilly (and also from Amazon, of course).  Diomidis and Georgios have done a great job pulling it together—congratulations!

Beautiful Code

Making Up Grading Schemes

January 14th, 2009

I’m running two courses this term, and in both, I’m asking students to make up their own grading schemes.

The first course (CSC494 for undergrads, CSC2125 for grad students) is the consulting course I’ve run for the past few years. Its aim is to teach students how to work as consultants for real clients, and a big part of that kind of work is scoping out what the client actually wants, and how much of it can be built with the time and resources available.  I found in the past that if I asked students to give me an estimate, what I got was mostly science fiction :-)   If I turn it around and ask them to tell me, “How do you want me to grade your work during the term?”, they put a lot more effort into figuring out what they’re going to deliver when.

There’s a lot of flexibility in what students can submit as a grading scheme.  In some cases, there’s a fixed endpoint and very clearly defined subgoals, so they make up a schedule that spaces those subgoals out at two or three week intervals, and we’re done.  In other cases (particularly with grad students), the work is much more exploratory, so what I get in the first instance says, “Here are the first two deliverables, worth X% of the course, and here’s the date by which I’ll be able to tell you what else I’m going to do and how I want it graded.”

In both cases, we’ll revisit the grading scheme in early March (when students are more than halfway through the project), and give them a chance to re-evaluate.  In most cases, “re-revaluate” means “scale down expectations”, but again, the real point is to figure out why the January plan and the March plan are different: what questions could the students have asked in January to create a more realistic plan, or what information did they need that they couldn’t possibly have had, and how should they have gone about getting it.

Long story short, students are responsible for putting this together, and doing so forces them to have some real conversations with their clients early in the project.  If in Week 2 a student is asking lots of specific questions, we’re probably OK; if a client hasn’t heard from him or her yet, or if the questions are still, “Um, where do I find an installer for this?” then I’ll probably bounce their grading scheme back to them with some sour comments and a low grade :-) .

My other course is “CSC301: Introduction to Software Engineering”. This term, instead of posting lecture slides online, I’m picking one of the four-person teams in the course at the start of each lecture, and having them write a wiki page about the lecture as an assignment. This is worth 5% of their course grade, and they have to do it twice during the term; once they post it, other students are encouraged to ask questions, make comments, etc., up until one week after the lecture (which is when I give the page a grade—setting a deadline encourages the team to make their page earlier rather than later).

In previous terms, I asked students to make up a grading scheme for Assignment N+1 as part of Assignment N; the idea was to teach them how to write specs (and to give them some appreciation for how hard it is to do that well). This term, I’m having teams write assignment specs instead of doing a lecture page (also for 5% of their course grade). We talk through the core ideas in class, and after that, it’s down to a bulletin board discussion thread and a wiki page. It seems to be working pretty well so far: students are asking more specific questions earlier than they ever have in any of my previous courses, and (I hope) are feeling more engaged in their education. I’ll be very interested to see what they say in the end-of-course feedback.

Teaching

Any Moodle Experts in Toronto?

January 13th, 2009
Comments Off

If so, would you let me buy you lunch in exchange for a chance to pick your brain?

Uncategorized