July 2008

Design Patterns are in Purgatory

So I’m browsing back through Christer Ericson’s blog and see his article Design Patterns are from Hell, in which he states that the original/classic Design Patterns book from The Gang of Four is “one of the worst programming books ever”. It wouldn’t make my list (Beyond Java was pretty bad), but it’s nice to hear someone else say it’s not the greatest thing since sliced bread. I’ve complained about design patterns to a few (tolerantly-amused) coworkers, and touched on it in an old anti-Agile essay, but I didn’t want to digress into an unfocused grumpy old programmer mode.

I didn’t learn about design patterns until relatively late, near the end of the 90′s, but that’s probably because I started programming before 1990 and I started my career in Lisp. In my experience, you never see Lisp programmers hanging around talking about design patterns – they’re usually talking about something much more interesting. And, per Peter Norvig’s argument, design patterns don’t seem all that important when you’re programming in Lisp. If you need to apply a function through a list or tree, it’s a natural feature of the language – you don’t need to announce “I think I will apply a Visitor pattern”.

I first heard about design patterns when a new hire in my group asked me if he could expense the design patterns book, which had been taught in his college. Since I’d never heard about it, I said no, but when he purchased it on his own and I leafed through it, I regretted my rejection – the book didn’t bring any epiphanies, but it’s nice to recognize all these techniques you’ve been using with names attached. And it turned out, I had heard of design patterns before – while taking breaks in the library of the Space Telescope Science Institute, reading Richard Gabriel‘s columns in the Journal of Object Oriented Programming on applying pattern languages to software, inspired by architect Christopher Alexander‘s attempt to create pattern languages for urban planning. (next time you get an interview quiz on design patterns, ask your questioner about the relationship to Alexander’s work and to what extent Alexander’s design patterns are considered successful – so there!)

Design patterns started to seem important after I switched to Java – the libraries just ooze design patterns, and you’re going to learn them names whether you want to or not (Factory, anyone?) But at least the Java API’s are well designed (the greatest appeal of Java for me) Since then, design patterns have come up only in annoying situations, for example:

  • A VP of Engineering vigorously trying to convince I should have used the Flyweight pattern in one of my programs. It turns out I was using the flyweight pattern – I just didn’t know it was now a pattern and had that name, and even though I explained how my program worked, since I didn’t say “flyweight” he felt I was missing the boat.
  • A review of a coworker’s fix to my code – he delightedly said “Ah, that’s a singleton!”, and proceeded to apply the fix clearly without understanding the code (there were multiple instances of the same code that each needed the fix – ironically, he missed that “pattern”)
  • A coworker who called everything he did twice a pattern, even when it was terrible. Especially when it was terrible. With some exaggeration, it would be as if I deliberately had divide-by-zeros everywhere and called it a pattern, thereby justifying it as worthy code.

The same goes for refactoring – heard about, eventually read the classic book (Martin Fowler), seemed somewhat interesting, useful insofar as support by tools like Eclipse, but now after listening to people talk about how they’re going to refactor today, when it should be a natural, ongoing, and unannounced part of programming (how would it go over in a scrum meeting if I said, “I’m going to type, today, maybe spend one hour backspacing, two man hours recompiling…”) – enough already!

Books
Programming

Comments (8)

Permalink

wininet vs. libcurl

When I worked on an Internet gateway for a startup named Neomar at the end of the dot-com boom, I made the mistake of writing an HTTP implementation from scratch. It’s a good way to learn the nitty-gritty of HTTP, but in retrospect, it would have made sense to use some an already-mature HTTP library.

Recently, I had some more HTTP work come my way, and this time I looked at Wininet, which comes native with Windows, and libcurl, a popular cross-platform library.

Wininet of course has the advantage of being already there, but it has the painful inelegance typical of Microsoft API’s (at least up til .NET) Take this example from the Microsoft Knowledge base of how to create a POST request:

static TCHAR hdrs[] = _T("Content-Type: application/x-www-form-urlencoded");
static TCHAR frmdata[] = _T("name=John+Doe&userid=hithere&other=P%26Q");
static LPSTR accept[2]={"*/*", NULL};
// for clarity, error-checking has been removed
HINTERNET hSession = InternetOpen("MyAgent",INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
HINTERNET hConnect = InternetConnect(hSession, _T("ServerNameHere"),INTERNET_DEFAULT_HTTP_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 1);
HINTERNET hRequest = HttpOpenRequest(hConnect, "POST",_T("FormActionHere"), NULL, NULL, accept, 0, 1);
HttpSendRequest(hRequest, hdrs, strlen(hdrs), frmdata, strlen(frmdata));
// close any valid internet-handles

Compare with a POST example from the libcurl tutorial:

curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS, data)
curl_easy_setopt(easyhandle, CURLOPT_URL, "http://posthere.com/");
char *data="name=daniel&project=curl";
curl_easy_perform(easyhandle); /* post away! */

