Sunday, October 07, 2007

What do dogs dream of?

Oh my, my dog is dreaming that she's barking.

I can't tell if it's a bad dream or a good one.

It's so friggin' cute though!

"Woof Woof! Woof!" she dreams, but it just sounds like "weef weef! weef!"

The Slippery Slope of Television

... in which I document the history of my love-hate relationship with Television.

My mother always said that when I was a child, the only time I would actually sit still was when I was watching television. That was always true until I got a computer.

The punishment in our house for misbehaving always included loss of TV privileges. At dinner, we would watch TV, and if you were punished, you were forced to look away from the TV, and you were even called out for watching through the TV reflection in the window.

When I moved out of my parents' house, I took a TV with me. It had rabbit ears, a 13" screen, and dials for UHF and VHF. No remote control. No cable. It was all mechanical knobs and dials. I was actually very happy with seven channels plus VHF, but because I had no remote control, one night when I had the stomach flu I watched the same channel for 12 hours. It was channel 4, NBC. You are less than 35 years old if this shocks you.

I was 25 when I broke down and bought a 26" TV and a VCR, and got a subscription to cable. I still didn't watch tons of TV, but I was happy to have it. I bought my first stereo when I was 27. I didn't get it because I realized my life was missing a stereo, I got it because a friend worked for a stereo manufacturer and offered me a really great discount.

In 2000 I bought a DVD player, and only because my favorite movie was not available in VHS format.

In 2005, when my wife and I moved into our new house, we agreed to live without cable. I really enjoyed it. It was $60 per month we weren't spending, and while reception could occasionally be a problem (we often lived without CBS) we were pretty happy with it. Or at least, I was. My wife was not very happy with this. She missed cable. She kept threatening to get cable. I never said no, and I never got it for her. I figured, if she wanted cable, she could pick up the phone and do it, and that would be fine. But she never did it. I don't know why. Maybe because it just wasn't that bad, or maybe because she wanted to make me happy.

For her last birthday, I broke down and called the cable company. That's right: My wife's birthday present was a cable television subscription. I scored many, many points. This was not a thoughtless present.

Two months after getting cable, I bought a Tivo. Like the stereo, I purchased a refurbished unit for $100, which was a perfectly satisfactory price. Unsurprisingly, Tivo has changed the way I watch TV. For the last 45 days, I have watched approximately six hours of television a night. 9 of the last 14 nights I fell asleep on the couch while watching TV. This has been shocking, and a little scary.

Here's my observation about Tivo: the promise of Tivo is that you'll always have 'your favorite shows'. Truth be told, I don't think that's what Tivo does for us: pausing live TV is really awesome, and recording programs is also great, but the truth is there's still not that much I want to watch. At its essence, all Tivo really is is an insurance policy against commercials and channel surfing, and the monthly fee is the premium you pay to ensure against those two things.

Yesterday, we got a large screen TV: a Sharp Aquos 42" LCD TV. Again, I didn't get it because I felt this overwhelming need for a large screen TV, but rather, because I could get it for a good price. It's very nice, and I like it, but I don't have access to any HD channels. This started to scare me: do I now upgrade my cable box to be HD compatible? My Tivo is also not HD compatible. Do I also have to upgrade that?

Fortunately, no. I called my cable company, and they want $9 a month to upgrade my service to HD, and this would include, and I'm getting this from memory: CBS, NBC, ABC, KTLA (FOX), KCAL (CBS Local), KTTV (CW), TNT, BET, Discovery. 9 HD channels that I don't really watch to begin with. The channels we regularly watch are Bravo, Food Network, Sci Fi, Comedy Central, and a large number of movie channels (Encore, Flix, IFC, Sundance.) I'm sure HD is coming into this house, but not now. For now we seem to have finished adjusting our relationship with television.

Buying the new TV has sort of put me over the edge. I've been spending too much time in front of it. Sleeping through The South Park Movie last night was my sure sign, so for a short while, the TV stays off.

I love my TV. I hate my TV. I love my TV.

I'll proofread this later. Right now I'm taking my dog for a walk.

A final observation: The two times I bought a television occurred just after losing someone in my life. The first TV (and VCR) came about when I broke up with a girlfriend of 2 years. The second TV (and Tivo) were bought less than 3 months after my mother died. This is not a coincidence. I confess to having a sense of superior pride when I am not up-to-date with technology. Granted, both losses were very different, but I think they show that it takes some energy to not give in to consumerism, and when I suffer a loss, I either use consumerism to feel better, or I just don't have the energy to fight it.

Friday, September 21, 2007

What's better than typing on my computer?

It turns out that rubbing your dog's belly is way more satisfying than typing email.

Wednesday, September 19, 2007

I'm not into PwdHash

After reading Bob Lee's endorsement of PwdHash, I decided to give it a run. After a two-week trial period it I've decided to no longer use it.

I think it's got alot of potential, but I don't think it's for me, and the process seems to ahve some flaws. Here are my three main gripes about the supposedly improved support:
  1. I am supposed to trust that F2 translates my password. The only visual cue that my password is being translated is by watching the asterisks that represent characters in the password text box. See, the hashed password has (seems to have) more characters than the unencrypted password you supply. PwdHash replaces your password with the hashed one when you navigate out of the text box, and so, when you leave, you should see the number of asterisks grow. What if I failed to notice the asterisks change? It's possible that PwdHash could address this with a better user interface: one that displays a hovering window, perhaps.
  2. It lulls you into thinking you can use the same password on multiple sites. If I were to accidentally type my password unencrypted, it's easy to log in to my other services. This brings up my third beef:
  3. I would feel more comfortable if PwdHash let me contribute a third key to the algorithm that creates all passwords. Now, even if I accidentally forget to press F2 before entering my password, there's less of a chance that someone can get to other services. In that way, I can individualize the tool in such a way that it's mine. If someone else knows how PwdHash translates 'password' for www.gmail.com, they can find out how my password is similarly translated. I could get through this problem by making my common unencrypted password 'password_nnnnn', where nnnnn is this third key I talk about, but to do this I'm forced to make nnnnn something memorable.
Now I admit to be oversimplifying the problem to some degree, but the fact is, it just doesn't make me comfortable. I'd just prefer to eliminate the risk that a mistake on my part results in changing my password everywhere.

Tuesday, September 18, 2007

I miss Perl

Sometimes I get jealous when I read about dynamic programming, such as while reading this article by Neal Ford. I just wish I could feel that large applications could scale as well.

Don't get me wrong, I really miss coding in Perl, which resulted in code that more closely mapped to my thoughts. *sigh*.

Friday, September 14, 2007

Google Collections Library Released!

If you are programming in Java 5.0, I strongly encourage you to take a look at the Google Collections Library. I'm really impressed at the amount of work that went in to crafting this library.

This project would not have been the least bit possible without Kevin Bourrillion's hard work. Creating this massive library was his idea, and he managed to get several dozen engineers to contribute features, code reviews and tests. Kevin is also partly responsible for Google Guice.

I'm not going to bother going into any details about specific library features, I think Jesse Wilson is doing a fine enough job at that with his gentle introduction. I'm already drafting some posts to go on his blog.

(Updated)