Archive

Archive for November, 2007

Link Soup Redux

November 12th, 2007
  • Michael Stonebraker (grandfather of PostgreSQL) on database management for big science.
  • Ben Laurie writes about Caja (“Capability Javascript”), a restricted subset of Javascript that supports safe execution.  Interesting…
  • Jon Udell is messing with PowerShell again. I really wish I had time to get into this, and still think a Javascript-based open source workalike would be very popular, very quickly.
  • Someone faked a paper purporting to refute anthropogenic climate change just to show how quickly sceptics would start citing it.  As the author says, “Its purpose was to expose the credulity and scientific illiteracy of many of the people who call themselves climate sceptics. While dismissive of the work of the great majority of climate scientists, they will believe almost anything if it lends support to their position. Their approach to climate science is the opposite of scepticism.” Almost as much fun as the Sokal paper from 1996… ;-)

Uncategorized

Why It’s Worthwhile

November 10th, 2007

I was pretty depressed by the lack of CS department demos at DC15, so David Crow’s reminder of how strong a community has formed around ‘Camp stuff in just two years was timely (and welcome).  No sign of CS demos for DC16, either, but almost 40 people from outside the department have stepped forward with project ideas for my capstone course next term.

DemoCamp

We’re Number Ten!

November 10th, 2007

Beautiful Code made the Amazon Editors’ Top 10 Computers & Internet Books list for 2007.

Beautiful Code

File Under “Still Not Getting It”

November 8th, 2007
Comments Off

String theorist and self-described futurist Michio Kaku has a two-page ad for his upcoming BBC TV series Visions of the Future (masquerading as an article) in the Nov 3 issue of New Scientist. It’s pretty depressing: the title is, “Are you ready to play god?”, and he spends a few paragraphs gushing about ubiquitous machine intelligence, growing new organs for people in the lab, and how nanotechnology could let us build elevators into orbit. Nowhere does he mention the millions of people who die every year in developing countries from starvation, war, and preventable diseases.  Human rights?  Bah—science is about more toys for the haves.  It’s about putting a handful of well-fed representatives of the industrialized world on Mars to do things that robots can do at a twentieth of the cost, not about stopping HIV/AIDS from destroying entire cultures in sub-Saharan Africa, or figuring out what the people of Dhaka are supposed to do when sea levels rise.

What makes it ironic (as well as depressing) is that Kaku regularly gripes about how uninterested most people are in science.  Maybe they’re just uninterested in his kind of science.  Ending segregation in the American South was a more passionate issue than going to the Moon, and rightly so; if scientists Kaku understood that figuring out how to raise a billion people out of abject poverty, and then doing it, would be a greater adventure than bending light to make things invisible, maybe more people would choose to become scientists.

Uncategorized

Exaggerating the Truth

November 8th, 2007
Comments Off

If this post was more nuanced—paid more attention to shades of gray—it would be more truthful and more interesting.  It’s still both, though, and occasionally funny as well:

This entire problem space comes down to a single error in the metamathematical approach to computing, which is that the 1930s  metamathematicians were fascinated by the fact that they could represent  any data structure as a function. While this is true, to describe it as  perverse is an insult to perverts.

Uncategorized

Measurement

November 6th, 2007

One of the differences between professionals and amateurs is that professionals measure things, and use the data they collect to improve their performance.  Whether it’s the cost of making a widget, teaching evaluations, or how far your tape measure reaches, knowing where you are and how things are changing is a sign that you take what you’re doing seriously.

So, here are the latest stats from the Software Carpentry site:Software Carpentry Stats

I had expected a drop-off after September, but was pleasantly surprised to see the numbers actually increase (due in part to traffic from students in Europe whose instructors are using the notes in courses).

And this morning, Grig Gheorghiu pointed me at AlertSite‘s tools, which include a gadget to show you where the time actually goes when you’re loading a web page.  Here, for example, is a picture of what happens when you load http://www.third-bit.com:
Home Page Loading Time

There’s a ton of information in here — it’s particularly nice to actually see the concurrency.  No idea why it takes longer to load the OLM logo than it does to load the map of past 49X students (yes, it’s repeatable), but at least now I know that I have something to figure out.

