Archive for the ‘Rant’ Category

It’s Craptastic!

Saturday, November 1st, 2008

Poop by gtmcknight

Poop by gtmcknight

Yes, this will be yet another public rant about how awful Comcast is. If you feel as though you’ve heard them all, I’m willing to bet that you haven’t heard this one.

Today was my day off. Like any day off, I slept in. When I (finally) awoke, I thought about what I should do today. Among the things that came to mind was to finally go and purchase and set up a new Tivo HD DVR. I know, at this point you’re saying, “but I already know how bad that DVR is, this is nothing new.” If you thought that and left the article, then you missed the punchline. It’s true, the Comcast HD DVR really is the be all end all of shitty DVRs. It crashes, it’s slow, it’s dumb (literally, it doesn’t understand when I say “only record new shows” that I mean I don’t want it to record reruns) and frequently needs a swift kick in the power plug. It’s also goddamn expensive at $16/month on your monthly bill. Tivo’s monthly service costs less than that, so I figured I could save some money (yes, not yet since I have to recoup the $300 for the Tivo hardware first) while having a superior DVR experience.

In order to use the Tivo HD DVR with your Comcast service, you’re going to need a cable card. The cable card handles all of the signal decryption stuff going on in the Comcast supplied DVR. In order to get one, you have to either go into a Comcast office or have them send a technician out to you. Since getting a technician would take days and I’m impatient, I opted to visit a nearby Comcast office to pick one up. That’s where the first problem occurred. I went to the Comcast website and tried to find local offices where I can get equipment. Unfortunately, you can’t find those offices on the Comcast website. You can however find “Payment Centers“. That didn’t sound like what I wanted, still…I decided to check them out. Maybe a local Payment Center doubled as an equipment place. Searching turned up three nearby offices. According to the website, the only equipment available for pickup at the offices was Cable Modems. So…I called 1-800-COMCAST. After faking out the phone system (hit zero twice to immediately go to customer service) I was routed to someone who informed me that the nearby Milpitas office could give me a cable card (even though the web site doesn’t say that they can, evidently Comcast doesn’t want you to know about cable cards). So began my journey.

I drove over to the Milpitas office, which is hidden way in the back of a shopping center. I walked in and a woman at the counter (with a freshly pierced hand, ouch!!!) asked if she could help me. I informed her that I was in the market for a cable card. She took my phone number and looked up the account. She asked if it was under my wife’s name, which it is, and I said yes. She then told me that because the first cable card is only free to people who don’t already have the HD DVR, it would cost an additional $7 (roughly) and that Lisa (my wife) would have to authorize Ryan Kennedy (me) to pick up the cable card for our account. She would have to call 1-800-COMCAST and give them her authorization over the phone. Stunned, I asked the woman if Lisa were to call in the next 15 minutes, could I just turn around and walk back in the office and get my cable card. She told me that I could.

So I walked outside, shaking my head, and tried to call Lisa. Busy. Must be on a conference call. No worries, I had other errands to run including the grocery store and Best Buy (to get the Tivo). I’ll just hit those to kill some time and then try calling Lisa again. So I drove over to the Milpitas Nob Hill, where I discovered just how much one store can completely screw up store layout. Seriously, who puts the peanut butter way over by the milk in the refrigerated section? Half an hour later, I emerged victorious from Nob Hill. I stowed the groceries in the trunk, got in the car and dialed Lisa again. Still busy. Well, off to Best Buy I suppose.

It was on my way to Best Buy that I started having a self-rant. I wondered (out loud) why it is that I can call up on the phone and order pay-per-view on my wife’s cable account but they won’t let me walk into the store and pick up a cable card. That’s when inspiration struck. I thought to myself, “what would Kevin Mitnick do?” When I arrived at Best Buy, I parked and got out my phone and dialed 1-800-COMCAST. Once again, I wielded the double-zero to great effect, immediately putting me in touch with a live person. I informed them that I needed to authorize someone to pick up a cable card for my account. They asked for my account number and I told them I didn’t know it. They asked for my phone number, which I supplied. They asked if the account was in my wife’s name and I responded that it was, so they asked me to verify with the last four digits of her social security number. I gave the operator the numbers and she asked who I’d like to authorize to pick up the cable card. I gave them my name and she told me I was all set.

