Transparency in Health Care Billing

After some discussion with a quite intelligent friend it seems to me that in the interest of transparency in health care billing we should require health care providers to do the following 3 or 4 things:

Give you and estimated bill for pre-scheduled appointments.

Have patients sign off if you want, do it electronically if you want, but I should be able to see list of ID10 codes and what they intend to charge you + your insurance company for each one. Exceptions include appointments scheduled less than 24 hours in advance, walk in services, emergency care, discovery of need during examination.  This leaves the door open in the future for auditing estimates vs actual if needed. Can list the ‘uninsured’ rate since they may not know what the agreed rate with the insurer may be.

NOTE: This has nothing to do with how much insurance will pay or what you’ll be left to pay, simply how much each code will be billed for.

Publish a list of what they charge uninsured customers for each ID10 code.

On your website, in print, what have you, just let customers cross shop your services with other hospitals in the area. This becomes less important depending on the option taken below.

Line item each ID10 code on your bill and what you were charged.

Transparency is good- I should get to know what you submitted to my insurance and what you charged me for so I can compare it to your estimate.

Add a column the bill with what they accept from Medicare for the same service

Transparency again, show me what the government believes that to be worth. Column not required for those who do not accept Medicare.


Make the Medicare payment the maximum they can charge for that code.

Simple, if you choose to take Medicare, you acknowledge that fee schedule is valid, and you should accept that amount from me. Providers not accepting Medicare are exempt.

Christmas is coming!

And with the arrival of Christmas I get a great excuse to set up my Lionel train.

This 1958 model was set #1590 and was considered a “Budget” set in the day.


My grandfather got it from the bank for making deposits into his savings account, and gave it to my uncle Curt for Christmas that year. I’ve had it for 10+ years and it comes  out now and then for Christmas. I cleaned it up and got it running again this year under the tree. Luckily since grandpa was a TV repair man he kept it well maintained!

I’ve ordered the truck that goes on the flatbed, as well as a few other bits and pieces to get it back in tip top shape.

IPCam + WordPress Widgets

