Pretty Boy rides again (unfortunately)

I was at the grocery store on Sunday with my girlfriend, Amanda, stocking up on whatever was on sale. Since I’ve got a pantry now, I’m gonna use it. As we went through the store, we passed a petite girl, around 5’4″, with sandy blonde hair.
Then her boyfriend and her (maybe their) daughter appeared. He was about six feet, with short, cropped dark hair. It was longer on top and it was teased out at the edges. It was styled more than most guys bother with, and he didn’t look all that happy to be there or all that happy to be with her. He had lots of words written all over him: Cocky. Pretty Boy. Arrogant. Jerk.

She and I made eye contact, briefly. There was an intense sense of curiosity and at least a hint of longing in her eyes, as if she was wondering if I was like her guy. If all guys are like her guy.

I didn’t think much of it until we went to the checkout line. The trio came around just after we did. She went into the checkout lane next to the one we were in. Pretty Boy got into the checkout lane behind us. After I paid, I walked down to the end to start bagging, and Amanda stayed behind in the lane, feeding the remaining groceries down the conveyer belt to me. As she fed the last couple of items down to me, Pretty Boy rammed his cart into her back. “Excuse me,” he said, very loudly and impatiently. She scurried out of his way.

I bagged the last couple of items as Amanda walked around beside me. I swung the cart around towards the exit, pushed it a few inches, then turned around to Pretty Boy. “Next time, why don’t you say ‘Excuse me,’ before you mow her down with the cart?” I asked.

“Oh, shut up,” Pretty Boy said angrily.

Ah, so I’d come upon the center of the universe and I was in the wrong for not acknowledging that. In his mind. (The rest of us don’t live in that world, fortunately.)

I looked Pretty Boy straight in the eye. “Thanks for being a [one-syllable word that begins with “p” and rhymes with “kick”],” I said.

The cashier looked our direction. Pretty Boy looked around, then looked abck at me and mouthed a three-letter word that starts with “F” that’s derogatory to homosexual males.

Noting that he wasn’t worth any more expenditure of oxygen, I turned around and walked away.

Why Pretty Boy chose to question my sexuality with my girlfriend (who holds her own in the looks department too) standing right there, I’m not sure. I asked her about that after we got in the car. The best I could think of was that maybe he didn’t know what the word means. After all, “homosexual” is a complex idea and the word is three syllables more than the longest word he uttered in our presence, and the longest sentence he uttered was all of three words, including “Oh,” which is a common filler word thrown in to sentences to buy time as your brain searches for the right words to say. So Pretty Boy didn’t exactly bowl me over with his speaking ability or intelligence.

I also noted that my one friend who does happen to be homosexual is 6’2″ and wouldn’t have had any trouble whatsoever knocking Pretty Boy down on his cocky, arrogant butt and mopping the floor with it. And he probably wouldn’t have hesitated to do it either.

That’s overreacting. Calling attention to his behavior and letting his true colors shine through for all around to see ought to be pennance enough for what he did. She said he didn’t hurt her.

But if Pretty Boy’s behavior is indicative of how he treats women, I can’t help but think that if someone does overreact next time and sprawls Pretty Boy across the floor, the world will be a better place for it.

At least for the moment before he stands back up.

I have seen the future, and it works!

Now appearing nightly, in the nightly Mozilla builds, the Open Source community is very proud to present a very special feature: Naive Bayesian spam filtering!
And you’re probably wondering why I’m excited about something as boring-sounding as that. Don’t worry. I’m no less sane than I was yesterday and I’ll prove it.

Bayes’ Rule is a method of pattern recognition. You tell it what is spam and what isn’t and over time it learns how to recognize what is and isn’t spam. I’ve written about Bayes filtering before.

Its main selling point is that when implemented properly and trained thoroughly, Bayesian filtering is very effective at identifying spam and produces nearly zero false positives.

So I excitedly downloaded and ran the Nov. 14 Mozilla nightly build. The filtering doesn’t presently filter, it only marks the messages as spam and non-spam. That’s OK, I can sort them and then zap them myself for a while. I trained it on about 1,400 non-spam messages (I only had a few dozen spams). It doesn’t identify much spam yet, but I’ve had zero false positives. It recognizes my most incessant spammer, the Smartmall Success Group (Kevin Butthead, take your Amway-meets-ecommerce scheme and stick it. I’m much more interested in joining the mafia.) and it’s starting to recognize unsolicited credit card spam.