Uncategorized

Placing a Student in a Developing Country

November 6th, 2007

An exceptionally talented student of mine would like to spend next summer doing something techy in a developing country. He knows Linux and networking better than I ever will, works very hard, is perpetually cheerful (at least around me: maybe it’s sort of a dipole effect), and would be an asset to any team lucky enough to get him. We’ve had a few general pointers (“Why doesn’t he do something with OLPC?”), but if you have something more specific — a name and an email address, for example — please get in touch.

Uncategorized

Software Engineering Degrees

November 6th, 2007

Via one of the few mailing lists I still subscribe to, a partial list of Bachelor’s degrees in Software Engineering:

Know of any others?

Teaching

Projects Projects Projects

November 4th, 2007
Comments Off

I’m starting to pull together project ideas for my students for next term.  If you have something with some intellectual challenge in it, and want a couple of grad/undergrad students give you 120 hours each next term to make it happen, please let me know.  (If you were all in one place, I’d just put up a whiteboard, but you’re not.)  You’ll have to be  willing to put together 4-6 Ignite-style PowerPoint slides (15 seconds per slide on an automatic timer) to pitch it to the class, since I’m going to let students pick their own projects.  You’ll also have to be willing to invest a few hours at the start of term to get them up to speed, and 1-2 hours per week after that to play customer.  Commercial projects are welcome, but students must be able to show their code to the general public.

Teaching

Link Soup

November 4th, 2007
Comments Off

No time, no time… Here are some links from the past few weeks that caught my eye:

The SourceForge Research Data Archive
A warehouse of information gleaned from SourceForge for use in empirical software engineering research. There’s going to be a full-day workshop at SIGCSE’08 (Portland, March 2008) on building a similar repository for use in CS education research—perhaps the two efforts could be combined?
Structure 101 from Headway Software
Draws pictures of the architecture of complex applications (like this one of Spring 2.5). Java and Ada only, unfortunately—I’d really (really) like to have something like this for Python and Ruby.
The new and improved Languify
Nicolaas Handojo and Jeff Okawa built the first version as a CSC49X project a couple of years ago; John Green & co. have rebuilt it, and are looking for beta users. Its purpose is to manage localization for open source projects: groups can post text that needs translation, and volunteers can oblige them. Give it a whirl…
Quaere
It calls itself “a domain-specific language for queries in Java”, but it relies a lot on embedded strings for control:

String[] words = {"cherry", "apple", "blueberry"};
List sortedWords = asList(
from("w").in(words).orderByDescending("w.length()").select("w")
);

Experience with embedded SQL and the like shows that this is very hard to debug. I’m increasingly convinced that extensible debuggers are a prerequisite for DSLs to go mainstream.

Titus Brown’s Intermediate and Advanced Software Carpentry notes
Along with Brandon King, Chris Lasher, and Rick Wagner, Titus has been one of the major contributors to Software Carpentry since it went on the web. He taught a more advanced course along the same lines last year, and has been generous enough to put his notes up for public use. I need to fold a lot of this stuff (particularly the material on packages) into the main notes.
Webometrics’ World University Rankings
Its creators are up-front about the fact that they’re only measuring visibility of web publications (both formal and informal). Since that’s what under-30s care about most, though, it’s an important metric. Toronto is the top Canadian school, in the #28 spot; the only non-US school ahead of it is Cambridge. (And if you object to their results, feel free to create and apply a different method and publish your findings as well.)
WikipediaVision
Someone in Saskatoon just updated the Wikipedia entry on “Hogwarts Houses”. Someone in Edinburgh then updated the entry on “Mr. Blobby”, and someone near San Diego revised the entry on Elie Wiesel. The next two changes were from Malaysia, central Spain, and the middle of Finland (where someone edited the entry on “Niger”). I wonder if there’s any way to set this as my screensaver?
Google Code Tutorials
So far, there are entries on AJAX Programming and Distributed Systems.
Tony Redpath’s Entrepreneurship 101 course at the MaRS Centre in Toronto has a Facebook group
Cool. The course is highly recommended.

Uncategorized