Statuette Hunting

It’s that time of the year when all the movies designed for Oscar glory are released on to not the unsuspecting masses (who often have to wait months or weeks for a wide release) but the suspecting elite.

A lot of this annual burst of energy seems to have been absorbed or deflected by anti-war films. It’s still possible these films will carry home Oscars, but I think Hollywood likes to be popular as well as right, and with the way the war seems to be going these days, rewarding anti-war films may prove to be neither.

And so we have a strange little low-budget film, The Man In The Chair, from Michael Schroeder, a man probably best known for introducing the world to a (occasionally topless) 17-year-old Angelina Jolie in the even lower budget Cyborg 2. (I have to admit I find that film watchable but that may have more to do with comparing the Jolie of then–awkward but still with a sort of presence–to the Jolie of now than any other quality of the film.)

Christopher Plummer plays lighting man “Flash Madden” who wanders around L.A. reading, drinking, smoking cuban cigars, and yelling at the screen at the Beverly, much to the amusement of juvenile delinquent Cameron Kincaid (played by Michael Angara) who spends his time in-between school and getting tossed in jail dreaming of making a movie.

This is to Christopher Plummer what last year’s Venus was for Peter O’Toole. A film that no one is going to see, but which shows the old man’s chops and gives him a shot at the little gold statue. ‘course, O’Toole missed out on his because the Academy had given him a “get this guy an Oscar before he croaks” award in the previous years.

Plummer is not the icon O’Toole was, but his age shows far less on his face. A lot of the wide-open expressions O’Toole has used his whole career look overly broad now, with age pulling his long face down even longer. Plummer (who is three years older) seems young by comparison.

And he is good, as you might imagine. As is M. Emmet Walsh, letting himself be filmed in a most unflattering way. Robert Wagner joins the crew as the still rakishly good looking and rich arch-rival. (Also with a small role is one of my favorite character actors, George Murdock.) Another remarkably well-preserved specimen in the cast is the very lovely 65-year-old Margaret Blye

Am I obsessing on age here? Well, yeah, because the movie’s about aging and what we do with the aged. Also, the cast is ten years too young. Flash was a young gaffer on Citizen Kane…but I kept thinking, “okay, he had to be born in 1920, making him 87…no way is Plummer 87.” (He’s 78.)

If I had to describe this movie in ten words or less, I’d call it “an afterschool special on steroids”. It’s very well done with a top-notch cast, tightly directed and edited (though with a gratuitous shaky-blurry-cam scene transition effect, in a style most commonly used by zombie horror flicks).

The story is kind of pat, a little clichéd, a bit run-of-the-mill. Old people teaching younger people, and aren’t we horrible for not taking better care of, and respecting our senior citizens? Flash, through his horrible life mistakes, has learned that he might be better off now, if only he hadn’t treated people so badly through the rest of his life.

Except, well, we’re never sure about Mickey Hopkins (Walsh’s character) who seems to have been abandoned by his daughter. He seems like a very nice fellow but he can’t get his daughter to talk to him for five minutes.

I actually felt a sort of blowback after seeing this film. Are we supposed to generically care about old people? And take care of them? Even when they had an entire life to cultivate friends and family and did none of that? Do we feel sorry or empathize when they reach the end of that life alone?

Well, yeah, we do. But maybe somewhat begrudgingly.

Another thing that sort of annoyed me: One of the old characters dies in this film. I won’t say who it is so as not to spoil anything but I will say I both saw it coming and hoped it wouldn’t as soon as I realized what the movie was about. OK, if you’re watching a movie about old people, it’s natural some might die, especially if the movie spans the course of a year or longer.

This movie takes place over three weeks.

And the character just…dies. Rather conveniently, too. But unnecessarily, except maybe to give the whole thing a little more gravitas (and hopeful Oscar contenders a meaty scene).