Spam normally irritates me. Really irritates me. But now it’s a game. I look forward to spam coming in to see if Mozilla recognizes it. And it’s encouraging to watch it learn and get better. I’m going to win this battle. Within a month, I expect that time I waste deleting spam and making sure I didn’t delete anything important will be free for me to do something else with it. Like answer legitimate mail from people I’ve never heard of.

Some people argue this filtering belongs on the server, but not everyone is willing to filter spam on the server. My employer never will (because many of my employer’s departments engage in questionable e-mail practices themselves) and I’d be shocked if my ISP ever did. I can set up my own mail server, but this is a lot easier. It’s probably a lot easier for you too, even if you’re one of the half-dozen or so experienced Unix sysadmins who regularly read these pages.

If you’re like me and you have 1,000+ e-mail messages squirreled away somewhere, and you don’t mind playing with alpha-level code (which you don’t if you’re running Windows, since Microsoft is in the habit of shipping alpha code and charging you hundreds of dollars for the privelige of alpha- and beta-testing it for them), go get this thing. Start training it. And watch the spam go bye-bye.

And if you’re better than me about cleaning out your inbox, get it anyway. It’ll just take you longer to train it.

Basic design principles

Steve DeLassus asked me for some tips on design for a site he’s building. Since that’s fairly general-interest information, I figure I might as well make a post of it.
The most important thing to remember is that there are basic rules of design that you can follow and be a good designer, even if you have zero ability. Great designers know where to break the rules. (And for the record, if I were a great designer, I’d be an art director for some magazine somewhere. I’m not.)

Fonts. General rule: Serif fonts are easier to read on paper than sans-serif fonts. The opposite is usually true onscreen, which has lower resolution than paper. You can play it safe by specifying fonts like Verdana, Lucida, and Georgia, which are specially designed for screen displays.

Use Lucida or Verdana if you want to look modern. Use Georgia if you want to look traditional.

Specify Times as a secondary font for Georgia, and Helvetica and Arial as secondaries for Lucida or Verdana, but those fonts are so common that I’d avoid them for primary use. As an experiment in college, I stopped using Times and Arial on my papers and susbstituted other, less-common fonts. My grades improved. Being a little bit distinctive can help. I suspect Georgia and Verdana may one day become as common online as Times and Arial, but that day isn’t here yet.

Colors. Use a high-contrast scheme like black on white. People are used to light backgrounds and dark text, so be prepared for complaints if you use a dark background and light text, even if you believe (as I do) that dark backgrounds are easier on the eyes. People in their teens and 20s (and possibly early 30s) are likely to be more forgiving on this than people who are older.

I’ve run into people who are militantly opposed to dark backgrounds. I’ve never run into anyone militantly opposed to light ones. So play it safe.

Color schemes. Follow the rules of the color wheel unless you know better. And remember: Any color will look fine with black or white, and very nearly any color will look fine with some shade of gray. Limit funky color schemes to your navigation bar; keep your main body text close to the classic black and white.

Keep in mind what you want to convey. A funky, hip site might mix orange and blue or orange and green. A more conservative site will drift towards blue and yellow.

And a very safe choice: Black, white, and red. Anything you do with those three colors will look just fine.

An easy way to play with color schemes is to visit this site.

Backgrounds. The in thing seven years ago in Web design was to use a background pattern. Today that’s generally a no-no, at least if you’re overlaying text. Place your text against a solid color. Limit background usage to your margins. Busy backgrounds are distracting.

Animation. I have animation turned off in all of my Web browsers. Animation is distracting. You can look very professional if you never use animated GIFs, Flash, or Javascript. It is extraordinarily difficult to use animated GIFs, Flash, and gratuitous Javascript and not look amateurish.

Think about it for a minute: Our most basic instinct is survival. And out in the wild, movement could mean a couple of things. Something that moved might be lunch. Or something that moved might think you’re lunch. So you naturally pay more attention to something that moves than to something that doesn’t.

On most professionally designed sites, the only thing that moves is the ads. There’s a big reason for that.

Existing media. If you have art you intend to use, make sure your site goes with it. Better yet, design your site around it. I designed this site around the montage of photos along the top. Steve had a family crest. It’s an elegant, attractive design. Almost as attractive and elegant as my family crest. Steve’s crest utilized a blue and a gray that seem to go really well together, so I suggested Steve use those colors as the principal colors in his site. The gray will be well-suited for the background of the text portion, so the natural place to use the blue is in his navigation bar.