The libcurl example is missing a couple of function calls to be complete – one to initialize libcurl, and one to clean it up. On the other hand, the wininet example is missing a few cleanup calls (one for each of the three HINTERNET handles created), and, a bigger pain, it doesn’t take a URL – you would have to call InternetCrackURL and allocate a structure that receives the URL components, then use those components in the example calls.

I’ve just started on this project, but I’m ready to declare winner.

Programming

Comments Off

Permalink

Places I’ve Been

TripAdvisor makes it easy to embed a places-I’ve-been map in a web page:

As you can see from the map, I’ve gotta get out of the country more (at least to Mexico). The map is “Powered by Google” so you could of course just use Google Maps directly, but if you’re a TripAdvisor reviewer, this map will link to your profile and contributions.

I haven’t tried review-writing, but it seems TripAdvisor is the go-to site for travel reviews (my trip-preparation google searches always end up there). The Terms of Use reserve the right to edit your review, and the wording isn’t very clear (compared to Epinions) on whether you retain ownership (but the implication is that you do). On the other hand, it doesn’t seem to include an indemnification clause, which is a refreshing change.

Travel

Comments Off

Permalink

Comic-Con

Just got back from my first Comic-Con. Although there’s a huge and packed exhibit hall (even for the one Thursday I was there, which I assume is the least busy day), it doesn’t feel like a commercial show – it’s all about the fans. In a typical trade show, even E3 and the Tokyo Game Show, three hours and I’ve had enough. I managed to kill eight hours at Comic-Con and could have hung around longer (presentations and films continue until midnight), but the sun was going down and I was wearing shades.

I started off by walking through the exhibit hall, went to the new Battlestar Galactica panel moderated by Richard Hatch, caught the end of a presentation by Will Wright (on his new game Spore, but he was showing slides of Werner Von Braun when I walked in), saw a cast member of Heroes surrounded by a small mob, walked through the exhibits again, loitering mostly around the artists autograph tables, went back upstairs and caught a couple of anime shows, watched a few screenings of indie short films with Q&A of the filmmakers, walked through the autograph signing booths and got an autograph (and friendly chat) from Lt. Boomer of the original BSG, back down to the exhibit hall, started to leave as it got increasingly crowded, decided to go back for another pass, realized I missed a whole section, bought a Storm Bringers comic, started to leave again, came back for another pass, realized there was still at least a third of the exhibit I hadn’t seen, bought three books from Design Studio Press, saw Robert Culp in animated discussion with a fan, chatted at various booths for the indie game Cyborg Mice, the geek-themed social network MyNerdGirl and some self-published comic book authors, got farther out the door but decided to step in the last hall I hadn’t visited and caught the end of a Q&A with Jeremy Piven and other cast of the movie Rock and Roll, was rewarded for staying that long with a ticket stub and spent another half hour waiting to pick up the free t-shirt. A great deal for $25.

Film
Television

Comments Off

Permalink

Salary Review

For those game programmers who actually want to make money in the field, there’s a nice article from Christer Ericson.

The post includes an Excel file of the data, but here’s the posted version that gives you an idea who to shoot for and who to avoid. I’ve worked for a few of these companies, on the low end and in the high end, and it does accord with my experience.

