Wednesday, August 19, 2009

Time to Re-Evaluate


True story: Upon receipt of the pictured tweet Justin asked, "what presence?" Indeed. That's why I need to evaluate things again.

What is all of this doing for me? I have absolutely nothing to show for my 5,000+ forum posts from the last few years. My tweets are worse than useless. They're inane and I consider them a liability so I lock them down. I login to Facebook and head straight for time wasting games, I'm not connecting with anyone.

Will I cut these things? I don't know. I need to take a deep breath and figure out what the hell I'm doing here. One thing is for sure, it's not working.

Tuesday, June 9, 2009

Hulu: The Best Streaming Video Site?

Hulu is the undisputed champion of free streaming music video sites. What if we remove the word 'free'? Is it still the best?

I watch a couple shows a week on it. I watched even more before but I eventually ran through the interesting parts of their anime library. I've also tried to limit the time I spend watching TV, even if the computer is functioning as my TV.

Hulu has a great selection of content. Their strength is the same sort of content you would find on both major and cable networks. The television-sourced content is top notch, but their movie selection is mostly tired and old. As I mentioned, they have a respectable selection of anime, mostly series but a few movies as well.

The video quality is pretty great, if you have the hardware for it. Much of the content is available in two quality settings, 360p and 480p. Some is only available in the lower quality 360p. If the original was wide screen then so is the Hulu version. [At least as far as I can tell.] The 360p version is watchable and most likely to run smoothly, the high resolution content is better than standard definition television but not as good as 720p HDTV. [The numbers really give it away.]

The bigger difference between the two formats is in the audio quality. The low resolution audio is terrible, it sounds flat and tinny. It's compressed so badly that quieter sounds are sometimes lost entirely. The high resolution sound is good, if not great. The story is all about the low resolution sound which is unlistenable.

The problem here is that the only way to get the high quality sound is with the high quality video. If your hardware, particularly your processor, isn't up to the task then you're stuck either watching a smooth, full screen 360p video with atrocious sound, a choppy, full screen 480p video with great sound, or a smooth, windowed 480p video with great sound. I'll return to this, but needless to say it's not the best list of options to choose from.

Moving on to the interface, Hulu's site is fairly easy to use. I don't find their search particularly useful but most of the categories are organized well enough that it doesn't matter. The default sort of each category is popularity of video. You can also sort by air date, date added, and user rating. The same sorting options exist for shows instead of videos. I prefer to view by show, as I'm normally seeking a particular series or episode of a series. Each show has a page that lists all of the videos, with indications of when they were added and whether it's a clip or an entire episode. For my purposes most clips are rubbish, though The Office often has good clips of original "webisode" content.

The player interface is the best among the free sites. This is especially true if you make an account, where you can set your preferences to default to the higher quality video. If you don't have an account or change this setting then you will always have to click the 480p button to get to the higher quality stream. You cannot make this change while a commercial is playing.

When the player is not in full screen mode there are a few other interesting buttons on the right side of the video. If you're happy to watch the video in place you can click the "lower lights" button that overlays a translucent black layer on top of the page, but does nothing to dim the rest of your screen. If you can't watch in full screen but you want to resize the video you can click "pop out" which will put a very similar interface on screen in a window with no other content in it. Lastly, there's the full screen button.

The full screen mode is decent, but conspicuously missing is the quality setting. If you enter full screen only to realize that you forgot to go to the higher quality video you must exit full screen to change quality. The same is true if you enter full screen but find the video to be choppy and want to watch at 360p. I'm not sure why this is so but it proves to be an annoyance. You can stop and start the video with the space bar, and escape will exit full screen. I don't know if there are any other keyboard controls, but it's better than nothing.

Playback is fairly simple and intuitive. There is a progress bar at the bottom of the video that disappears after a few seconds, except in the pop out window where a small progress bar is shown the entire time. It has dots on it that show when the commercials are. You can skip ahead or go back. There's some algorithm that tries to force a commercial if you skip past one, and you only have to sit through one even if you skip past two. In the lower left is a play/pause button. That's it.

