Wednesday, July 25, 2012

BCBST Out-of-pocket maximum met before deductible

Recently, my company, Oncologics, was acquired by another company, e+CancerCare, and in the process our health insurance company was changed from Gilsbar to Blue Cross/Blue Shield of Tennessee (BCBST). I'll not go into my feelings on this transition right now (they are mixed, although I feel better about the switch now than when I initially learned the details of the new plan). However, I have found something interesting.

Our plan is a high-deductible health plan, with an annual (in-network) deductible of $5,000. It also has an out-of-pocket (OOP) maximum of $5,000 (that is, the same as the deductible). What is interesting is that certain things we pay for do not count towards the deductible, but do count towards the out-of-pocket maximum. Actually, I've only found one thing so far in this category, and that is co-payments for drugs on the preventive drug list (which are covered 100% after a copay, without needing to meet the deductible). Megan filled a prescription for one of these drugs, and paid a $25 copay. This amount was applied to our OOP max, but not our deductible.

We had other medical expenses that fulfilled the remainder of our deductible and OOP amounts, and so now pay nothing to go to the doctor or fill a prescription. However, as you can see in the picture, BCBST still has us needing another $25 to fulfill our deductible. It is interesting because we will never meet the remainder of our deductible this year, yet everything will be paid for at 100%. This is a byproduct of the OOP max being the same as the deductible, without an area between the two where costs are shared between the insurance and the patient.



On an aside, snag.gy is pretty cool.

EDIT: 6/6/2016 - Well, I guess Snag.gy is not a good location for long term storage of pictures (lol, I probably could have guessed that!). I'll have to remember that in the future.

Saturday, June 16, 2012

Ditching Hamachi for Neorouter: Samba, Privoxy, and NX NoMachine services

I have been a LogMeIn Hamachi user for some time. I mainly use the free version to access my home network from places outside the home. Today I found out that LogMeIn has recently reduced the number of computers allowed per network from 10 (or maybe more?) to only 5. While I can get just barely get by with only 5 computers on my Hamachi network, I decided it was time to part ways with Hamachi and try a different VPN solution.

I decided to go with the free version of NeoRouter (another alternative is Wippien). NeoRouter allows 256 computers on a network. So I should be OK. I actually had done some preliminary testing of NeoRouter (NR) last year, but had forgotten all about it. This time I was determined to get it working so I could leave Hamachi. I'll detail here some of the issues I had with the process:

Installation and NeoRouter configuration

First off, NeoRouter requires more configuration than Hamachi, but I don't think it's really too bad. The one missing feature from the free version is that NeoRouter doesn't provide a server for linking up the computers in your VPN. You have to provide your own server. I run a Linux box at home for file backup purposes, and also for proxying web traffic on occasion (using the free Privoxy software), so this isn't really a huge deal for me. They do do a little server stuff on their side by providing a domain name service that is useful for if you have a dynamic public IP address, so you don't have to remember or type in an IP address to connect. But you will need an always-on machine to run the free NR server software. And if you have a NAT router (which you should!), you will probably need to port forward the proper port for NeoRouter (default is port 32976; I changed it to something else for a little added security).

Installation was pretty straightforward, both on Debian Linux (Squeeze 6.0.5) and Windows 7. I got some guidance from http://aproductivelife.blogspot.com/2009/10/switching-from-hamachi-to-neorouter.html. One thing to note is that the NR Configuration Explorer is for Windows only, so NR says you must install the software on a Windows computer on the same local network to administer an NR server on Linux. However, you can administer it from a web interface available from their website.

Another thing I learned was that you can log into the server configuration using any administrator level user that is on the Linux box. When you log in, a new user is created in the NR Configuration Explorer with the credentials of the user you logged in with. These users cannot be changed in the NR Config. They are tied to the users on the server computer. Basically, you can't change the password in the NR Config for these users; you will have to change the password for the actual user on the Linux box if you want to do that.

I had to install the NR Client software as well on the server, since I wanted to connect to the computer as well as have it connect the various computers on the VPN.

Services

Below I'll detail what I had to do to get everything working like it did before with Hamachi:

NX NoMachine