So recently Michelle and I have been auditioning a couple options for baby monitor. My favorite so far is the Foscam F19821Wv2 Wired/Wireless IPCamera. It can stream 720p 30fps, has auto Night vision that is very crisp, includes two way audio and can record “events” to a micro SD card should we want to. We’ve been using tinCam Monitor PRO ( on either our phones or my old samsung galaxy tab as a monitor. For testing I’ve pointed the camera at the fishtank, since we don’t have a baby room or a baby to watch yet!

In testing I forwarded ports from the outside world so we could “watch” from anywhere, knowing I wouldn’t be doing that for the ones trained on our child, but still, a neat exercise. While showing my mother in law and watching my fish I decided it’d sure be nice to always have a cam on the fish! (duh!) That immediately led to the idea that it’d be nice if I could share that with the world as well, right here on this site!

First pass was a light googling of ways to grab, and re-stream the h.264 video it’s producing: DEAD END. Not any good easy to install on my servers software solution for this, and everything that did exist required an in-between step on a box constantly running on my home network. Silly.

Then I thought “Okay, lets just grab a static image” – there are lots of posts by one guy hawking a paypal $9.99 download of PHP script to “Securely” do this. Seems like a waste of money, as using CuRL to do so is pretty easy, but has one glaring problem: Every hit on the website is a hit on the camera.

I wanted a solution that would cache the image, if it hadn’t been updated in the last X minutes it should go get a fresh one using CuRL or wget or whatever method, save it to my server, then serve the copy it just saved up. That would eliminate clients hitting the camera directly (Oh so insecure, you now know my home IP! lulz) but most importantly it would keep the load of serving X number of requests an hour off the Camera.

Problem is, people have done bits and pieces of all this of course, but not the entire thing all together. I haven’t done much in the way of wordpress development in ages, so I figured I’d make a widget to do what I wanted and set off using some tutorials to get a widget made. In the process I didn’t want to put my widget in my theme file as it’s a standard one so I made a little plugin, which I found to be useful later. The first pass of the widget code is basic, it takes a name and a cam URL and basically just wraps the cam URL in tags and calls it a day. Simple to get started, excellent:

SyntaxEditor Code Snippet
<pre>class WebCamWidget extends WP_Widget {
    /** constructor -- name this the same as the class above */
    function WebCamWidget() {
        parent::WP_Widget(false, $name = 'Webcam Cache Widget');	
    /** @see WP_Widget::widget -- do not rename this */
    function widget($args, $instance) {	
        extract( $args );
        $title 		= apply_filters('widget_title', $instance['title']);
        $camURL 	= $instance['camURL'];
              <?php echo $before_widget; ?>
                  <?php if ( $title )
                        echo $before_title . $title . $after_title; ?>
								<li><?php echo "<img src='".$camURL."' />" ?></li>
              <?php echo $after_widget; ?>
    /** @see WP_Widget::update -- do not rename this */
    function update($new_instance, $old_instance) {		
		$instance = $old_instance;
		$instance['title'] = strip_tags($new_instance['title']);
		$instance['camURL'] = strip_tags($new_instance['camURL']);
        return $instance;
    /** @see WP_Widget::form -- do not rename this */
    function form($instance) {	
        $title 		= esc_attr($instance['title']);
        $camURL	= esc_attr($instance['camURL']);
          <label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:'); ?></label> 
          <input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" />
          <label for="<?php echo $this->get_field_id('camURL'); ?>"><?php _e('Your Cam URL:'); ?></label> 
          <input class="widefat" id="<?php echo $this->get_field_id('camURL'); ?>" name="<?php echo $this->get_field_name('camURL'); ?>" type="text" value="<?php echo $camURL; ?>" />
} // end class example_widget
add_action('widgets_init', create_function('', 'return register_widget("WebCamWidget");'));

Next steps, I need to take the URL they’re giving me, and use something like CuRL to go get the image and save it to the system. I should do this every so often, sounds like a scheduled job, which I quickly discovered WordPress supports. At this point, I could take the URL, create a little function in my plugin that would grab the image and save it to a known location, and then just spit it out in my widget! Complications arose: I have a widget activate method, so I can keep a few instances (perhaps support multiple cams?) of this widget working, but no widget delete method despite one being proposed but moth balled. If I added the scheduled process in the widget activation section, and pointed to a widget setting for the URL, I would need to delete the scheduled hook when I de-activated or deleted the widget, and I can’t do that.

Generally, I’ll likely end up just making it simpler, I’ll make a real cron-tab on the system that runs some php via command line to get the image and store it every so often, and then I’ll just embed that image in the sidebar and tell ZenCache not to cache it. I thought a reusable widget that could be implemented multiple times for multiple cameras was useful for others, but likely it’d have just sat and wasted away in my site.

Using an Inkbird 1000F For temp control

I knew that my self regulated glass heaters were not keeping the tank temp wise where I wanted it (they were a degree or two higher than I wanted, kicking in until the tank reached 81 degrees). This meant that during the day the tank would drift up to 82 degrees. To combat it, I put a fan on during the day, which was very effective at cooling it, so much so that the heaters would kick in.

The intent was always to have the Controller keep track of the heating of the tank (I have a heater, and heaters class built out to manage tracking hours on heater etc) but as I’ve learned quickly, having discreet solutions to major functions like pump control, lights, heat etc can be beneficial.  While the controller can track temp and even alert me if it goes out of range I prefer having the actual temp control  handled separately. Enter the Inkbird 1000f, a standalone temp control unit, $17 on Amazon.

What is in the box:

That’s the unit on the left, a 7 foot long temp probe in the middle and an instruction manual on the right.

A word on the instruction manual: Better than Expected. It tells you how to navigate the “Menus” afforded by a set of 7 segment displays and most importantly what each “Code” means, as it wasn’t obvious to me.

I did note that on both units I received the plastic on the front had scuffs/scratches though they don’t affect operation/visibility

The temp sensor is a simple, thin rubberized cord with one end terminating in a nub I submerged and the other being pre-tinned and the proper length for using with the controller. I did have to “Split” the wire so I could fully insert them into the screw terminals.

The rear of the unit has four sets of screw terminals along with a diagram on the top, explaining the hookup:

From the left it’s:

  • Power In From the Wall
  • Temp Sensor
  • Heating Relay
  • Cooling Relay

How you hook up the “Relay” portion is personal preference and involves how you’ll be installing it, so I’m going to skip over that and say that the relays will never be in the “on” position at the same time, so if you power whatever devices you use directly from the plug you use for the controller it should be OK.

After getting things hooked up, I turned it on to set it up. First thing was changing the “CF” bit to be Fahrenheit. Now we need to talk about set points and how it determines when to turn on heat or cooling.

First, you tell it your desired temperature (code TS or Temp Set)- I used 78 for this demonstration: you can only specify whole numbers in one degree imcrements between -50 and 210 degrees. Then you tell it how far it’s allowed to drift, called the “Difference Set Value” or code “DS”. This is set in whole numbers again, in one degree increments. I used 1 for the DS. I then set the “Compressor Delay” to Zero as I didn’t want to have to wait any amount of time for the “Cooling” to kick in, as mine is only a fan. If you set this to the default of “3” it will force a 3 minute delay between the “Cooling” turning off and back on, to protect the compressor.

At this point, I’ve told the controller I want to keep the tank at 78 degrees +/- 1 degree. What this will do is turn the heat relay on when the tank hits 77 (off again at 78) and the cool relay on when it hits 79 (off again at 78)

This is fine for me, but others may desire more control to keep the swing less.

Once hooked up I measured the temperature and both units were reporting identical temps, which matched exactly the cheapie coralife temp probe I was using to monitor the tank.

The unit does have a setting “CA” which allows a “calibration value” to be entered- this whole number once again can adjust the readings up and down up to 15 degrees, if you feel it’s inaccurate by more a degree or more.

Overall, seems to be a solid little unit with not much to go wrong. I’ll run two of them each with a 400 watt heater attached, the first with 1 degree difference, the second with 2, and a set of fans attached as the “Cooling” side.

My office is now in the office!

view from my desk chair of my computer desk, and the fish tank in the distance
the office, taking shape

Well, I’ve finally got my office moved into the room that it was “supposed” to be in since installing the fish tank. My basement has two bedrooms, with the smaller of the two serving as my office for the past couple years. When the fish tank project started I determined I would swap and put my office in the larger of the two, and have the fish tank in the wall.  With the fish tank install moving along (hey there are fish and coral in there!) it was time to swap the spare bedroom and the office back around.   Of note, I mounted the 404k monitor on this wall mount, and would give it high marks.