Of course, this is an ad supported service. With a few exceptions every video you watch will have commercial breaks. You can pause the commercials but you cannot fast forward. Even if the commercial doesn't load it will make you sit through a 15 second notice that you're being a bad citizen. Occasionally you will be offered an alternative commercial scheme where you can watch a two minute ad then the entire video will be commercial free. Normally I take that offer, especially if it's the cool Honda ad. I'm not a Honda guy, nor a big Danica Patrick fan, but that ad is good. In general I find the ads on Hulu to be far more tolerable than the ones on television. The breaks are shorter and the mixing isn't so ridiculously loud. They're also often real ads, not the self-serving drivel like on ABC.com. Lastly, the ads played in line with the rest of the stream, so you don't have to click to continue. Overall it's a very television-like experience, but more pleasant because the ads are fewer and higher quality.

That brings me back to the original question: Is Hulu the best? My verdict is no. Hulu's service is limited to only a few devices and their media center capabilities are wanting. The well-documented fight they've had with Boxee hasn't helped. On my Macbook running a 480p video at full screen pushes the 2GHz Core 2 Duo processor to its limits, and at that it drops frames. Flash video doesn't seem to offload much if any of the rendering to the GPU, keeping it all on the processor. This is unacceptable when you pair it with the poor audio in the lower quality stream. The commercials are tolerable, if that were the only fault I might declare Hulu the winner on the strength of their catalog.

There is a respite for Hulu, though. They recently released a media-center friendly desktop application. The content navigation in this app mirrors the website -- though it's a little clunky, especially so with a remote. The playback is better, adding some fast forwarding capabilities and showing a scene preview if you use the progress bar to skip around. The scene preview is a little slow. The real killer feature is the "medium" video quality setting. It seems to play a little smoother than the 480p stream from in-browser and the sound quality seems better than 360p.

The short take is that Hulu is a great DVR alternative with a good selection, but they take second place in the online streaming contest.

Friday, June 5, 2009

Neither Blonde Nor Female, But Apparently Real

I received this email the other day, one of those somewhat worthless humor forwards. Normally I ignore it or laugh. This one seemed fishy to me, though.



I smelled a photoshop job. Looking at the image up close showed a lot of blur and an undue amount of compression artifacts around the lower right pillar. I was determined to find out where the picture was from and prove that it was doctored.

I started my search with the blue sign. I didn't believe that it was an American street sign. Convinced that I had seen something like that in pictures from England I searched for "blue sign London." Soon I had found an image hailing from Manchester with a very similar sign, so much so that I initially thought I'd found the same sign. It was not the same, but I kept looking.

Image search eventually failed me, so I turned to Google Maps Street View. I wasn't able to find much using that but I was bored and it was sort of neat to virtually tour Manchester. After a bit of traveling down Quay St. I stumbled upon the corner of Quay and Gartside. Long after I'd given up, I was able to find what I was looking for.



View Larger Map

Unfortunately, I was unable to prove it false. I don't know exactly how the van was extracted, but it appears that the pillars are there and in the same configuration as in the forwarded picture. Even with the failure, it was kind of fun to research and rewarding to know that you can still find pretty much anything on the Internet.

Tuesday, April 21, 2009

A New Project, Dead Already

Last week I started a new blog, Un-F*** My Life. Today I've decided that it is a dead project.

The idea of the project was to reply to FML posts, taking each one at face value, in a sort of Dear Abby style. It was fun and it allowed me to address the annoying repetition of the FML posts. I think I was also able to make the point that many of those posts were easy to deal with so long as you had a modicum of maturity.

Everything died when I realized that since Friday I hadn't even had time to read FML, let alone comment on it. Of course, my little blog probably had no value to anyone but me anyway. So the effort required was far too much and the reward far too little. I even took FML out of my RSS reader. The project is dead on arrival.

Monday, April 20, 2009

New Rules for Netflix Ratings