Rule breakage. The exception to virtually every rule here is your page title. When you blow text up really big, you can get away with almost anything. So if you’re going to get daring, get daring on your page title. And even if you don’t get daring, most fonts look terrific really big. So blow your page title up really big.

Back in business

Some people have had problems accessing this site the past couple of weeks. I think we finally hunted down an answer (Thanks to Dan Bowman especially for his detective work). I ended up having to drop the MTU on my Web server down a little bit. That’s easy enough to do–become root, then issue ifconfig eth0 mtu 1200 and you’re golden, at least until the next power failure.
PPPoE adds overhead to transfers that can prevent people under some circumstances from being able to get to a Web site hosted in such an environment. Dropping the MTU a bit gives PPPoE some breathing room.

Picking out a camcorder

I had someone ask me for some advice in picking out a camcorder yesterday. I know I’ve talked a little bit about that before, but this field is always changing, so it doesn’t hurt to revisit it.
I’m going to link to a bunch of stuff on Amazon here. Amazon’s not the only place to buy this stuff, of course, but their selection is good, and I have an affiliation with them. If someone clicks on one of these links and ends up buying something, I get a kickback. But my primary motivation is informational.

Second things second: I know they’re cheap, but think twice about analog camcorders. A Quasar VHS-C camcorder will run you $200. You get a nice 20X optical zoom and a few digital effects, and it’s nice to be able to play your tapes in your VCR, but those are the only benefits you get. The image resolution is a lot lower than with a digital camcorder, and it’s a lot less convenient to dump video from an analog camcorder into a computer for editing. Since any computer you buy new today will have at least some editing capability (current versions of Mac OS and Windows include at least rudimentary video editors, so all you’d need to add to a PC is a $25 Firewire card if it doesn’t have built-in Firewire), you’ll probably want to be able to take advantage of it. If you don’t have Windows XP or ME, you can pick up a $65 Pinnacle Studio DV, which will give you the Firewire ports, rudimentary editing software, and most importantly, slick capture and titling software. The capture software is especially nice; it’ll detect scene changes for you and catalog them. Even if you do have editing software, you might want this. It saves me a lot of time.

Digital8 cameras are getting hard to find. Their chief selling point, besides price, was the ability to use analog Hi8 tapes, which was nice if you were upgrading. If you have some Hi8 tapes and want to continue to use them and want an easy way to move them to a computer for editing, look for a Digital8 camera. But there’s a good possibility you’ll have to buy online. And the resolution isn’t as high as MiniDV–Digital8’s selling points in the past were price and backward compatibility. The price advantage is evaporating, leaving just backward compatibility as a selling point. MiniDV is the future.

Panasonic has a digital 4-in-1 device that does video, still, voice, and MP3 duties. I don’t recommend it. The image quality is substandard, its fixed focus will make it even worse, and you can’t mount it on a tripod. Its list price is $450 and I saw it at Amazon for $340, but it’s a toy. Given a choice between it and a $250 analog camcorder, I’d go analog every time.

MiniDV is pretty clearly the way to go. It’s the emerging standard, as it’s become inexpensive, the tapes are compact and reliable, and the resolution and picture quality is fantastic.

You can spend as much as you want. An entry-level MiniDV camera, such as the JVC GRDVL120U, will run you about $400. For $400, you get 16X optical zoom, S-Video output for TV playback and a Firewire connection to dump your video to computer for editing, image stabilization, the choice between manual and autofocus, and the ability to take still shots and dump them to tape.

Pay no attention whatsoever to digital zoom. Using digital zoom to get much more than double your maximum optical zoom is completely worthless. There’s enough fudge factor in NTSC television that you can get away with using a little bit of digital zoom, but with this camera, once you’ve zoomed in to 32X, you’ve cut your effective resolution from that of DVD to that of VHS tape. Zoom in much more than that, and your image will look very pixelated. This particular JVC advertises 700X digital zoom, but you definitely don’t want to use it.

