Saturday, June 20, 2009

HEDIS 2009 Complete

We just completed HEDIS 2009!

For those of you who don't know what HEDIS is, the acronym stands for Health Plan Employer Data and Information Set. In order to obtain accreditation from the National Committee for Quality Assurance, health plans must analyze their health care data to generate percentages related to the quality of care provided by the health care providers. The data is used to compare health plans and provide information about where health care can be improved, for the health plans specifically and for our nation in general.

An easy is example of a HEDIS measure is the percent of pregnant women who obtain the recommended number of prenatal visits before giving birth. This percent is part of the FPC measure (Frequency of Ongoing Prenatal Care). Another example is the percent of children who obtain the recommended vaccinations at specific times during their development. This comprises the CIS measure (Childhood Immunization Status). More complex measures, such as CDC or the set of RRU measures, measure the quality of care for diabetics or the cost of care for specific disorders across the health plan (respectively).

Toward the end of HEDIS, I invented a couple of new words related to the process:
  • HEDISache - A headache brought on by working on HEDIS.
  • THEDIS - Pronounced tuh-he-dis. Alternatively, THEDIouS, pronounced tuh-he-di-ous. - An adjective describing what it's like to review HEDIS data: tedious.
  • HEDIlunch - Lunch with other people who worked on HEDIS, usually after successful completion.
I also see a car with the license plate "PBH" on my way home from work just about every day. It reminds me of the measure, "Persistence of Beta-blocker Treatment After a Heart Attack." Each measure has a three-letter acronym, and this one is abbreviated PBH. My wife rolls her eyes whenever I recite the name after seeing the license plate. I guess I"ll remember that one for a while!

Update: I noted the wrong pregnancy measure, PPC, instead of FPC. It is now correct.

Thursday, May 14, 2009

AHIP Insurance Course

Last week, I completed an introduction to insurance course, Fundamentals of Health Insurance - Part A (Basics of Health Insurance), offered by AHIP, America's Health Insurance Plans, a coalition of health insurance companies. I had decided to take the course online to save paper and money. To prepare for the exam, I studied for a couple of hours every night last week. I had already read all of the material, but it was quite a bit of information to remember, so I was reviewing it and going through the study guide. I took the test Friday and passed. However, I wasn't offered the opportunity to offer any feedback on the course, so I would like to here.

First, I had a number of problems accessing the presentation online. When I would try to load the presentation in Firefox, I received an error message from Java. I tried it on Internet Explorer and received the same message. I checked my version of Java, and it appeared to be up-to-date. I also check my security settings in both Firefox and Internet Explorer. Nothing seemed to be blocking it. I also checked my firewall, but since I was in a hurry, I didn't check it thoroughly. So then I tried my wife's laptop, which is less secure than my desktop PC in terms of browser security and firewall settings, and it worked. I studied using her computer for a few weeks until I had some time to investigate issues on my PC. Finally, I manually updated Java and changed my firewall settings to asked about network connections. It turned out that the Java applet AHIP was using was out-of-date, and I had to allow an exception. I'm not sure if the update or the firewall change resolved the issue, but it worked on my PC.

The presentation itself was also problematic. The data presented was out-of-date by at least 10 years, as the presentation only included data up to the 90s. It appeared that many of the terms, definitions, and trends were also quite out-of-date. The presentation also included a number of "Knowledge Checks" to see if you were understanding the material. About 90% of the time, these questions were completely irrelevant to the material. At first I thought they were from a different chapter, but now that I've finished reading the material, I don't think they were even from the right course. The answers to the questions were not provided in ANY of the material. Fortunately, these questions were only intended to help the student study and did not count toward the final grade. I'm not even sure AHIP even kept track of the answers.

I had contacted AHIP about both problems - with access and the questions - however, they were not much help. The guidance on updating my PC did not help, nor did the tip that "these intermediary quizzes are not graded" - basically saying "skip them". Open the following link to view the email conversation with the AHIP representative:

http://docs.google.com/Doc?id=dff94k46_67gdnxhwhn

At any rate, I was able to overcome these issues, study the material, and pass the test. There were issues with the test, too. The location for accessing the test was oddly placed at the end of the presenation content. If you clicked on it before you were ready or before your test time, that took up 1 of 2 test opportunities, since it would load the official test. I heard a number of people saying they accidentally clicked on it or expected it to be a practice test. This seems to be a bit of poor design.

The test format was a bit odd. It consisted of a number of frames with the browser, with a convenient clock counting down the time left for the test. The questions were multiple choice, but included poorly-written answers like 1) A and B; 2) B and C; 3) A, B, and C; 4) Only A; 5) Only C. These types of questions do not really increase the ability of the test to distinguish between those test-takers who know the material and those who do not. Simpler questions with 3 or 4 clear choices for responses would be adequate.

Some features were actually very convenient, helping the test-taker. One was the "Review" button, which once pressed would flag the question and put it on a list for you to answer later. The other was the button that showed the list of questions to review. The next button, as I heard from a colleague, changed from "Next" to "Submit" on the last question, which is not good if you're not paying attention to the number of questions you've answered. She clicked Submit by accident, without reviewing the questions she had flagged, and as a result, failed the test. Once I completed the test, a list of the questions I answered correctly appeared. Apparently there was a link at the bottom that showed the total percent correct, but I did not see it. I clicked the "Home" button to check to see if I passed the test. When I went back, it did not load the test results. I suppose it was a safety mechanism so that the user does not overwrite a test that was just taken, which would not be good, especially if the taker passes it the first time and fails it the second.