Employer Work city State Job title Wage
Capcom Entertainment San Mateo CA Engineering Manager $160,000
High Moon Studios Carlsbad CA Technical Director $155,300
SCEA Foster City CA Senior Staff Software Engineer $142,050
LucasArts San Francisco CA Lead Engineer $140,000
SCEA Foster City CA Senior Software Engineer $138,100
Activision Publishing Santa Monica CA Senior Programmer Analyst $130,000
Zipper Interactive Redmond WA Software Manager $130,000
Pixar Emeryville CA Software Engineer (Image Mastering SWEng) $125,008
Midway Amusement Games Chicago IL Senior Software Engineer $125,000
Rockstar San Diego Carlsbad CA Lead Programmer $125,000
SCEA Foster City CA Staff Compiler Engineer $123,900
id Software Mesquite TX Programmer $123,670
Disney Interactive Studios Burbank/Glendale CA Technology Director $121,500
Digital Domain Venice CA Senior Software Engineer $120,000
LucasArts San Francisco CA Senior Core Engineer $120,000
Rockstar San Diego Carlsbad CA Lead Programmer $120,000
Rockstar San Diego Carlsbad CA Lead Programmer $120,000
SCEA Foster City CA Senior Developer Support Engineer $118,400
Backbone Entertainment Newport Beach CA Lead Rendering Programmer $118,359
Sony Online Entertainment San Diego CA Senior Programmer $117,683
Sony Online Entertainment San Diego CA Senior Programmer $117,683
Visual Concepts Entertainment Novato CA Senior Software Engineer $117,495
SCEA Foster City CA Software Engineer $117,450
SCEA Foster City CA Senior Software Engineer $115,800
Electronic Arts Redwood City CA Software Engineer $114,275
SCEA Foster City CA Senior Software Engineer $114,000
Crystal Dynamics Redwood City CA Programmer $113,300
Naughty Dog Santa Monica CA Software Research Engineer (Games Software) $113,200
Crystal Dynamics Redwood City CA Senior Programmer $111,200
Visual Concepts Entertainment Novato CA Software Engineer $110,770
Activision Publishing Santa Monica CA Software Engineer – Game Design $110,000
DreamWorks Animation Redwood City CA Senior Software Engineer $110,000
LucasArts San Francisco CA Senior Software Engineer $110,000
LucasArts San Francisco CA Senior Software Engineer $110,000
SCEA San Diego CA Computer Scientist $110,000
Electronic Arts Redwood City CA Technical Director $109,054
SCEA Foster City CA Staff Software Engineer $108,846
SCEA Foster City CA Staff Software Engineer $108,846
Electronic Arts Redwood City CA Senior Artificial Intelligence Engineer $107,133
Rockstar San Diego Carlsbad CA Lead Programmer $106,000
Rockstar San Diego Carlsbad CA Programmer $106,000
Activision Publishing Santa Monica CA Programmer Analyst $105,000
Factor 5 San Rafael CA Senior Software Engineer $105,000
Vivendi Games Los Angeles CA 11i Development Manager $104,500
Vivendi Games Los Angeles CA 11i Development Manager $104,500
Vivendi Games Los Angeles CA Applications Development Manager $104,500
Electronic Arts Redwood City CA Senior Software Engineer $104,247
Electronic Arts Redwood City CA Software Engineer $104,247
Electronic Arts Redwood City CA Software Engineer $104,247
PDI/DreamWorks Glendale CA Production Engineer $103,430
SCEA Foster City CA Senior Software Engineer $103,050
SCEA Foster City CA Senior Software Engineer $103,000
Midway Studios-Austin Austin TX Lead Gameplay Programmer $102,500
Midway Studios-Austin Austin TX Lead Gameplay Programmer $102,500
NAMCO BANDAI Games America San Jose CA Software Engineer $102,500
Left Field Productions Ventura CA Software Engineer $101,972
Page 44 Studios San Francisco CA Computer Software Engineer $100,420
Page 44 Studios San Francisco CA Computer Software Engineer $100,420
PDI/DreamWorks Redwood City CA Production Engineer $100,000
DreamWorks Animation Glendale CA Senior Software Engineer $100,000
LucasArts San Francisco CA Senior Gameplay Engineer $100,000
NAMCO BANDAI Games America Santa Clara CA Software Engineer $100,000
Naughty Dog Santa Monica CA Senior Programmer $100,000
Obsidian Entertainment Santa Ana CA Computer Software Engineer $100,000
Rockstar San Diego Carlsbad CA Programmer 4 $100,000
SCEA San Diego CA Software Engineer $100,000
THQ Kirkland CA Senior Software Engineer $100,000
Vivendi Games Los Angeles CA Associate Technical Director $100,000
Neversoft Entertainment Woodland Hills CA Senior Artificial Intelligence Programmer $99,144
SCEA Foster City CA Senior Software Engineer $99,000
Activision Publishing Santa Monica CA Programmer Analyst $98,800
SCEA San Diego CA Software Engineer $98,150
Activision Publishing Santa Monica CA Senior Software Engineer $98,000
Midway Amusement Games Chicago IL Programmer $98,000
Sony Online Entertainment San Diego CA Senior Software Engineer $98,000
DreamWorks Animation Glendale CA Senior Software Engineer $97,958
Electronic Arts Emeryville CA Software Engineer $97,906
Electronic Arts Emeryville CA Software Engineer $97,906
Electronic Arts Emeryville CA Software Engineer $97,365
Electronic Arts Redwood City CA Software Engineer (Software Engineer III) $97,365
Z-AXIS Ltd (Activision) Foster City CA Senior Software Engineer $97,365
Retro Studios Austin TX Senior Software Engineer $95,940
Visual Concepts Entertainment Novato CA Software Engineer $95,025
DreamWorks Animation Glendale CA Software Engineer $95,006
DreamWorks Animation Glendale CA Software Engineer $95,000
DreamWorks Animation Redwood City CA Production Engineer $94,500
High Moon Studios Carlsbad CA Senior Programmer $94,500
SCEA Foster City CA Software Engineer $94,400
SCEA San Diego CA Software Engineer $94,400
LucasArts San Francisco CA AI Engineer $93,000
Electronic Arts Chicago CA Software Engineer $92,099
Electronic Arts Chicago CA Software Engineer $92,099
Electronic Arts Chicago CA Software Engineer $92,099
Electronic Arts Chicago CA Software Engineer $92,099
Activision Publishing Middleton CA Software Engineer $92,000
Midway Studios – Los Angeles Moorpark CA Online Game Programmer $92,000
Retro Studios Austin TX Software Engineer $92,000
Neversoft Entertainment Woodland Hills CA Project Programmer $91,584
id Software Mesquite TX Programmer $90,000
LucasArts San Francisco CA Software Engineer $90,000
Naughty Dog Santa Monica CA Senior Programmer $90,000
Page 44 Studios San Francisco CA Computer Software Engineer $90,000
Pixar Emeryville CA Software Engineer (Technical Director) $90,000
Secret Level San Francisco CA Tools Programmer $90,000
THQ Los Angeles CA Senior Programmer $90,000
Electronic Arts Redwood City CA Programmer Analyst $88,569
Backbone Entertainment Newport Beach CA Lead Rendering Programmer $88,000
Nintendo of America Redmond WA Senior Programmer/Analyst $88,000
Visual Concepts Entertainment Novato CA Software Engineer $87,975
Apogee Software Campbell CA Software Engineer $87,006
Apogee Software Campbell CA Software Engineer $85,000
LucasArts San Francisco CA Computer Programmer $85,000
LucasArts San Francisco CA Gameplay/Artificial Intelligence Engineer $85,000
Naughty Dog Santa Monica CA Senior Programmer $85,000
NCsoft Corporation Austin TX Tools Engineer $85,000
Retro Studios Austin TX Software Engineer $85,000
SCEA Foster City CA Developer Support Engineer $85,000
SCEA Foster City CA Developer Support Engineer $85,000
The Collective Newport Beach CA Computer Systems Analyst (Sr. Maya Prg) $85,000
THQ Moorpark CA Senior Software Engineer $85,000
Zipper Interactive Redmond WA Software Engineer $85,000
Zipper Interactive Redmond WA Software Engineer $85,000
Pixar Emeryville CA Software Engineer (Technical Director) $84,942
Electronic Arts Tiburon Orlando CA Software Engineer III $84,698
Electronic Arts Redwood City CA Programmer/Analyst $84,240
Electronic Arts Redwood City CA Software Engineer $84,240
Electronic Arts Redwood City CA Software Engineer (Senior Lead Online Dev) $84,240
SCEA Foster City CA Software Engineer $83,600
Electronic Arts Redwood City CA Software Engineer $83,512
Electronic Arts Redwood City CA Software Engineer $83,512
Sanzaru Games San Mateo CA Senior Engineer $83,512
Sanzaru Games San Mateo CA Senior Engineer $83,512
WildTangent Redmond WA Senior Software Engineer $83,500
SCEA Foster City CA Software Engineer $83,440
Nintendo of America Redmond WA Senior Bilingual Software Engineer $83,242
Valve Corporation Bellevue WA Software Engineer $83,242
Valve Corporation Bellevue WA Software Engineer $83,242
Activision Publishing Santa Monica CA Software Engineer $82,900
SCEA Foster City CA Software Engineer $82,400
Z-AXIS Ltd (Activision) Foster City CA Senior Software Engineer $81,890
Electronic Arts Orlando CA Software Engineer $81,471
Activision Publishing San Francisco CA Systems Analyst – Product Development $81,000
Electronic Arts Playa Vista CA Software Engineer $80,925
Nintendo Software Tech Corp Redmond WA Engineering Specialist $80,450
Kush Games Camarillo CA Software Engineer $80,000
LucasArts San Francisco CA Gameplay Engineer $80,000
Rockstar San Diego Carlsbad CA Programmer $80,000
SCEA San Diego CA Software Engineer $80,000
Electronic Arts Tiburon Orlando CA Software Engineer $79,404
Sennari Entertainment Cupertino CA Software Engineer – Lead Programmer $79,000
Electronic Arts Redwood City CA Senior Software Engineer $78,293
Electronic Arts Redwood City CA Software Engineer $78,293
Kush Games Camarillo CA Software Engineer $76,000
Visual Concepts Entertainment Novato CA Software Engineer $75,490
Arete Seven (dba Bungie) Kirkland WA Software Development Engineer $75,000
Arete Seven (dba Bungie) Kirkland WA Software Development Engineer $75,000
DreamWorks Animation Glendale CA Software Engineer $75,000
DreamWorks Animation Glendale CA Software Engineer $75,000
Firaxis Games Hunt Valley MD Software Engineer – Gaming Systems $75,000
Activision Publishing Albany CA Programmer Analyst $74,900
High Impact Games Los Angeles CA Game Programmer $74,000
High Impact Games Los Angeles CA Game Programmer $74,000
Electronic Arts Emeryville CA Software Engineer (Audio Software Engineer) $73,278
Gas Powered Games Corporation Redmond WA Graphics Engineer (PC) $72,500
Red Storm Entertainment Morrisville NC AI Engineer $72,000
Vicarious Visions Menands NY Game Programmer $71,470
Arete Seven (dba Bungie) Kirkland WA AI Programmer $70,000
Arete Seven (dba Bungie) Kirkland WA Artificial Intelligence Programmer $70,000
Idol Minds Louisville CO Senior Games Programmer $70,000
Kush Games Camarillo CA Software Engineer $70,000
LucasArts San Francisco CA UI Interface Engineer $70,000
THQ Carrollton CA Software Engineer $70,000
Electronic Arts Redwood City CA Software Engineer $69,700
Electronic Arts Playa Vista CA Software Engineer $69,362
Electronic Arts Playa Vista CA Software Engineer $69,362
Electronic Arts Tiburon Orlando CA Software Engineer $68,543
Pixar Emeryville CA Software Engineer $67,600
Pixar Emeryville CA Software Engineer (Technical Director) $67,600
Activision Publishing Albany CA Software Engineer $66,200
Activision Publishing Santa Monica CA Software Engineer $66,000
Electronic Arts Redwood City CA Software Engineer $65,325
Electronic Arts Redwood City CA Software Engineer $65,325
Electronic Arts Redwood City CA Software Engineer $65,325
Electronic Arts Redwood City CA Software Engineer $65,325
Arete Seven (dba Bungie) Kirkland WA Game Designer $65,000
Blue Heat Games Atlanta GA Lead Programmer $65,000
High Impact Games N Hollywood CA Computer Systems Analyst $65,000
High Moon Studios Carlsbad CA Associate Programmer $65,000
Obsidian Entertainment Santa Ana CA Software Engineer $65,000
Pixar Emeryville CA Software Engineer (Technical Director) $65,000
Sony Online Entertainment San Diego CA Computer Systems Engineer $65,000
High Impact Games N Hollywood CA Computer Systems Analyst $62,000
Nintendo Software Tech Corp Redmond WA Engineering Specialist (Software Engineer) $61,300
Electronic Arts Chicago CA Software Developer $60,606
Midway Amusement Games Chicago IL Software Engineer $60,000
Obsidian Entertainment Santa Ana CA Software Engineer $60,000
Raven Software Solutions Jacksonville FL Software Engineer $60,000
Raven Software Solutions Jacksonville FL Software Engineer $60,000
Ready At Dawn Studios Santa Ana CA Software Engineer $58,000
Ready At Dawn Studios Santa Ana CA Software Engineer $58,000
THQ Los Angeles CA Software Engineer $57,803
Electronic Arts Tiburon Orlando CA Software Engineer $57,701
THQ Kirkland CA Software Engineer $57,000
High Voltage Software Hoffman Estates IL Software Engineer $56,000
Activision Publishing Albany CA Software Engineer $55,000
Kush Games Camarillo CA Software Engineer $55,000
Kush Games Camarillo CA Software Engineer – Games $55,000
Raven Software Solutions Jacksonville FL Software Engineer $55,000
Raven Software Solutions Jacksonville FL Software Engineer $55,000
Visual Concepts Entertainment Novato CA Software Engineer (Game Tools) $55,000
Visual Concepts Entertainment Novato CA Software Programming Engineer $55,000
Realtime Associates El Segundo CA Computer Programmer $53,500
SCEA Austin CA Software Engineer $52,374
Big Fish Games Seattle WA Software Development Engineer in Test $52,250
Electronic Arts Chicago CA Software Engineer $51,071
THQ Moorpark CA Programmer $51,000
Insomniac Games Burbank CA Associate Gameplay Programmer $50,050
Idol Minds Louisville CO Games Programmer $50,000
Kush Games Camarillo CA Computer Programmer $50,000
THQ Los Angeles CA Game Programmer $50,000
Papaya Studio Irvine CA Game Programmer $48,000
Electronic Arts Tiburon Orlando CA Software Engineer $46,839
THQ Los Angeles CA Game Programmer $45,000
THQ Los Angeles CA Software Engineer $45,000
Electronic Arts Bountiful CA Software Engineer $42,588
Papaya Studio Irvine CA Game Programmer $38,000

