I think that computer programmers should be licensed. Most programmers I know hate the idea. Partly, I suspect, because they’ve been in the business a long time but still dread the idea of being tested on what they ought to know. So much of programming knowledge is seat-of-the-pants learn-as-you-go, we cringe that what we “know” isn’t right. The ostensible complaint is that technology evolves too fast for any standardized test to keep up. So what’s the use. To which, I also agree. But I do not think licensing should be about the technology. It should be about testing our understanding of the context within which the technology operates. Or if you will, that what we do affects the lives of our users.
or all is well
February 18, 2007
When did the need for medical care morph into a need for health insurance? Insurance is a way to spread risk around so that we all have a managable level of risk. I pay a lot more for car insurance each year assuming that one of these years I may have an accident that could wipe me out financially. But it this the proper model to think about medical care?
Why did we change the patent laws to make medicines more expensive?
Why do we prohibit the federal government from negociating cheaper prices for these more expensive drugs?
I think that public health is different from medicine. One is clean water, clean air, vaccinations, removing garbage, controlling pests. Eliminating tobacco, excess fats and salts and sugars from our dietary options. Medicine is care for an individual for a specific problem. Public health is cheap and effective. And a damn commie plot (joke). Medicine is expensive and inefficient. But our focus is on medicine. Why don’t we emphasize prevention?
Why is the discussion, such as it is, skewed this way?
talking the talk
February 11, 2007
Use cases are supposed to be written in the domain language. If I remember right, that’s so the domain denizens can read it and understand it. If the user case were written in technical language, the owners might not be able to provide feedback. I don’t remember anybody writing that use cases should be written by the domain experts, although I think we all tend to assume that. More about that some other time, hopefully.
What I have been thinking about is, when do we ever schedule time for the designers to learn the domain language? Most programmers I’ve met do not know the business and do not speak the language. Their focus has been on the computer and being able to talk to it. Why do we expect we will automatically understand the domain language?
I was working on an accounting project once and I had to continuously remind programmers that ‘cash’ in accounting speak had a very specific meaning to accountants but some programmers seemed to stubbornly insist that cash should mean the common meaning of just money and non-cash accounts was an oxymoron. And therefore one could intermingle cash and non-cash. You can’t just substitute a word in one language for an equivalent word in another language. Languages have syntax and context that you have immerse yourself in.
The movie The Music Man begins with traveling salesmen on a train. One sings ‘you gotta know the territory.’ But this Professor Harold Hill doesn’t know the territory. He sells dreams. (Later in the story he attempts to teach the kids how to play music by ‘visualizing’ the music. Which strikes me as presciently new agey, but that’s another story.) Some times I think we in the ‘high tech’ industry are like the Music Man selling dreams and thinking we don’t need to know the territory. We like to think we’re hard nosed realists and that programs are constrained because either work or they don’t work.
But I sometimes wonder if we aren’t selling the stuff that dreams are made of.