Although all of these problems were present, I did learn quite a bit. The course had a lot of good information about how the insurance industry works and huge number of common terms and definitions. There was some information I did not find as relevant, for example, commissions for agents/brokers, but it would certainly be useful for someone in those fields or working with those fields. I heard feedback from my co-workers that sounded similar to my experiences, but I found that a lot of people order the books. I feel that's a bit wasteful; however, it would have avoided the problems with the online presentation and questions. In the end, the information I learned was very useful, but the presentation could have been better. I hope AHIP reviews the presentation and content and updates the content to include new data and up-to-date definitions.

Saturday, April 25, 2009

Internet Explorer 6 at Work

At my last and current job, my computers have been set up with Internet Explorer 6 as the default browser, even though Microsoft has developed Internet Explorer 7 and version 8, not to mention the flourish of alternative browsers, like Firefox, Safari, and Google Chrome, to mention only a few.

I've noticed that the possible reason for this may be legacy software, software that may exploit some security hole in Internet Explorer 6 in order to operate. At my last job, I downloaded Internet Explorer 7 because I thought it would be more secure while I was performing research. (At my new job, the IT department is much more serious about security, since the company deals with health care data. I am unable to modify much of anything. My screen resolution isn't even permanent!)

When I tried to access one of the company's intranet pages for storing customer information, I received numerous errors while trying to use some of the features. I tried lowering the security settings, updating all sorts of related software, and modifying the connection settings, all to no avail. It just wasn't going to work on Internet Explorer 7.

The software has some serious flaws - it's number 8 on the worst tech products of all time rated by PCWorld and the Computer Emergency Response Team has recommended that internet users not use it at all. So I'm wondering, with all of the security flaws and out-of-date features, why do companies still use it? Do newer versions lack compatibility with legacy software? Is it too difficult and time-consuming to convert to the newest version? Is it easier just to wait until Vista is the defacto operating system for business PCs? What is the reason?

Update: One of my co-workers had IE 8 installed. It was an attempt to help a web interface work better, and it seemed to do the trick! Lesson: Upgrade!

Monday, April 20, 2009

Proc SQL

Today at work, the following conversation took place:

Me: A watched proc SQL never quits.
Supervisor: Or worse, generates errors!

(Note: Proc SQL is procedure for using SQL in SAS.)

Friday, April 10, 2009

Are You Sure - SAS Code

Update on May 20, 2009: Users may wish to add "memtype=data" option to the proc datasets statement to drop only SAS tables (see below). I believe the proc datasets procedure will delete formats and possibly other types of data.

Today I wrote a macro program in SAS to delete all of the contents of a specified library. I programmed a pop-up window to ask the user if they really want to delete everything. Here's the code:

%macro DeleteLib(lib);

%let rusure=N;

/* Pop up a window to ask a question */
%window surewin
#1 @20 "DELETING ALL TABLES!"
#3 @20 "ALL TABLES WILL BE DELETED FROM &lib"
// @20 "Are you sure you would like to delete all tables from &lib?"
@81 rusure 1 attr=rev_video required=yes " (Y/N)"
// @20 "HIT THE ENTER KEY TO CONTINUE"
%display surewin delete;

%put rusure=&rusure;

/* Delete all tables if Yes */
%if &rusure=Y %then %do;

data dummy;
run;

proc datasets library=&lib memtype=data;
save dummy;
quit;

proc sql;
drop table &lib..dummy;
quit;

%put NOTE: All tables have been deleted from &lib.;

%end;

/* Put a comment if No */
%if &rusure=N %then %do;

%put NOTE: No tables have been deleted.;

%end;

%mend DeleteLib;


The first and last line are the beginning and end of the macro program. The second line sets the variable "rusure" (that is, "Are you sure?") to "N" for "No" by default. The next block creates the window and pops it up. In the window the user can specify "Y" or "N" to specify whether to delete the library (think of it as a folder or directory with SAS datasets in it). (The code uses a macro variable "&lib" to insert the name of the library.) If "Y", then the code creates a dummy dataset with nothing in it, runs a program that keeps only the dummy dataset and delete everything else, then it drops the dummy dataset and puts a note in the log. If "N", then it just puts a note in the log.

At first I thought of putting another set of code in there as a double-check: An additional window asking "Are you REALLY sure you want to delete the library?" then running another Y/N if statement. But then I thought that might be a little annoying to have to deal with so many windows.

It would have been a funny April Fool's joke to insert a series of windows into someone's program asking, "Do you want to run this program?", "Are you sure you want to run this program?", "Are you REALLY sure?", "REALLY, REALLY sure?", "Wouldn't you rather run another program?". The user would have to keep hitting Y or N over and over again to get it to work. It would be easy to insert a small line of code referencing another piece of code using a %include statement (for example, %include "c:\AprilFools\rusure.sas";). A trickster could even hide the code after a line of spaces far to the right of the window where no one would find it.

If anyone tries that, let me know what happens!