What I liked about this film was the idea that, in the retirement homes of the San Fernando Valley, you could find a top-level crew still capable of making a high quality movie. A highly romantic notion, to be sure, and one that would’ve been better served by the whole crew getting together for ANOTHER movie after shooting the first one.

Nonetheless, it’s a good film, with Oscar-worthy performances.

More On Languages, Programmers and the Hiring Thereof

This is an extension of an ongoing discussion Esther Schindler and I are having here and at CIO.com, which started as a discussion of programming language popularity, and has extended itself into a discussion of what sort of people one should hire. It’s got a lot of “in-references”, so if you’re not a pretty heavy programming geek, you’ll probably want to skip it.

Blake, you speak as though the choice is between the okay-quality experienced developer and the brilliant developer who doesn’t happen to have programmed in, say, ObjectREXX or JavaScript or what have you. But it doesn’t really work like that.

Well, yeah, it works like that when you foster an IT programming culture that favors results over dogma. Heh. It has to: You’re working in Scheme or Smalltalk or Eiffel; you’ve just ruled out the programmer who, you know, graduated in ‘97 with a Java specialization because of all the money in the tech bubble.

Usually, an employer whose job req says “ObjectREXX would be a good plus” gets plenty of resumes from programmers who do have that experience.

Think if I ran an ad today for ObjectREXX programmers I’d get plenty of resumés? There’s…uh…me…and…you? The same is true for a lot of great tools, like Squeak, Lisp, even regular REXX, and for that matter, even Delphi. But perhaps there’s a point of agreement there.

At some level, what you’re saying is: “This technology is good enough that we can afford to take a hit in the hiring department.” A lot of us made that choice with OS/2, for example, and for the 10 years we used it, it was a good risk, even though it was almost impossible to find people in our area who knew it. It was just that productive.

Recently I worked with a company that programmed their tool in Delphi 7, and they had a bear of a time finding qualified people. We had some heavy discussions about better tools, because I saw that they had developed these huge systems to work around the problems that arise with statically typed languages. I’d say it actually hurt them, because to understand their code, you had to be well-versed in relatively cutting edge Delphi (even though they had stalled at D7, they were using interfaces, modeling tools, code generators, etc.).

But had they used Smalltalk, for example, they could have hugely reduced their burden, and in some respects made their code more accessible. The deal breaker was that they were pretty heavily reliant on code that others had written. I do some Java, not because I’m a fan of the language, but because sometimes that’s where the code I don’t want to write is.

And HR departments, keyword-driven as they are, probably don’t pass along the resumes of the candidates who write, “But I can learn!” in the cover letters. So you may be happy to entertain the brilliant-but-inexperienced, and you might never encounter them.

IT really shouldn’t use HR for hiring much, if at all. They’re not competent to even filter out the first tier candidates. I’ve seen plenty of HR departments post ads where the only qualified candidates would be liars. You know, put ECMAScript and JavaScript on your resumé and see which one gets you hired.

Besides, people who can learn–in my experience, anyway–they don’t advertise it because they don’t realize how rare and precious a commodity it is. Certainly I didn’t until, at one job, I picked up a threadbare manual for a proprietary language and environment, and coded a specimen cataloging system in two weeks, while the consultants whose proprietary environment it was were still busy negotiating their six-month/six-figure contract for the same system.

I don’t say it to boast, as it was a mean feat that any reasonably competent programmer willing to learn could have done. But I couldn’t, as you say, have gotten a job doing it. But I love having random programming challenges thrown at me, and I encourage the hiring of others who feel the same. In fact, the aforementioned Delphi 7 crew I worked with had a test: They gave you two hours to write as much of a program as you could. Easily one of the more fun application tests I’ve ever done.

Plus, of course, someone might say they’re willing to learn, but they don’t actually do so. It’s another tangent entirely, but there’s few things as awful as employing someone who really wants to be good at something but is only semi-competent.

The beauty of IT is that you can often shuffle that person off to a different role. I’m always checking out the systems guys for the latent programmer. You put people in as network admins and switch them to help desk, because they’re good with people, or maybe to DBAs, or wherever.