Games/Graphics

Comments Off

Permalink

Nessie

WordsEye

Comments Off

Permalink

Web Site Revisions

I’ve been meaning to remark on a couple of web sites, but the oddities I saw a few weeks ago are gone:

  • LegalZoom – I visited this site for low-cost legal services after repeatedly seeing ads on CNBC featuring founder Robert Shapiro, of O.J. trial fame. Strangely, the site had a page of endorsements solely from Fox News talk show hosts (does Bill O’Reilly really need cheap legal advice?). That page is entirely gone, now.
  • MoveOn – I vaguely recall seeing somewhat obnoxious political ads from them in past elections and indignant Republican responses (but nothing lately, are they getting less attention?), but only recently visited their web site. The top campaign asked visitors to express their outrage at Wesley Clark’s comment about McCain being taken out of context. Right below that, a list of Top Ten Things You Should Know About McCain, with a bunch of snippets taken out of context (what did you expect, top ten expansive essays?) Stuff like, did you know John McCain is one of the richest members of Congress? (Who cares? What’s the cutoff – Clinton-rich is OK, but McCain rich is too rich?) Top ten lists are great for talk-show comedy bits and, well, blogs (try googling “McCain top ten”), but not so great for political discourse. The list is still there, but the Clark campaign is now gone – can’t even find it in their campaign archives.