I remotely connect to the Linux box using the NX NoMachine software (both as the server on the Linux machine and as clients on the Windows machines). This previously worked fine under Hamachi (I'm not sure if I had to do anything special back when I first got it all working a few years ago). After installing NeoRouter on all the machines, the NX software seems to work fine. All I did was change the destination IP address in the client software to the new NR VPN address for the Linux box.

Privoxy

The Privoxy service must be told to listen on the new IP address. It is fairly straightforward:
  1. At the terminal, enter gksudo gedit /etc/privoxy/config
  2. Scroll to section 4.1 listen address
  3. Change the listen-address to whatever the NR assigned IP address is. Use whatever port you'd like. 
    1. Example: listen-address 10.63.2.8:5555
  4. Save and exit
  5. Restart the Privoxy service by entering sudo /etc/init.d/privoxy restart at the terminal.
Of course, you'll have to update the devices that connect to the proxy to the new NR IP address.

Samba

The Samba configuration is also pretty straightforward. I set up my Samba server to use a guest account that doesn't require users to enter a username or password, following the instructions at http://www.debuntu.org/guest-file-sharing-with-samba. To include the NeoRouter network adapter as an interface Samba binds to, follow these steps:
  1. At the terminal, type sudo ifconfig  Note the interface name of the NeoRouter interface
    1. Mine was nrtap
  2. Type gksudo gedit /etc/samba/smb.conf
  3. Scroll to the "Networking" section. Next to interfaces, include the interface name noted in step 1.
    1. For example, mine was interfaces = lo eth0 ham0 after installing NR. I added nrtap so it now reads interfaces = lo eth0 ham0 nrtap
  4. Make sure bind interfaces only = yes
  5. Save and close
  6. Enter testparm at the terminal to make sure you don't have any syntax errors in the Samba config file
  7. Enter sudo /etc/init.d/samba reload
  8. Enter sudo /etc/init.d/samba restart

A problem common to both Privoxy and Samba

Although Privoxy and Samba both worked initially after restarting their services, both stopped working after rebooting the Linux computer, and had to be manually restarted to start working again on the NeoRouter interface (both still worked fine for the ethernet and Hamachi interfaces). I did some investigation, and I now believe that NeoRouter isn't starting early enough in the boot sequence to initialize before these services start, thus causing these services to fail to initialize on the NR network interface. It may have something to do with NR not including LSB headers in the script file located in /etc/init.d/nrservice.sh which may mess up the dependency based boot used in Debian. I tried to find a way to change the order that services startup on boot, but wasn't successful. Instead, I added a few lines into the /etc/rc.local shell script to restart those services after everything else boots and NeoRouter is ready. The steps follow:
  1. At the terminal, enter gksudo gedit /etc/rc.local  (gksudo is the graphical sudo command, and gedit is a GUI based text editor. I just feel more comfortable with gedit coming from a Windows background. You can use whatever editor you like to use)
  2. Insert the following lines before the exit 0 line
    /etc/init.d/samba restart
    /etc/init.d/privoxy restart
  3. Save and exit the text editor

That's about it! Assuming you had everything working under Hamachi, you should now be good to go with NeoRouter.

Monday, May 7, 2012

"Liberal attacks on women"

Today's title comes from a recent diatribe disgorged by Moon Griffon that I heard one day while I was driving. Moon Griffon is one of the daytime talk show hosts on the local Fox radio station, but he is purely Louisianan in voice, style, and broadcast area. Now I really can't stand Rush Limbaugh and Sean Hannity, but I don't mind Moon so much, and his accent is just fun to listen to.

However, this particular day he started talking about a study conducted by the National Highway Traffic Safety Administration that found that women, especially older and younger women, were much more likely to be involved in car accidents involving "gas pedal mistakes," i.e. pressing the gas pedal when you meant to press the brake. His response to this study was to slam the federal government and President Obama for their "liberal attacks on women," as he called it. I was so appalled and disgusted that I ended up switching to some pop music station.

My main issue with his ridiculous claims is that Moon completely ignores the scientific process. If he had a complaint about the methods of the study, or something of that nature, then fine, I'd like to hear it. But he seems to accept the study as valid, but uses the facts found by the study to come to the outlandish conclusion that liberals are attacking women. I'm at a loss to what he wants. Does he want the administration to fabricate data to diminish or eliminate the apparent gender disparity in these types of accidents? That would be absurd! Of course, I know what he was really trying to do: he just wanted something, anything, that he could use as ammo for attacks on the left. He really didn't care about the merits of his arguments; as long as he could make some tenuous link to the phrase "liberal attacks on women," he was happy.

I'll take science over spin any day.

Tuesday, April 24, 2012

Hermaphroditic domestic transcendentalism

Today I went to pay my internet bill (we have LUS Fiber, which is awesomely fast and has been very reliable). I accidentally typed in lusfiber.net instead of lusfiber.com. Both apparently go to the same place, but I'm wary of being sent to a fraudulent site when I type in the wrong address. In addition, I couldn't remember if it should be a .org address, like the general utility site lus.org. To make sure I was at the right place, I searched Google for lus fiber. The top hit was the right site, and I saw it was lusfiber.com.

However, there were some funny things about the hit in the search results. Firstly I noticed that the search result had the title of the page as "LUS Fiber | 100% All Cialis". From my years of sorting through spam, I've come to know of Cialis as a drug for erectile dysfunction. It's generally not something I associate with my local government owned internet provider. Also, the brief page extract below the link was "Interested in LUS Fiber for Business Services? Click Here. It had been discriminated after monogamy, that the juarez sex had receive to make his night and all ..." This definitely didn't seem normal.

When I went to the page, I found the normal page. However, I was intrigued. Did my internet provider's website get hacked? I went back to the Google results and followed the link to the cached copy of the page. I was greeted by an amazing essay that is staggeringly and amusingly incoherent. It looks like a computer generated madlib advertising Cialis. I have preserved the cache page at http://gpages.x10.mx/lus_gcache.htm. I will warn you that there are a few anatomical references peppered throughout. The title of this post is a quote from the cacophony of words. It almost reminds me of a really bad translation, like The Backstroke of the West, but it's so off the wall I have a hard time seeing what it possibly could mean.

On a side note, I got distracted with the process of mirroring that page, and never got around to paying my bill.


Wednesday, April 11, 2012

Waveguide replacement leads to large change in machine output

I am currently going through a two year medical physics residency program at Oncologics, Inc, based in Lafayette, Louisiana. Medical physicists work primarily in radiation oncology, and one of our primary responsibilities is to calibrate the radiation treatment machines and test them for proper function. One of these days I mean to write a better explanation of what it means to be a medical physicist, but today is not that day. However, I do have a tale of physics I'd like to tell that may serve as instruction for me or others in the future.

Varian Clinac 600C
A linear accelerator (or linac) is the primary method used to treat cancer with radiation. To the right is a picture of the model we have in service at our Morgan City facility, the Varian Clinac 600C. Last week, one of the main components, called the waveguide, broke down, and needed to be replaced. When our service engineers opened up the machine, they found radioactive material scattered inside, and the physics team determined that, in addition to replacing the waveguide, we needed replace the primary collimator as well. This sets the stage for my story.

A linac does not produce radiation by using radioactive source materials, but instead uses electric fields to accelerate electrons to near light speeds. When the beam is off, the machine is not radioactive. So how did our engineers find radioactive sources inside the machine? In some older machines, like this one, the primary collimator is made of depleted uranium, which is radioactive. Generally this is not a problem, as the radiation level is low, and contained inside the machine. However, in this case, we found that the primary collimator had degraded in places, and some radioactive material was free to spread out of the machine.

I tried to find a good diagram of the parts of a linac relevant to this story, but was disappointed in the internet's offerings. So I made my own rough diagram, shown here. This diagram is obviously simplistic, but it will fulfill my purposes. This diagram is applicable to a Clinac 600C, which only treats with 6 MV photons, and does not use a bending magnet.

Electrons are first accelerated in the waveguide to near light speeds. Since the Clinac 600C is a 6 MV accelerator, electrons are accelerated to 6 MeV, or roughly 0.94 c. At the end of the waveguide sits the target, which is just a piece of tungsten. The electrons slam into the target and produce X-rays via bremsstrahlung, or 'braking" radiation (meaning as they slow down or "brake"). These X-rays have a range of energies, with the max being 6 MeV. (To distinguish photon beams composed of mixed energies from electron beams composed of (relatively) uniform energy, we use the term MV (megavolt) for photons, instead of MeV (megaelectronvolt).)

Once photons are produced, they travel through the primary collimator. The purpose of this collimator is to shape the beam so that it is expanding in a cone the focuses back at the target. As stated above, depleted uranium used to be used for this part, but nowadays we use tungsten, which is not radioactive. After the primary collimator comes the lead flattening filter, which makes the beam flat (i.e. so that the amount of radiation delivered in the center of the beam is approximately equal to the amount near the edges).

The ionization chambers play an important role. Ion chambers are devices that measure the amount of radiation passing through them. The ion chambers in a linac constantly monitor the radiation beam, and turn the beam off when the correct amount of radiation has been delivered (the radiation oncologist determines what is the "correct amount"). There are two chambers, one primary chamber, and one backup chamber that will also terminate the beam in case the primary chamber fails.

Now, back to our story. After much effort on Monday, the service engineers replaced the waveguide and also the primary collimator with one made of tungsten. I and another physicist began our tests of the radiation beam to verify that the beam characteristics were correct and adequate for patient treatment. After several tests, we began the calibration of the radiation output, where ensure that the machine delivers the amount of radiation it is supposed to. This is important because, while a linac has an internal system (called monitor units) to keep track of how much radiation it produces, it takes an outside observer to measure the amount of radiation that is actually delivered to a patient. The machine doesn't know how many monitor units equals how many gray (gray is a unit of radiation). So we adjust the machine output until it is where we want it to be.

When we first measured the machine output, we found it to be 15% higher than before the part replacements. This is a rather large jump, and the parts we replaced really shouldn't cause such a jump. We decreased the output by adjusting the gain on the primary ion chamber (thus increasing the ion chamber signal, which makes the machine terminate the radiation sooner), but ran into problems with the backup ion chamber. The two chambers should agree, so if you adjust one you must adjust the other. However, we ran out of room on the adjustment scale for the backup chamber, and could no longer change its readings. This left us in quite a pickle, because if we can't calibrate the machine properly, we can't treat patients.

We tried several different things, including measuring the beam with different instruments to make sure our readings were correct, and adjusting some different machine parameters and settings. Despite our efforts, the problem remained unsolved.

Then one of the service engineers remembered something he had done when installing the waveguide: Thinking that the previous waveguide had failed because the target located at the end of the waveguide was too close to the primary collimator, he moved the new waveguide and target assembly up approximately 4 millimeters from their previous position. Our initial reaction to this was that 4 mm is too small to make such a large difference, because we usually are concerned about distances of around 1 meter (the distance from the target to the patient), and a 4 mm change would only produce a difference of maybe 1%. However, we realized that in this case we shouldn't be looking at the distance from the target to the patient, but the distance from the target to the ion chambers, which is much smaller. A 4 mm change relative to that distance is significant, especially after taking into account the 1/r² falloff (r is the radius, or distance in this case).

So the engineer adjusted the target location, and we were able to calibrate the machine successfully. The point of the story is that sometimes small changes can have big consequences. When making small changes, we need to be sure that they are small on the appropriate scale. What is small on one scale may actually be large on another scale, and if that other scale is what really matters, then the effect may be large.

Friday, April 6, 2012

Google Chrome - change default print margins

I generally use Firefox, but Megan uses Google Chrome on her laptop because Firefox always freezes for some reason on it. Today I printed something from her laptop using Chrome. (One thing I like about Chrome is that it automatically brings up the print preview when you go to print.)

Upon retrieving the printed paper, I noticed that the margins were rather small. I went and took a look at the print preview again, and found that the default margins are 0.4 inches. I can change the print margins from Default to Custom, but that would be tedious to do each time I go to print. I tried to find a way to change the default print margins, but my usually fruitful searching of Google was unsuccessful. However, I did find that if you print with custom margins, Chrome will remember those settings and use them again next time you print. However, if you close and reopen Chrome, the margins again revert to the default of 0.4 inches.

Trying something else

After nearly 4 years of waiting, I've finally returned. I've decided to use this blog as a place to post cool things I learn about, mostly computer related, but maybe other stuff too, like cool facts from the book that sits on the back of my toilet. However, I still reserve the right to post ramblings about anything else that strikes my fancy.