I wouldn’t recommend any hiring be done on the basis of candidate assertions. At least not ones like “I love to learn.” or “I’m a real people person.” But a programmer can talk to another programmer and within a few minutes ascertain what they’re really capable of.

I do take your point, but I’ve seen lots of discussions among developers and consultants about their need to stay “relevant” with the choice of language (or toolset or whatever) they focus on. If there are lots of jobs asking for C#, and few asking for ObjectREXX, many developers will choose an option that makes them more marketable.

When I was doing ObjectREXX (and VisProRexx!), I was also doing C++, not because I think it shouldn’t have a stake driven through its heart, but because my best tool for small, fast code was Borland’s OS/2 IDE. And I don’t keep up the unholy trinity of PHP, Perl and Python for fun (well, okay, Python is fun). And I can’t write a line of Ruby without thinking, “Well, this is just Smalltalk for the faint-hearted.”

I get the need for relevance. But if I saw a guy whose career path went from C to C++ to Java to C#, I’d hesitate before hiring. What does he do for fun? Because I’m not interested in hiring a programmer who doesn’t program for fun.

Another Author That Doesn’t Translate Well To Screen

Ray Bradbury.

I was thinking about him in the context of The Mist review. Movies based on his works tend to be gawdawful butcheries. The best version of his major work, Farenheit 451 was done by Truffaut, and I can’t stand to watch it, it’s so ugly.

No offense to Truffaut, but for me, the pleasure in reading Bradbury is the beautiful imagery he conjures.

So I think I can express a certain amount of hopeful anticipation in the knowledge that Mr. Darabont is going to leave the Stephen King farm to direct a new version of Farenheit 451.

On Programming Language Popularity

My old pal and CIO editor Esther Schindler has written a blog entry with the deliberately inflammatory title of “Is Computer Language Popularity Important?”

Well, you gotta drive traffic somehow.

And it is a good, if hoary, question. While Esther follows up the question of which language is “best” by adding “best for what?”, it should be fairly obvious that the continuation of “Is popularity important” is “important to whom?”

Before going into that, though, let’s pick some points (hey, it’s almost a fisking):

At the developer level, language choice is completely personal. Like picking a brand of hammer or carving knife, the tool should fit well in your hand. Some people think better in Python than in PHP, and God help anyone who thinks in LISP.

The tool analogy is probably the only one available but it’s just not a very good one. If I use CodeGear’s JBuilder to program a web-based front-end in Java, the language doesn’t really parallel with the brand–the brand (Codegear JBuilder) does.

So, is the language the tool, then? No, that’s not a really good analogy either. The environment (JBuilder’s IDE, debugger, etc.) is really the tool. That’s what you’re using to put your materials together with. And therein lies a clue: The language is sort of like the materials–it’s the medium in which you build. (The platform comes in to play as well, like a foundation.)

I doubt anyone would consider the materials used in building as being “completely personal”. But since human-written code is all mulched down in to the same zeroes and ones, there is an interchangeability you get as far as the final product goes.

But even there, the analogy falls apart because code seldom dies. Code is a factory you use to produce software. For any real project, you’ll spend the vast majority of your time going back to the factory to retool the product.

There might be a political correctness to saying the decision is completely personal, but no coder believes that. There are quantifiable differences between toolsets and languages. Otherwise, “best for what?” would make no sense as a question.

Programming language adoption follows the genetic rules behind duck imprinting: the first creature a duckling sees is perceived as its parent. My first programming languages were PL/1 and FORTRAN, and despite writing production code in several others, from standards like C and REXX to obscure languages like Mary2. Yet, I can write FORTRAN code in any language.

A lot of people believe this. And I suppose it must be true for some people. They tell me they think using language, so I believe them. When I tell them I don’t think using language–I think using thoughts that I then translate into language–they often don’t believe me.