This leads me to a few conclusions:

  1. When I see something that looks ridiculous on a web site, it seems I’m not the only one.
  2. If I want to blog about it, I’ve gotta move faster.
  3. There’s plenty of regular revision work out there for web designers.

Law
Politics

Comments Off

Permalink

Nesting

WordsEye

Comments (1)

Permalink

Don’t Call Me Ralph

After watching my health insurance premiums increase five-fold over the last six years, without every incurring expenses beyond my deductible, I finally got around to switching from Healthnet to another provider.

Besides getting my premiums back down, I wanted a plan that was HSA-compatible. But applying for new health insurance is a pain, even on ehealthinsurance, so I wouldn’t have bothered if I didn’t still have a grudge against Healthnet from a few years ago, when they cashed my premium check, told me they hadn’t received it, and then cancelled my policy. And then since I’d shown high cholesterol from a recent doctor’s visit, I had trouble finding new coverage (Blue Cross sent me a rejection letter that said I was welcome to apply to one of their “high risk” programs)

Contrary to the standard riff that health coverage would work better if government got out of the way of private insurers, the State of California came to my rescue. Following the instruction in my Healthnet manual, I sent a complaint to the California Department of Managed Health Care, which within a few days replied that they only handle HMO’s and not my PPO plan, but they did examine my complaint and agree it appeared valid, so they forwarded it to the appropriate agency, the California Department of Insurance, which also promptly replied saying they sent Healthnet an inquiry.

Shortly after, I received a letter from the Healthnet legal office explaining that the policy number I’d written on my check had been “illegible” so they’d deposited it in another account (apparently the account where they cash any checks they can’t identify, that’s what “illegible” means, right? – I suppose it was too much trouble to check the name and address on the envelope?).

Their not-so-subtle attempt to blame me was undermined by typing the wrong name on the letter. In contrast, the case officer from the Department of Insurance sent me a letter some months later apologizing for not following up sooner with details of the reply from Healthnet.

Consumer

Comments Off

Permalink

Insomnia

WordsEye

Comments Off

Permalink