Walking through Arrivals at YYZ

Through the baggage claim doors, passing a security guard in a swivel chair typing on her phone, a crowd waits on the other side of the glass and railing:

“Welcome home Dad!”;

“Mr. Peter Yanovik”;

“Congratulations Denise”;

A large red banner filled with gold Chinese script is held up by a smiling family, the elderly patriarch standing off to their left dressed in ceremonial military garb, his many medals sway with his head as he looks for the person who must surely be behind me.

Posted in Idea Factory | Leave a comment

A bird in the hand and two in the field

I’ve written before about the prevalence of Snow Buntings in our area.  It turns out I didn’t know the half of it.  My wife recently connected with a neighbour who bands them.  Each morning during the winter, whatever the weather, he goes out to a road a few over from ours, and parks his trunk between two corn fields.  The wind moves through the clearing opened up at this spot, and with it, carries Snow Buntings, great flocks of them.  “Would you like to bring your daughters, and help me band some birds?” he asked.  Indeed, we all would.

So a week and a half ago, on one of the coldest winter days I can remember, we bundled up and drove over to meet him.  On the drive over my eldest asked how he caught the birds in order to band them.  “I think they use nets,” I said.  When we pulled up alongside his truck, we could see a series of ground cages instead.  “I use confusion traps,” he explained, stepping out of the idling truck and into the cold.  The wire traps sit on the ground, and seed lures these ground feeders inside.  Reaching into the traps with giant hands, he very carefully pulled out a bird, a female, and explains to us that one has to use great care when holding a bird, since they don’t have a diaphragm, and you can can kill them if you squeeze.  “By the shoulders, you put your fingers around the shoulders like this.”

Banding Snow Bunting

Now, as he talks to the girls, and without looking at us anymore, he starts to pop the birds into small cloth bags–”did you know that men can sew, too?”  We follow him back to the truck with his first group of birds for the morning.  In the truck he opens a black 3-ring binder, and starts to record measurements.  He weighs each bird, measures fat, takes a feather sample, and a half-dozen other things, all with such rapidity you can see that he doesn’t even have to think to make his hands move any more.  “Since January I’ve banded 5,500 Snow Buntings at this location.  Last season I got 15,000.  That’s the most anyone has banded at one site anywhere in the world.”

The girls take turns using special pliers to attach bands around the legs of the birds, and then alternate getting to hold and finally release them back into the blizzard outside.  They sit in your hand for a while, and it’s an amazing moment to be so close to a bird, but more, to a bird that is otherwise completely unapproachable.

There were many things he told us as we worked, but the one that has stayed with me above the others is what he had to say about his status as an amateur.  “The only science where amateurs can still make a contribution are astronomy and ornithology.  All those comets, they don’t get found by research labs, but by people willing to spend a lot of time looking into the sky.  It’s the same with birds.  No one wants to do what I do and spend this much time in the field.  But it’s important work.  If you’re willing to do it, you can.”

In this case the work is about trying to understand why there are so few male birds coming through this area.  On the day when we were there, only one male was caught among many, many females.  “I can tell you the last 3 digits of this bird’s band number without even looking, I’ve caught him so many times this season.”  The data he’s collecting is being shared with other amateur banders and researchers around the world.  “Once, a bird I banded here was found by another guy in Greenland.”

Watching him toil in very unpleasant conditions, and knowing that he does it every day, that he’s devoted a piece of himself to it, and listening to how his community is scattered around the world, an odd bunch willing to do what no one else will, motivated beyond gaining credits in the right journals, that from this plot of farm land in the middle of nowhere he is looking into a global issue, that he has tremendous pride in his work, and takes great care to see that it gets done well, I understood him.  The amatore is driven by nothing other than love.

Posted in Home School, Nature, family | Leave a comment

Processing.js 0.6 Released

We’ve just released Processing.js 0.6, and with it a bunch of bug fixes and more WebGL-based 3D support.  You can download it here, and read the full blog-post here.  We had hoped to get a rewrite of the color implementation in this time, which will bring with it some nice performance gains, but that is going to slip to 0.7.  If you’re using Processing.js, please file bugs and show us what you’re building.

Posted in CDOT, Mozilla, Mozilla Education, Seneca, Teaching Open Source | 1 Comment

Processing.js 0.5 Released

I’m happy to announce that Processing.js version 0.5 is now available for download.  This release fixes many bugs and adds new features, including the first support for WebGL based 3D functionality (PMatrix3D, box, camera, etc.).  Please note that you’ll need a WebGL enabled browser (e.g., Firefox nightly as discussed here) to use these 3D features.  See the changelog for full details.