Esther and I used to hang out on Compuserve’s Computer Language Magazine Forum with such luminaries as Jeff Duntemann and David Gerrold. (Just to name two: That forum was a freaking Algonquin Round Table of programming genius. It was there I learned what little humility I have.) If memory serves, David was on the language side–but he’s also a professional writer of quality sci-fi, so you know, he’s got that goin’ for him.

When I program, I think of what I want to accomplish–the end result–and then I organize it using whatever conceptual tools I have handy (often graph paper, if I need to write stuff down), and then (and only then) do I code it.

I learned, in order: Basic, Assembler, PL/I, Pascal, C, Smalltalk, Rexx, C++, Eiffel, Java…well, and it gets blurry after this point, but I’ve used most of the common scripting languages (PHP, Perl, Python, Javascript, Ruby) as well as C#. I occasionally still reluctantly do macros in Basic, but I spent most of my seven years programming Basic hoping for something better. (PL/I was great but I sure didn’t have it on my 8086.) I’ve probably done more Pascal programming in the past 20 years than any other language but I surely don’t think in it. (At least, not until the last possible moment.) But I’ve gone through periods where I’ve done nothing but REXX or C# or whatever. (Right now I’m primarily doing Delphi-style Pascal, Squeak-flavored Smalltalk, SQL, Flash, and Javascript.)

In fact, to my mind, a good language is one you don’t think about much. Smalltalk versus, say, C++, with its subtlety and ambiguities.

Smalltalk has probably been the biggest influence on me, and I had been programming for 10+ years before I learned it. (But it’s also not just a language, so it can change the way you see the game.)

How do you decide which languages are “acceptable” in your shop? Is it because your favored development environment (such as Eclipse or .NET) builds in support for one language suite? (Thus shops choosing Visual Studio would bless C#, VB.NET, and occasionally C++, with a smattering of IronPython accepted.) Or do you look for what programming languages are “in” and thus it’s easy to hire developers affordably?

So, now we’re getting to the “whom” in the popularity question. She’s primarily talking about employers. For most programmers, they almost couldn’t care how popular their languages are. For me, I want any language I use to be popular enough that if I have a need for a particular piece of code, I don’t have to write it if I don’t want to, I can find it on the web.

(Obviously this is tongue-in-cheek, but wouldn’t that be great: Only write code when you want to or when it would make you rich.)

As for when I’m hiring, or have a say in hiring, I never look for programming languages. I look for aptitude and flexibility. In most cases, I’d rather take a great programmer and teach them a new language, then a mediocre programmer who’s familiar with a particular paradigm.

I could say a lot more than this but that’s enough for now.

About The Boy

I should mention at this point that one of my frequent companions on my trips to the movies is The Boy, a precocious 12-year-old right winger (honestly, I didn’t know they made 12-year-old right wingers) who is at an age I remember well.

The Two Towers was ruined for him by the completely unrealistic (from a military strategy standponit) battle of Helm’s Deep.

He thought Beowulf was stupid. And Shoot ‘em Up! And…well, most of the actions movies that really are stupid. I remember being that age and thinking the same thing about Star Wars and Raiders of the Lost Ark. (Seriously, it took me a decade to get over Star Wars’ stupidity and accept it on its own terms.)

He enjoyed Lars and the Real Girl and described Amazing Grace as non-stop action (rather perceptively, I must say, even if the action involves a lot of legal wrangling).

Anyway, in the future, you may see me add “The Boy says…’It was stupid’” or something, and now you know that it’s not my inner 12-year-old, but a real, live boy. (Unless I’m lying about this whole post! Oooh! Meta!)

Grendel!

I don’t really have a post here. I’ve just always thought that if they made a musical out of “Beowulf”, it would be called:

GRENDEL!

…with the exclamation point, natch.

Grendel!
He’s an evil with an appetite for blood!
An appetite like no other!
But even though he’s a monster,
He’s still good to his mother!
Grendel!