You can spend three times as much on a Sony DCRPC120BT. For your money you’ll get a better lens, so your image quality will be a little bit better. Whether that makes a difference will depend mostly on the television you’re displaying on. You’ll get much higher-resolution still shots, and the ability to store your stills on a memory stick. That’s a very nice feature–no need to advance and rewind your tape to find shots, and no need to interrupt your video sequences with stills. You actually get less optical zoom. You get less digital zoom too, but that’s not important. You’ll also get a microphone jack, which is very important. The microphone built into the camera will pick up some motor noise and won’t necessarily pick up what’s happening across the room. It’s very nice to have the ability to wire up a microphone to get away from the camera motor and possibly get closer to the sound source, to keep the sound from being muffled. You probably won’t buy an external mic right away. But chances are it’s something you’ll eventually want.

Personally, when I’m on a project, I’d much rather have the inexpensive JVC (or something less expensive that offers a microphone input) because the $800 more I would spend to get the Sony would let me buy a digital still camera with much better capabilities than the Sony offers. And when I’m shooting a video, having two cameras is an advantage–I can set them both up on tripods and shoot, or hand one camera off to someone else and tell them to get me some shots. Having two cameras can get me a whole lot better picture of what’s going on. But not everybody’s shooting documentaries like me. For travel, the Sony is a whole lot more convenient and more than worth the extra money. And if you’re recording your child’s birthday party, you probably just want one camera in order to avoid turning your living room into a TV studio.

So you need to figure out what you plan to do with it.

As far as accessories go, you absolutely want a tripod. Again, you can spend as much as you want. Amazon offers a Vivitar kit for about $40 that includes a bag and a tripod. With image stabilization, you can run around shooting birthday parties and vacation scenes and have a reasonably good-looking image that won’t give you the shakes. But if you’re recording Christmas morning, then set the camcorder up across the room, then go over and open presents with your family. I know, I hate being on camera, and you might too. But I wish I had some home video footage of my Dad. I remember his laugh and I remember how he loved to joke around, but I can’t show that to anyone.

If you just want to set the camcorder up at a fixed angle and run across the room, a cheap tripod will do the job nicely. If you’re going to be standing behind the camera and panning the scene, buck up for a fluid-head tripod. You’ll be able to move the camera much more smoothly. My Bogen tripod wasn’t cheap, but I wouldn’t be without it now that I have it. I think some people with arthritis have steadier hands than I do, but even I can do good-looking pans and zooms with that tripod.

Sometimes people ask me about brands. I learned on JVC equipment, so I’m partial to it. But it’s hard to go wrong with any of what I call the Big Four: JVC, Panasonic,
Sony, or Canon. Professionals use all four brands with excellent results. Sure, every professional has a preference. But the differences among the Big Four will be pretty slight. I’m less comfortable with offerings from companies like Sharp and Samsung. They haven’t been in the business as long, and they’re consumer electronics companies. The other companies sell to professionals. Some of that expertise will inevitably filter down into their consumer products as well. And the difference in price and features between a Sharp or a Samsung and a JVC, Panasonic, Canon or Sony isn’t very much, so a top-tier offering is a better bet for the money.

Don’t try this at home

“What you got in that system?”
“An 850.”

“Oh. 850 MHz isn’t too bad these days.”

“No, the CPU’s a 750. The hard drive’s an 850.”

“Where’d you get an 850-gig drive?”

“Who said anything about gigs?”

Yeah, I put a computer together this week. I had problems with the hard drive. Bad problems. Like Windows won’t load anymore and it coughs up a hairball when I try to reformat the disk. Yeah. Bad news. So I sent in a clunky old Seagate 850-meg drive off the bench. Hey, I wanted to play Railroad Tycoon, alright?

Along the way I recalled a few tricks.

FORMAT C: /Q /U /AUTOTEST formats a hard drive as quickly as possible, no questions asked and none of that aggravating “saving unformat information” that takes a week and doesn’t work when you want to unformat the drive anyway.

FORMAT C: /U /AUTOTEST does an unconditional, no-questions-asked long format, but still faster than plain old format without switches.

But if you want to get a drive up and running really fast, use the GDISK utility that comes with Ghost (if you don’t have Ghost, you may be able to find an old version of GDISK online if you look hard enough, because at one time it was freely distributable):

GDISK 1 /MBR /WIPE will quickly delete all the partitions on a disk.
GDISK 1 /CRE /PRI /FOR /Q will create and format a single FAT32 partition so fast you’ll wonder what’s wrong with Microsoft. Reboot and you’re ready to rock’n’roll.

