Serious Wetware Development - Granite Grok

Serious Wetware Development

One of the first rules of serious software development is that you set up your tests first, before you write a line of code, so that you’ll be able to tell whether your program is working.

Depending on your programming language, you might even include assertions (statements of the form ‘If such-and-such isn’t true, don’t continue, so we can figure out what is going wrong before any real damage can occur’) inside the program, so you can catch when things are getting off track, before they get too far off track.

Now, brains aren’t software, in the sense that we don’t write code for them to execute.  They’re wetware, which we ‘program’ by exposing them to a series of instructional situations, from listening to The Cat in the Hat for the fiftieth time, to catching and throwing a baseball in the back yard, to working through an exercise from a book on multivariate calculus.

But the same rules apply.  That is, if we have a clear idea of what we want the end result to be, then we should be setting up the appropriate tests first. Otherwise, we can’t know whether we’re succeeding or not, or the degree to which things are getting off track.

So you create the tests first.  But that doesn’t really help unless you use the tests to verify that your program is actually working.  And you keep debugging until it passes the tests.  All of them.

Would any company that is serious about software development just say:  ‘Oh, well, this software has failed 60% of its tests, but why don’t we ship it anyway, so we can meet our schedules’?

Similarly, would any society that is serious about wetware development just say:  ‘Oh, well, 60% of our units have failed basic proficiency tests, but let’s graduate them anyway, so we can meet our schedules’?

If we were serious about education — about wetware development — we would be doing the following:

First, figuring out what we need graduates to be able to demonstrate, in a way that can be tested.

Of course, as soon as you propose something like this, the reflex response is:  Won’t that lead us into ‘teaching to the test’?  And wouldn’t that be a bad thing?

But whether teaching to the test is good or bad depends entirely on the test.  For example, imagine a test like this:

You will be given a dozen published arguments about public policy (selected randomly from a library of thousands of examples). For each one, you are to write an essay in which you identify and briefly explain the rhetorical tricks and cognitive fallacies that are being used to mislead you, and provide at least three other ways to think about the issue — one that you agree with, and two that you disagree with.

Go ahead and teach to that test.  I dare you.

Note that this particular test follows directly from the state supreme court’s justification for public funding of schools in New Hampshire:

An adequate public elementary and secondary education in New Hampshire is one which provides each educable child with an opportunity to acquire the knowledge and learning necessary to participate intelligently in the American political, economic, and social systems of a free government.

If someone can pass a test like this, then he can teach himself anything, so we don’t really have to be worried about what other things he doesn’t yet know.

If someone can’t pass a test like this, then he’s going to join the ranks of voters who are jerked around by politicians and pundits, so we shouldn’t really be too impressed by whatever else he does know.

Second, making sure that no one gets to teach who hasn’t passed the tests.

The second response we can reliably expect to hear, at least from critics of the current system, is:  ‘But where will we find teachers who would be able to write such a test, let alone grade it?’

To which I would respond with another question:  If we want to require something of graduates, but we’re not going to also require it of teachers, then there’s really no point to any of this, is there?  Let’s just admit that schools are fundamentally about day care, ask the courts to invent a constitutional right to day care, and go on from there.

Third, making sure that no one gets to graduate who hasn’t passed the tests.

Right now, we have a graduation rate in excess of 90%.  We have a basic proficiency rate of about 40%.  What this tells us is that ‘graduation’ is more of a social achievement (you’ve managed to make it 12 years without being imprisoned or committing suicide) than an academic one.

Serious software development means that you don’t ship software that doesn’t do what it’s supposed to do, period.

Serious wetware development means that you don’t graduate students who can’t do what they’re supposed to be able to do, period.

Because we’re not doing these things, we can only conclude that as serious as we might be about schooling, we’re not at all serious about education.

>