Our focus continues to be on keeping the release cycles short (0.4 was released on Feb 3) as we close in on 1.0, which we anticipate releasing in early May.  As a result, now is a very good time to test your code and file bugs when you find things are wrong, slow, etc.  We work in the #processing.js irc channel.

We’re seeing more and more people doing interesting things with Processing.js, from putting it on the iPhone, to using it to teach Game Development to university students, to creating real-time interactive visualizations on the web.  It’s great to see, and we look forward to unlocking much more functionality and speed in the coming releases.

Posted in CDOT, Mozilla, Mozilla Education, Seneca, Teaching Open Source | 1 Comment

HOWTO: turn a student into a software developer

Yesterday I was frustrated.  I’m teaching my open source Mozilla courses, and I happened to look at our blog planet.  Right now we’ve got more than 30 students working on various open source projects, and to look at their blogs, you’d think they were all on holidays.  I view blogging as a barometer for development activity.  “I don’t have anything to write about” is synonymous with “I am not doing anything worth writing about.”  I went around the room and asked my students why they hadn’t done the coding I’d assigned (I asked them to modify something simple in Firefox).  The answers were weak.

I’ve been teaching long enough to know that students often do the minimum required to get a grade.  And while that might be a reasonable way to get grades, it’s not going to turn them into software developers.  Software is hard.  I was commenting to Chris yesterday that a computer is basically just a box built on a system of reason you don’t understand yet.  Programming is mostly about overcoming your own limitations.  It’s creative, problem solving work, and it is something you have to spend a lot of time to get the hang of before you’re any good.

Some of my colleagues talk about students either getting it or not getting it.  I’m not sure I believe this.  I think the right way to think about this is that there are students who push themselves, and those who don’t.  I know some developers who seem to just be built for the task of thinking through these problems.  I also know that they’ve worked really hard to get to this place, and that it’s easy to confuse their ability now for something innate vs. something acquired.  Sure, you have to have certain qualities in order to get there; but the one we don’t talk about enough, which I think is the most important, is that you have to be willing to put in the time and push yourself.

While I was getting after my students, I pulled up a favourite essay of mine, Peter Norvig’s Teach Yourself Programming in Ten Years.  He’s writing about a phenomenon I don’t see as much today–the “Learn X in 21 Days!” books.  What I wanted to show my students, though, is how well what he’s saying maps onto open source development.  Here are some examples:

  • Get interested in programming, and do some because it is fun. Make sure that it keeps being enough fun so that you will be willing to put in ten years.
  • Talk to other programmers; read other programs. This is more important than any book or training course.
  • Program. The best kind of learning is learning by doing. To put it more technically, “the maximal level of performance for individuals in a given domain is not attained automatically as a function of extended experience, but the level of performance can be increased even by highly experienced individuals as a result of deliberate efforts to improve.” (p. 366) and “the most effective learning requires a well-defined task with an appropriate difficulty level for the particular individual, informative feedback, and opportunities for repetition and corrections of errors.” (p. 20-21) The book Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life is an interesting reference for this viewpoint.
  • If you want, put in four years at a college (or more at a graduate school). This will give you access to some jobs that require credentials, and it will give you a deeper understanding of the field, but if you don’t enjoy school, you can (with some dedication) get similar experience on the job. In any case, book learning alone won’t be enough. “Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter” says Eric Raymond, author of The New Hacker’s Dictionary. One of the best programmers I ever hired had only a High School degree; he’s produced a lot of great software, has his own news group, and made enough in stock options to buy his own nightclub.
  • Work on projects with other programmers. Be the best programmer on some projects; be the worst on some others. When you’re the best, you get to test your abilities to lead a project, and to inspire others with your vision. When you’re the worst, you learn what the masters do, and you learn what they don’t like to do (because they make you do it for them).
  • Work on projects after other programmers. Be involved in understanding a program written by someone else. See what it takes to understand and fix it when the original programmers are not around. Think about how to design your programs to make it easier for those who will maintain it after you.
  • Learn at least a half dozen programming languages. Include one language that supports class abstractions (like Java or C++), one that supports functional abstraction (like Lisp or ML), one that supports syntactic abstraction (like Lisp), one that supports declarative specifications (like Prolog or C++ templates), one that supports coroutines (like Icon or Scheme), and one that supports parallelism (like Sisal).

Notice how your grades aren’t really what matters here?  Some of the best programmers I know never went past high school, and some of them went to Harvard.  It turns out that there is something other than grades that makes you good at this stuff.  I honestly believe that involvement in open source for students is one of the most critical things to doing what he describes.  How do you do some of this stuff without open source?  How do you work on projects with other programmers if you can’t get hired somewhere (no experience? no job)?  How do you get to work with programmers who are better than you if you don’t know any?  How do you get to work on large code bases after someone else has written them if you can’t access them?  How do you learn half-a-dozen languages without a need for them all?  How do you learn how to read code without code to read?  Open source might not be the only way to do what he describes, but it is the most readily available way for large numbers of students.