I am a big fan of Netflix. I put some thought into how I use the service in order to get the most for my money. I'm fairly happy with the results I get, but sometimes I have to tweak my usage to serve myself better. How I rate movies helps me remember how I felt about a movie and it helps the system suggest more movies, or predict how much I'll like a movie. After a few years of rating movies one way I have decided to change.

The Old Way

My old system for rating a movie was to try to rate it as objectively as possible. I focussed heavily on the merit of the movie, acting, script, and direction. I would then combine that with my preferences and come up with a rating. This introduced some personal bias, but I think most of the ratings were pretty fair. The exceptions were a few movies that I either loved greatly or hated completely, at which point I would typically let my emotions get the better of my objectivity and rate generally loved movies poorly or generally disliked movies highly.

The problem with this is that I was trying to be objective and not allow my bias to influence the ratings too greatly. This would be great if I were the only one reviewing these movies, or if the rating data wasn't being used for other purposes. Neither of those conditions are true, though. In short, I was being unfair to myself out of some sort of misguided attempt at journalistic integrity, even though I'm no journalist.

Other oddities happened because of this as well. I stopped trusting my own ratings. When someone asks me what I thought of a movie I will look that movie up on Netflix and use that rating to stir up the long term memories associated with that movie. It works great because I have the movie box, description, and my rating all there on one screen. I found that, increasingly as of late, I was having to mentally adjust my ratings based on whether I thought they were skewed for objectivity when I made them.

The New Rules
With my new system I will not change my baseline ratings. Instead, I will allow my bias to more significantly influence my ratings. After I have my final number doing this I will review it to make sure it accurately reflects how I interpret and feel about a movie. Then I'll click the little star that matches.

Basically, everything starts out the same as above. I get a rating number by thinking about how well made the movie was and whether it's worth watching. Then I allow myself to modify that rating by zero or more stars depending on how I felt about the movie and how strongly I felt it. If I have no strong emotions either way then a three star movie will remain at that rating. If I enjoyed that movie a good bit, I will probably add a star. I may add two stars in some circumstances. I doubt I would ever feel the need to add three. The opposite is true if I genuinely disliked a movie.

A few examples:
I recently rented The Prestige. It was a decent movie that mixes science, fake magic, and real magic. I thought it was beautifully shot and decently acted. It was an okay script. Objectively, I think I would give it four out of five stars. Once I added more of my personal bias into it I reduced it to three stars because I didn't like some of the treatment it gives to science, it was a little over-the-top, and it has an fairly obvious plot twist that seems to be there only for plot-twist addicts.

I also recently saw the import So Close. This is something like a Charlie's Angels flick set in Hong Kong starring the locals. It wreaks of bad acting, it's completely over the top, and it's cheesy as anything. The action scenes are top notch, though. If you enjoyed the Charlie's Angels series and like Jackie Chan movies then you may enjoy this. I objectively gave it two stars out of five. I think in the grand scheme of things that movies like this are largely trash. They are, however, trash I tend to enjoy. I liked the car chases and the Asian culture infused in this. So I bumped the rating up to three stars.

As you can see, two movies on the opposite ends of the quality spectrum now have the same rating. I'm able to be both intellectually and emotionally honest.

Other Rules
I did pluralize the word 'rule' for a reason. I have changed the way I think of a few things related to rating movies. I will no longer rate movies 'Not Interested' unless I have a very good reason. I have re-assessed my category ratings using the new Taste Preferences with a particular focus on emotional honesty.

For 'Not Interested', right now I'm reserving it for series items where I've seen parts of the series, but not all, and I am completely uninterested in watching any more. This means there are only 3 items with this rating so far: Dragon Ball Z, Home Movies, and Survivor Season 1. The first two are cartoons that I don't like, yet they are suggested because I apparently differ from the normal person who watches anime and adult oriented cartoons. The last is just weird. I don't know if the system suggested this for me or not, but I'll leave it there so that it won't suggest any "reality" shows.

I didn't like the effect that too many 'Not Interested' selections had on my suggestions and other ratings. I also don't like that it inflated some of my ratings counts. I've seen enough movies without the ones I haven't seen being counted.

