Wednesday, February 28, 2007

Hiring Resolution

I have been having so much fun reading the coding horror blog that I have decided it deserves a permanent link. Not that I always agree with what he says, or anything. But he manages to be thought provoking for sure.

He wrote a post a while back on the vast chasm between those who can program and those who cannot. That post, especially when you dig deep into some of the source material, really gets you thinking about who you should (or should not) hire. Now he has a very scary post up about how most programmers can't program that should be required reading for anyone who has to hire programmers.

"But wait!" I hear you cry. "That is just the opinion of a few jaded people, it isn't scary at all." Regrettably these observations dovetail very neatly with my real world experience. That is the scary bit.

So even though it is well after the beginning of the year, I have a new resolution. I hereby resolve to FIND OUT if people can actually program before I hire them or recommend them for hire.

Thursday, February 8, 2007

No. No. No. Do not even THINK of doing that.

Over on Coding Horror Jeff Atwood has a post up about a post that Raymond Chen had up. And I am going to comment on Jeff's post here, making this a meta meta blog, I guess.

The whole thing is talking about how dialog boxes confuse clueless users and they tend not to do the right things when they see them. OK, fine, I agree that that happens and that it is a very real problem with computer usability.

But then he (Jeff) makes this comment:

If you need to update, do so. if you need to download and apply security patches in the background, do so. If you need to send crash data, do so. Silently. And do it in the background, when the PC is idle-- without bothering the user.


I never want my computer to install anything unless I know that it is happening. I never want anything sent out of my computer unless I know that it is happening.

I run software to notify me when malicious software (and anything that does something on my computer that I am unaware of is malicious, even if Microsoft wrote it) tries to access the internet.

And I disable all automatic updates. Of course I want to have the latest security patches (and I do), but any install, no matter how innocent, can break my system and I at least want to be able to identify the culprit. If I install an IE patch and all of a sudden Firefox stops working or something, then at least I know what to blame and where to look for a fix.

That kind of automagical maintainance logic belongs in an appliance, not a general purpose computer. Only when all of the variables can be fully controlled does it make sense in my opinion. If it does exist in a general purpose computer, it should be something I can opt into, not opt out of.

The Lack of Consequences

OK, I admit it. I read Wil Wheaton's blog. Like many trekkies I absolutely hated Wesley Crusher, but I started reading Wil's poker blog when he started playing and, well, he doesn't seem like such a bad fellow.

Anyway, he has this wistful post up about the disapearance of video arcades, which I remember even better than he does being 7 years older. The whole thing makes for good reading, but he makes a point at the end that really clicked with me.
My kids' generation, with their online gaming and its associated sense of anonymity and unaccountability, aren't getting the same social workout that we all got when we were kids. When I played a two player game against another kid and I beat him, if I taunted him mercilessly and made explicit references to his mother's sex life and my role in it, he would have justifiably kicked the everliving shit out of me; so I learned that it was always a good idea to be gracious in victory and defeat. Contrast that with the foul and profane behavior exhibited in today's online gaming worlds, by players who are old enough to know better, or young enough not to care.

I have played a fair bit of MMORPGs and I have to say that while most of the people you meet online behave fairly well, there is a distinct trend for a significant fraction of the younger crowd to behave in ways that are more than two sigmas outside of the normal distribution of social behavior. Sometimes way more than two sigmas. It has made me a big fan of /ignore.

I wonder how I will overcome this with my own son? Will gaming and social interaction get more and more anonymous as he grows?

The little one.

Will is the driver.