The last thing that happened in my day before I went home was that another student (not in my class) came to see me to ask about how to fix his Firefox debug build.  He came to me a while ago looking for a bug he could do in Mozilla.  “I want to learn, what do you suggest I work on?”  I gave him a non-trivial C++ bug in Mozilla’s XPCOM system that is causing some strange crashes.  Since then he’s taught himself a lot, started to ask some useful questions, and gotten underway on his 10 years to becoming a software developer.

What is necessary to get students to do this kind of work?  They have to want it.  They have to push themselves.  There’s not much you can do to make them do it, since no course lasts 10 years.  It’s not that there are those who are good at this and those who aren’t.  There are those you push themselves and those who don’t make the time.  Want to get good at this stuff?  What are you doing about it?

Posted in CDOT, Mozilla Education, Seneca, Teaching Open Source | 7 Comments

Family Day

It’s Family Day in Ontario.  What’s it like?  In the past hour, I’ve been asked the following questions by my daughters:

  1. What’s strudel?
  2. What’s reason?
  3. Can you play me some Blues?  I don’t know why, but I like the Blues.

Don’t think for a minute you can be a dad and not have prepared for a lifetime in advance.  The mix, as they say, is eclectic.  Also, you can do worse than spending a day discussing reason and eating strudel while the sultry sounds of a slide guitar fill the background.  Happy Family Day.

Posted in family | Leave a comment

On the need for an ethical online existence

I thought that the NYT’s “multimedia” accompaniment to their article about the death of Georgian Luger, Nodar Kumaritashvili, was in bad taste.  The Huffington Post proves you can always go lower if you stretch:

The dead slider’s father said he hasn’t seen the video of the fatal crash, adding, “I don’t want to see it on TV. I don’t want to see how he crashed.” (Scroll down to watch.)

Scroll down to watch.  Down is the only direction you can go if you follow their lead.

It’s too bad Vancouver’s poet laureate declined to participate in the games.  It’s exactly at moments like this that we are most aware of our need for something other than the media so speak to us.

I don’t want to see how he crashed.  I share in your pain.

UPDATE: Greg J. Smith has a good post on this as well.

Posted in Come on!, Idea Factory | Leave a comment

Don’t use the R-word unless you mean it

Today Google announced that despite (or because of) the glacial pace of broadband rates in North America, it’s going to show Ma Bell how it’s done and do gigabit fibre to homes for what it calls a competitive rate.

Imagine sitting in a rural health clinic, streaming three-dimensional medical imaging over the web and discussing a unique condition with a specialist in New York. Or downloading a high-definition, full-length feature film in less than five minutes. Or collaborating with classmates around the world while watching live 3-D video of a university lecture. Universal, ultra high-speed Internet access will make all this and more possible. We’ve urged the FCC to look at new and creative ways to get there in its National Broadband Plan – and today we’re announcing an experiment of our own.

We’re planning to build and test ultra high-speed broadband networks in a small number of trial locations across the United States. We’ll deliver Internet speeds more than 100 times faster than what most Americans have access to today with 1 gigabit per second, fiber-to-the-home connections. We plan to offer service at a competitive price to at least 50,000 and potentially up to 500,000 people.

Sounds great.  Now let me read you that first sentence again:

Imagine sitting in a rural health clinic, streaming three-dimensional medical imaging over the web and discussing a unique condition with a specialist in New York.

That’s right, imagine you’re in some rural backwater.  OK, I’m done imagining.  I’m there now, and I’m not alone.  There’s lots of people who don’t live on the Google MV campus.  So don’t get me all excited with the word “rural” if you don’t really, really mean it.  Don’t pretend that you care about anything other than half-a-dozen major cities if you don’t.  That’s what my government and our national telcos are for, where major new infrastructure means giving more to those that already have everything, and “national” upgrades have nothing to do with the geography of a nation.

But if you really meant to start that sentence with the word “rural” in it, if that was on purpose, then, man, this is really going to be something.

Posted in Digital Swag | 5 Comments

Things then and now, part II

Yesterday I wrote about a short newspaper article from March 31, 1949.  While I was looking at it, I also took a moment to read the surrounding articles.  The article itself was actually reprinted as part of the “From Our Early Files” section, and one of a dozen short pieces from 10, 20, 35, 50, and 70 years ago.  The context here is useful for what I’m about to say: small town newspaper from March 31, 1959, with articles quoted back as far as 1884.