My category ratings were a mixed bag of intellectual ratings, emotional ratings, and shame. Some categories I rated higher not because I like watching those movies, but because the movies themselves tend to be well made. That's great, until you realize that you aren't interested 15 minutes in but watch the whole thing anyway. The emotional ratings are probably the right ones, at least that's my take. Some of the ratings were born of shame, though. I was ashamed that I like anime, seeing that as the last step into hopeless geekdom. Finally, I realized that these ratings were entirely for me to help Netflix know what kind of movies I might enjoy. I'll eventually betray the same information by what I rent and how I rate it, so I should be honest to myself and rate categories as I think I would actually want to watch the movies in them. The good thing about Taste Preferences is that it presents the data in a way that makes this easier to swallow by asking you how often you want to watch such movies instead of forcing you to rate them on a five star scale. My only gripe is that I wish the ratings were more granular instead of never, sometimes, often.

That's a lot of thought put into rating movies. The good news is that I mull over these decisions for so long each time I rent. Rating a movie takes a second or two. I'm just trying to maximize my results.

Friday, April 17, 2009

Back From Hiatus

I've been quite busy the last month or so. I neglected my blog as a result.

Even though I don't rely on readers to validate my content, I believe that I should put effort into what I write. If I can't dedicate myself to some sort of well-formed thought then I simply won't try. That's what happened here.

The good news is that I've been thinking a bit. I have some customer service experiences to share. I took a road trip that left me contemplating the psychology of motorists. I haven't stopped my quest to eke out a few more pennies worth of efficiency without negatively affecting my lifestyle, which seems to equate to watching a lot of shows online. So on and so forth...

I hope to post more frequently again. My goal is to have the best blog that no one reads.

Tuesday, March 3, 2009

The Benefit of Consistent Naming

In late 2007 I started a project that required a pass-through database to allow for auditing and change approval to occur between our CRM product and Outlook. I was, and am, acting as the database administrator (DBA) on this project. I was fortunate enough to be able to create the database almost single-handedly.

Doing everything yourself is tedious work. It can also go very wrong if you assume that you're not just doing it alone, but doing it for yourself. I stuck to some best practices to create cleanly formatted, self-documenting, and commented SQL code. This has allowed me to have exchanges like this:

Coworker: "What is the procedure to get a contact's information?"
Me: "getContact"
Coworker: "Oh."
Coworker: "What if I want to add this user as a subscriber?"
Me: "Use the addSubscriber procedure, pass it the contact ID and the user name."
Coworker: "Oh."

Eventually they stop asking because almost everything is so predictable. These exchanges may make them feel ridiculous but that's the point. If you stick to a well defined naming scheme then your code should do a lot of self-documentation. If the code is documented then it will normally be equally convenient to simply reference the code. This is a benefit to everyone. There is less need to bother me. The code is more readily available to the other developers than I am anyway.

Another benefit became apparent to me a few times recently: It helps you find when you are about to do the same thing twice. This is a big database that my team has been working on for the last year. There are almost 200 stored procedures and functions. Unfortunately, I was not able to create them all. I did create the vast majority, though, sticking to my same naming conventions each time. Now we are actively developing parts of this project again, so I need to put new functionality in the database. At least twice in recent weeks, a procedure I was prepared to create already existed, was named exactly what I intended to name it and did exactly what I wanted.

The lesson here is the power of doing things the right way for the sake of it truly being the right way. I could have probably done things faster if I didn't take the time to properly indent my SQL queries or if I used the query designer every now and then. Yet, I would cost myself and the company time in the long run because it would be far more difficult to decipher those queries to troubleshoot or change them. I could have used procedure names that were less descriptive to save some typing time or avoid names such as "getAcceptedCompanyMinorityStatusValues" but then I couldn't tell you exactly what the procedure does without looking at the code, and if I needed that later I might use a different naming scheme and do the same work twice. It is usually quicker to do it right once than it is to do it half right twice, especially when twice is likely to grow exponentially.