I ran into Best Buy and purchased the Tivo HD DVR (this is another story entirely), put it in the trunk and headed back to the Comcast office. I walked up to the desk with the same lady I had talked with maybe 45 minutes earlier. “Welcome to Comcast, how can I help you?” Seriously? Did you have THAT many people in here since I was here last? I responded, “I’d like to get a cable card for my Tivo.” She asks for my phone number, which I give her, and she again brings up that the account is in my wife’s name, to which I respond “yes.” She then tells me, “you have a zero balance on your account”. We stare at each other for a minute and I, finally, respond “uh…okay.” She continues to stare blankly at me so I say “what’s the problem?” She tells me “there’s nothing to pay on this account.” At this point I figure she’s fucking with me, so I remind her that I just want to get a cable card. “Oh, I thought you said you want to pay your bill.” In my mind all I can think is, “holy crap…finally something to blog about after a few dry months.”

At this point she goes into the back, procures a cable card and brings it out and verifies that I’ve been authorized to pick up a cable card for my wife’s account. With cable card in hand, I leave the building, shaking my head all the way back to the car.

The moral of the story is (Comcast, you ought to be taking notes by this point), don’t be lame. The lady in the office could have saved me a lot of time if she had simply done exactly what the person on the phone did and ask me to verify the last four digits of Lisa’s social. Instead she completely passed the buck to their 1-800 phone operators, either because she didn’t know that she could ask for my wife’s social or because she didn’t want to be bothered with work on a Friday. Either way, Comcast you look like clowns.

UPDATE #1!!! (November 2, 2008): After activating my cable card, my internet access went down. Unfortunately, Lisa happened to be working from home at the time, forcing her to go into the office on Saturday because she had some pressing work to finish up. I called Comcast and ended up with the most clueless representative I’ve ever had to talk to. She scheduled a truck to come the next day (I’m not sure why they can’t remotely fix a something that they remotely broke). Anyway, the technician showed up the next day and found out that they’d somehow added a second cable modem to my account. As a result, no internet access for Ryan. After an hour of futzing around with their system, they finally got everything working.

UPDATE #2!!! (November 15, 2008): Today I went to return the HD DVR, making the transition to the HD TiVo complete. I took it back to the Comcast office in Milpitas and explained to the guy there why I was returning it, explaining that I was going to be using the HD TiVo from then on. He took it, scanned it, gave me a receipt and told me I was all set. Thinking Comcast got something right for once, I left for home.

When I got home, however, I noticed that all of my cable channels were…black. No Comedy Central. No Cartoon Network. No BBC America. No HD HBO. I went to their online help and started chatting with a support representative. They informed me that my cable card had been deactivated and that I would have to call on the phone to get it reactivated. At this point I was convinced Comcast had put me on a “make sure to completely fuck this guy over when he tries to do anything” list. I called 1-800-COMCAST and, after some fighting the automated answering machine, managed to get to a live person. I explained what had happened and asked if they wouldn’t mind reactivating my cable card WITHOUT taking out my internet access this time.

The technician took my account information and seconds later the channels sprung back to life. She asked me to check my internet access and I verified that it was still functioning properly. We have no idea what happened to deactivate the cable card, however I was just happy to have finally found someone at that company with half a brain.

I don’t get how Comcast stays in business given how much money they must be pouring into support to offset the low quality of their remaining workforce. Then again, people are dumb enough to pay $16/mo just to have their awful HD DVR.

Eat your own dogfood

Wednesday, July 2nd, 2008

Now we know why Laura is doing so well on the growth charts. - by booleansplitIf you’re developing a web service of any kind, eat your own dogfood. Build something using your web service. In fact, build many things using your web service. Do it early and often before you release your web service to the public. Find out what sucks about your web service, what’s broken and what’s simply downright inconvenient about your web service and then fix it. If you find you want to murder someone while using your own web service, imagine what your consumers will think of it.

All too often I find myself running into web services that are inconvenient to use from a developer standpoint. Often it’s because the people implementing the web service build whatever’s convenient for them. Spend some time building applications using your web service, make a list of the things that were harder than they should have been and then go fix them. Your users will thank you.