Well, as much as an 850 will let you rock’n’roll, that is. Which ain’t much. But I know I’ve got a decent hard drive around here somewhere. So I think I’ll go find it. I’ve had enough of this insanity.

And I still haven’t gotten in my game of Railtycoon.

The Sapphire Radeon 7000

The last bit of hardware from my recent shopping spree that I’ll look at is the Sapphire Radeon 7000. This card is manufactured by Sapphire using an ATI chip.
Newegg sells several versions of this card and the prices start at $31. The most basic card is just that, basic: 32 megs of SDRAM and plain old VGA out. I stepped up to a higher-end version of the card, which offers 64 megs of DDR and S-video and composite out. I think that’s worth the extra five bucks I paid.

What can I say? It’s a budget card at a budget price. But when I bought my STB Velocity 128 card with the nVidia Riva128 chipset, it was a performance card. The gap in performance between this Radeon and the Riva128 feels as big as the gap between the Riva and the first Trident-based PCI video card I ever bought, back in 1995.

I tried one in a Celeron-366 and in a 1.3 GHz Duron. Its performance in the Duron was higher. Clearly the CPU was the bottleneck in the Celeron system.

The 7000 lacks some features that high-end gaming cards have. It has fewer pipelines than the higher-end Radeons, and half the memory bandwidth. It also lacks some of the hardware texture and lighting features you expect to find in a performance card of today.

But not everybody cares about those things. It plays Civilization 3 and Railroad Tycoon II just fine, thank you very much, and for word processing and e-mail and Web browsing the memory bandwidth isn’t terribly critical and the rendering pipelines and T&L are completely irrelevant. If you’re into productivity software and strategy games, a Radeon 7000 will treat you right and leave money in your pocket for other things.

Radeon support under Linux is good, mostly because a lot of new Macs have been shipping with Radeons for the past couple of years. Support under Windows, of course, is a non-issue.

The TV out support is nice if your system sports a DVD drive; in a pinch your computer can fill in for your DVD player. The card offers MPEG-2 acceleration, which is nice if your system has an aging CPU in it. Armed with a Radeon 7000 and a DVD drive, my Celeron-366 still dropped frames occasionally, but fewer than it did with an older card.

This card is overmatched in a monster gaming rig, but if you’re looking to put a little more punch in a two-year-old PC, this is a cheap way to get it. If you’re building a new PC and don’t care about 3D gaming performance, one of these $36 Radeon 7000s is all the card you need. Probably more. It’ll allow you to sink some money into something that’ll help your overall performance out more, like a faster hard drive or more memory. Or SCSI. 🙂 As far as I’m concerned, this card is a superstar for the price of a wanna-be. Go get it.

It’s election day.

Ah, election day. Vote early and often.
A longtime reader pointed out to me today that a certain Daynoter whose site I never read anymore advocates having 1% or even 0.5% of the populace vote. He actively goes out of his way to discourage people from voting.

This is precisely one of the reasons I never read that particular site anymore.

I remember an unscientific poll/experiment conducted at the same site several years ago. He named an obscure country and invited readers to write in with guesses as to its size, or population, or some other statistic. He asserted that, given a large enough sample size, the average guess would be very close to being correct. He waited a few days, then presented his results, which were indeed pretty close to the actual statistic.

How you account for whether people went and looked up the answer before “guessing,” I’m not sure. I don’t know if he did, and short of just making sure you ask a much larger number of people than are likely to bother looking it up, I don’t know the proper way to go about doing that. (I’m a journalist, so my education in the art of statistics ended at the 100 level.)

But, if you assume that a large enough number of uninformed people can make the right decision just by guessing, then it follows that the way to ensure the right person is elected is to poll every man, woman and child in the country. Therefore, voting should be made mandatory and the voting age should be reduced to age 2.

That’s nonsense too.

Is it a problem that so few people vote? It’s certainly a sign of larger problems, namely apathy and laziness. I don’t really care if it’s a problem in and of itself, because if we manage to solve the root problems of apathy and laziness, all sorts of great things happen.

So what about the other problem? That’s easy. Do I want my leaders chosen by an elite few? Absolutely not. That’s what we got in Missouri in the Senate race in 2000, and that elitism got us Jean Carnahan.

Go vote. If only to cancel out the vote of an elitist snob.