A few months ago, David Eaves wrote that the best way to understand Twitter was to think of it like a newspaper vs. email.  I know exactly what he means, and have been interested to see how often I’ve been referred to his post via blogs, twitter, irc, etc. when people are looking for a shorthand way to say, “see, this is what it is.”  However, some people I know who are (or have been) deeply invested in the contemporary newspaper, have commented to me that this metaphor doesn’t work.  I think part of the issue here is that the contemporary newspaper is so unlike the newspaper of the past.  In particular, it has disconnected itself from the local.  It has become what is worth printing instead of what is news, where the arbiter of worth is the national or international news desk.  I would also argue that it is this move from covering here to there, that has killed the newspaper: when there becomes what we all discuss, there’s no reason to get that from someone here.

I think Twitter is like the newspaper as it was before they were all bought-up by the same handful of media corporations.  What follows is anecdotal evidence to prove my point–where the anecdote is necessarily at the heart of the what is important to the community.  Allow me to read you some of what was newsworthy from 1959 to 1884:

1949:

  • Rev. W. E. Aldworth of St. Marys has accepted a call to become the minster of St Pauls United Church.
  • R. A. (Dick) Norman, by a recent appointment of the Tillsonburg Shoe Company, has been named office manager of the plant.

1939:

  • Arrangements are being made to arrange transportation for the boys and girls of Tillsonburg and district to London on Wednesday June 7 to see the royal procession on the occasion of the visit of the King and Queen
  • Alexander Halbert has been appointed chief of police for Tillsonburg at a special meeting of the council on Friday

1924:

  • E. J. Pinch has purchased a vacant lot on Pine Street.
  • S.E. Barret has sold his house and lot on Bidwell Street to Wilbur Prouse

1909:

  • H.G. Coomber has sold the Delmar Sunday school a beautiful Gerhard Heintzman piano which he has placed in their schoolroom this week.
  • Theo Young is have a veranda erected at the front and south side of his house on King Street, which will improve its appearance very much.

1884:

  • Tillsonburg Agricultural Implement Manufacturing Co. has commenced work for the season and their shops present a busy scene.  They have begun the season’s work with about 30 hands.  John McIntyre is manger.

I love this.  Can you imagine anyone caring about a new piano being purchased, a veranda being built, someone buying a vacant lot, the name of a new manager or chief of police?  It’s not worth the paper its printed on, irrelevant, and only of interest to a small community of people.  And that’s exactly the point.  Who cares that people got a new job, are going to an event, are redoing their basement, etc?  Well, when its happening within your community, its interesting to read.  I could turn any of the above into something you’d write on Twitter (first person vs. third) and the subject matter wouldn’t cause anyone reading Twitter to think it out of place with all the other things being discussed on Twitter right now.  It’s not that Twitter has created a new narcissistic space for people to write about trivial aspects of their lives, which no one else will find interesting or useful; it’s that Twitter has tapped into the spirit of the local news, long ago killed by the need for here to be focused on there.  We’re only able to be a community when we can share what’s important to us.

Posted in Digital Swag, Idea Factory | 3 Comments

Things then and now

I wrote a letter to my grandmother a little while ago.  I was partly reminded of the need for such writing by Luke, but also I had wanted to connect some of my current work with my past.  Yesterday my grandmother was here visiting, and she took me aside just before she left.  “I have something for you.”

I’ve written before (go read that, I’ll wait) about my grandmother, about my grandfather, and about my connection to a man I never met.  He’s been an unseen presence in my life since I was little, a living spirit that infuses my sense of where I came from, what drives me, why I do what I do.  My recent work to bring audio data onto the web is partly a nod to a man who also tinkered with sound.

“I had your mother photocopy this, and I want you to have it,” she told me, and pulled a yellowed newspaper article from her purse.  In it was told the story of my grandfather making a TV out of radio parts:

What is believed to be the first television receiving set in this district has been constructed by Alex (Scotty) Cassells, 5 Townline, and has been in operation about three weeks.  The set will pick up two Cleveland, Ohio stations and one station from Buffalo, N.Y., and the builder states that the receoption is exceptoinoally clear on the Cleveland stations  The set was built at a cost of $160, with many parts taken from old radios and some of the parts homemade.  The reception is entirely dependent on the weather and it will not operate in damp or rainy weather.  It took three months of Mr. Cassell’s spare time to build the set.  At present time the aerial is a simple dipole, about 20 feet in length, but the builder hopes to get great reception when he installes a stacked array of aerials, and extends the height to approximately 40 feet.  There are 27 tubes in the set. — Tillsonburg News March 31, 1949

So that’s about $1,500 in today’s money, or roughly the amount it costs to get a decent laptop, three months of spare time in his basement, and a bunch of recycled and homemade parts?  Sounds really familiar.  Lots of things change in 60 years.  But not everything.

Posted in Experiments with audio, Idea Factory, family | 3 Comments