Photo by booleansplit

Important safety tips when handling json-c

Monday, March 10th, 2008

We’ve been using json-c internally for parsing and generating JSON in my new project. It’s a pretty nasty interface to work with, so I’ve been considering putting a prettier face on it for C++ developers. Today I sat down to do that. Instead, I spent many hours allowing json-c to repeatedly win games of roshambo.

It started out simply enough, a simple class to wrap the json_object:

#include <string>
#include <json/json_object.h>

class JsonObject {
    private:
        json_object* obj;
        JsonObject();

    public:
        static JsonObject parse(const std::string& json);
        ~JsonObject();
};

There wasn’t much to it at this point, but I had enough to set up my Makefile to check that everything compiled properly. Sadly…it did not. While the compilation step was successful, linking wasn’t so fortunate:

libjsonwrapper.so.1: undefined reference to `json_object_put(json_object*)’
libjsonwrapper.so.1: undefined reference to `json_tokener_parse(char*)’

I spent some time (and by some time I mean most of Sunday) futzing with the Makefile, making sure json-c was properly installed, compiling my own version of json-c, checking different hardware architectures and operating systems…all with no luck whatsoever. I even looked at some other code that we have that uses json-c, checking out the Makefile to see what that code was doing that I wasn’t.

At around 8:45pm I took a break and went for Sunday bowling (Homestead Lanes does a special on Sunday nights, it’s great…you should go sometime). When I got home, I dug back in. Still no dice.

So I went back to the other code we’d written that uses json-c and looked at some other things. Finally, I happened upon it:

#include <json/json.h>

It’s subtle, but including json.h instead of json_object.h makes all the difference in the world. At first I didn’t want to know why, I was just mad that it mattered at all. Obviously json.h is some aggregate header that keeps you from having to #include every little file you need. But clearly it’s also performing a little black magic along the way that does something to affect linking. Ready to lose my shit, I dug into the header:

#ifdef __cplusplus
extern "C" {
#endif

#include "bits.h"
#include "debug.h"
#include "linkhash.h"
#include "arraylist.h"
#include "json_util.h"
#include "json_object.h"
#include "json_tokener.h"

#ifdef __cplusplus
}
#endif

Whoomp there it is: extern “C”. If you include json.h it does the right thing and makes everything inside of json-c use C linkage when compiling C++. If you don’t include json.h and instead include one of the files that it includes…then nothing uses C linkage causing the linker to FAIL.

Thanks json-c for consuming a day of my life that I can never have back.

Dear Akismet…

Monday, January 1st, 2007

So there I am, minding my own business, checking my feeds, responding to reader comments. Suddenly, I noticed that my last comment hasn’t shown up. Thanks to the ever-paranoid Akismet, it was marked as spam. Fortunately, I was able to locate it in the Akismet admin among 800+ pieces of actual spam. I marked it not spam, so you can actually read the comment now.

First, I have no idea why it was flagged as spam. Far as I can tell, there’s no big keywords that I would suspect in it. Second, and this is most important, I was once again logged in as a WordPress admin when this happened. Yes, this has happened before, about six months ago.

Dear Akismet…if the person posting the comment is logged in as a WordPress admin…it’s probably not spam. Even if it is spam, they’re logged in as a WordPress admin. All they have to do is go to the “manage” page and get their comment out of the spam jail. Blocking spam for people with high privileges is, at best, only going to slow someone down. At worst, well…it pisses me off. Did I mention I was logged in as a WordPress admin?

Yes, I am running v.lates of the Akismet plugin (1.2.1). And yes, I have the source to the Akismet plugin so I suppose I could jump in with my own two hands and deal with this code kung-foo style and perhaps that’s what I’ll do. Until then, I’m going to sit here and stew a bit (and scan my 800+ pieces of spam for anything else Akismet put in there). Maybe Toni will crack the Automattic whip for me.

When will faxing die?

Tuesday, October 24th, 2006

I’m in the middle of selling my house, part of my aforementioned relocation to the Bay Area. As part of that, I need to sign a bunch of paperwork to get the process rolling. The only problem is that the paperwork is in Folsom and I’m in Sunnyvale. What’s the solution? The fax. I have to get the documents faxed to me so I can sign them and then fax them back.

Seriously, if there’s one piece of technology that should have been obsoleted by the Internet years ago, it’s the fax machine. It’s a pain to find one and once you do, you get charged per page to use it. Email, on the other hand, is free and vastly more useful and ubiquitous.

Of course, even if you could email the documents back and forth, there’s still the small matter of your signature. You need to find a printer to print out the documents and then a scanner to scan the signed documents. Oddly enough, nobody actually cares about the signature. Sure, they’ll say they care about it. That they have to have it. That the document isn’t legal without it. But will they actually verify it? No, I could dip my cat’s paw in ink, have them scribble something on the page and call it my signature. Nobody would complain. The document would be perfectly legal.

It would have been just as much a verification of my consent to ask me over the phone as it would be to make me fax something with a handwritten signature.

Sucking will continue until morale improves

Friday, August 4th, 2006

What is it with me and Bloglines (we have history)? Lately it’s been all manners of busted. When I click on feeds that supposedly have unread items, Bloglines will pop up an empty list. Additionally, Bloglines has regressed to showing me TONS of feed items from as far back as a week ago, none of which have been updated.

Yesterday it started doing something new, though. I subscribe to Lifehacker. On either Wednesday or Thursday (I can’t remember which) I flagged some article using the “Keep New” checkbox. I do that a lot when I encounter an article I want to read but don’t presently have time for. Bloglines keeps it flagged new so I can go back to find it. In the left column, where Bloglines lists out my unread feeds, Bloglines shows it as “Lifehacker 0 (1)”, meaning no unread articles and one Keep New item. When I click on the feed, however, zero articles show up (there should be one).

It’s a shame that Bloglines breaks in such frustrating ways. Without the breaking, Bloglines is a very simple, usable application. It does what it should: presents you a list of your feeds and any new or updated articles. Unless it’s busted.

We could all learn something from MySpace

Sunday, July 16th, 2006

I think MySpace is ugly as hell. I think it’s full of crap that nobody really wants to look at. And yet…somehow, it gets a TON of traffic (more than Yahoo! Mail, allegedly). I just don’t get it. My company gets smacked around for having a couple of ads sprinkled about the page, yet every teenager in America can have a page with falling snowflakes, shitty background music, stupid banter and epilepsy inducing backgrounds and it gets a ton of traffic. Somebody call the coroner and tell him to bring a body bag for our good friend, Common Sense.

Tonight I was looking through my access logs and I noticed most of my referrals come from MySpace. Shocking, I simply couldn’t believe the amount of traffic that appears to be coming to me via MySpace. So I clicked on a few referrers to see what’s on those pages that could possibly be linking to me. I didn’t realize doing so automatically transfers one to the inner ring of the seventh circle of hell. I haven’t seen something this visually offensive since college (oh my god…my roommate washed his tighty-whities with a red shirt and he’s going to walk around the room in them). As if it’s not bad enough that I’m blind, I’m going deaf from the awful background music. To top it off, my browser has slowed to a crawl, the result of heart shaped raindrops falling down the page and dozens of YouTube videos loading simultaneously, preventing me from banishing the evil tab that spawned this foul demon. What on earth did I do to deserve this? Did I offend someone? Did I lose a bet with god?

Does anybody remember that website/book, Web Pages that Suck? It’s like MySpace looked at every example from that book and thought, “hmm…how can we make it easy for people who don’t know what a web page is to make a web page JUST LIKE THIS?” Then they made a business out of it! Somehow they even convinced someone to buy it for $580,000,000! I feel like I’m taking crazy pills!

This does, however, give me an idea. A sure fire hit. I’m going to spend a little time doing some research on the road. I’m going to find all the worst drivers in the world and I’m going to learn what makes them tick. Then, I’m going to take that knowledge and (get this) OPEN MY OWN DRIVING SCHOOL! I’ll teach people how to piss off every driver on the road. How to drive 55 in the fast lane. How to change lanes without signaling. How to double park. How to apply makeup while they drive. It’ll be an instant hit. MySpace has proven the business model works. All you have to do is offer consumers the means to become incredibly annoying and they will literally beat a path to your door!