Saturday, November 5, 2011

SOAPWare VPN Resources

I've been helping my parents out with IT tasks down in Silver City for the past three years. A few months ago, we set a system live to comply with the Medicaid and Medicare Electronic Health System "meaningful use" incentive program. For those close to me, you may have noticed right before we set this system live I was going down to Silver City every weekend to work on this. Luckily now things have calmed down and I come about once a month to perform scheduled IT projects.

We switched to the SOAPWare Hosting Service because I believe that the talented people at SOAPWare can maintain a secure, reliable, and functional system cheaper and better than I can (being a dude that lives in Albuquerque and comes to Silver City on the weekends.) The other alternative would have been for me to continue to maintain a server, but to comply with the e-prescription incentive program (part of "meaningful use") we would have had to connect this server to the Internet - making security much more of a concern for a remote administrator such as myself needing to deal with Health Insurance Portability and Accountability Act (HIPPA) . So, the hosting solution sounded good to me!

Things have been working pretty well. One concern I have tried to address this weekend was a slowness associated with the connection when all eight workstations were connected via remote desktop protocol (RDP) to SOAPWare. My mom and the most technically skilled employee at my dad's office both contacted me about it, and I believe the below steps of degrading the quality of the RDP connection should help with this concern, as a degraded connection requires less bandwidth.

I created this post to help employees at my dad's office feel comfortable further adjusting these settings (to degrade visual quality while increasing responsiveness), to provide a nice example of messing with SOAPWare RDP settings to everyone online, and to show how technical documents can be written in the first person with the use of humor and embedded advertisements in a classy way.

In order to make sure a RDP connection doesn't take up as much bandwidth, you can try the below steps. These steps can help you if you are using any kind of RDP connection - not just SOAPWare.

First click on the SOAPWARE VPN Icon as pictured below.
Figure 1 - Beautiful SOAPWare Icon

Next, click on "Options >> " as pictured in Figure 2. Some fields have been redacted due to their importance to National Security.

Figure 2 - Remote Desktop Connection Window - You should click on the red button.

After you have clicked "Options >>" then a more detailed window appears. We are interested in two tabs of this more detailed widow. The first tab we're interested in is the "Display" tab, as pictured below in Figure 3.

Figure 3 - The "Display" Tab

While in the "Display" tab, downgrade your colors to a level that is acceptable to you. I choose 16 bit color since the difference did not seem that bad to me. Also restricting the size of your remote desktop can make things go faster, but I did not do this as I thought my other changes would make things fast enough.

After you are finished playing around with settings in the "Display" tab, there is one more tab we are interested in - the "Experience" tab, as show below in Figure 4.

Figure 4 - "Experience" Tab

For this tab, my recommendation is to select the slowest connection speed available and use the defaults that come with this. Some of the nice visual components of your remote desktop might not be there, but hey, you want it responsive, right?

If this does not improve the responsiveness of the connection, I recommend further downgrading things in the "Display" tab.

Thursday, October 20, 2011

First Google Adsense Check!

As you, dear reader, may have noticed, my blog has a decent number of advertisements on it. This is mainly due to my unquestionable faith in the free market and the belief that 'free' content on the Internet is never really free - someone is paying for the time to generate the content, the serving bandwidth and the consumer is paying for their connection. As a result of these ideas, I thought I would try embedding advertising in my blog to at least benefit from a portion of this. Plus it's fun.

The Google services (Blogger, Adsense and Google Analytics) all play together very nicely. For this reason, and my love of all things Google, I have integrated the three into my blog. Finally Adsense has come to fruition!

Figure 1 - My First Advertising Check!

As is obvious from the check, I won't be quitting my day job anytime soon to focus on my writing career. It's still fun to think about. Even more amazing is that Google is able to host my blog, my pictures (through Picasa) and provide all of the tools for their share of the advertising revenue. Even more amazing, is that most of these tools would still be free even if I did not advertise with Google - because they would like to analyze the data I am generating. As a software engineer and IT professional, without a doubt, these would be much more expensive, and not as good, if I were to maintain a server and use existing (or custom) software to provide these services.

Thanks Google! You've made my life more fun, and a little bit better.

Figure 2 - Me Holding My Check with Crazy Eyes

Monday, August 15, 2011

Breaking Bad Wendy + Santa Fe Tournament

This weekend my mother, father, friend Jeremy, and I played in a handball tournament in Santa Fe. Despite my recent success in B-level tournaments, I was knocked out in the first round. Jeremy and my family had a nice time at the tournament and doing things together around Pahokee and in Santa Fe.

While walking around the Buffalo Thunder casino, I recognized one of the dealers. She was an attractive woman that seemed familiar from the one and only television show I watch, Breaking Bad. She looked very much like the cracked out character named Wendy.

Rather than going up to this nicely put together woman and asking her if she (realistically) portrayed a prostitute that plied her trade in exchange for highly concentrated crystals of illegal substances, I tactfully asked her "Have you ever been in a television show?" to which she replied "Yes, I was the crack whore in Breaking Bad. Do you have a root beer?" Her character was always drinking root beer before, during, and after her activity in the show. Hopefully this post does not result in my blog being flagged for "adult content" but below is a short video one of the episodes contained showcasing Wendy (aired on the cable channel called AMC.) If one is from Albuquerque, some of these scenes may be recognizable.

I told her it was the only show I watched, and that I thought she did an amazing job. Her table was slow, so I felt comfortable asking her for a picture.

Brian Stinar + Julie Minescs

She seemed really nice, and I'm glad I said hello. It made the tournament weekend a little bit more memorable. I think she looks pretty and not cracked out at all when in real life.

Tuesday, July 19, 2011

First Squish Testing Problem Overcome

I have been working on getting Squish testing going for the application my company produces, FLOW-3D. So far, we have been very happy with the level of support FrogLogic is giving us, and Squish seems like a great product. My involvement with this technology is just beginning, and I like it. Others' at my organization have more experience using Squish than I do.

One difficulty I was able to overcome that I wanted to post about was the "Either the application could not be started, or it was started but Squish failed to connect to it" error message I was receiving. After Google'ing this error message, a number of posts said that this was due to an incompatible version of Qt.

Error Message I was Receiving

However, I have Qt correctly configured on my machine, and selected the correct Qt directory while installing Squish.

The problem was because I was trying to test a debug version of our software. After selecting the non-debug version, everything worked fine. The installation documentation mentions this:
Using Squish with Qt debug libraries

The prebuilt binary packages are built against release versions of the Qt libraries—not against the debug versions. If you want to use Squish with Qt debug libraries you will need to build Squish from source. (See Installation for Testing Pure Qt 4 Applications (Section

I wanted to create a quick post to help others (both inside my organization and outside) if they encountered this error message and didn't know why. For me, it was because I was trying to test a debug version of my software, which the Squish installer does not support.

Thursday, May 12, 2011

First Attempt at Beer Brewing

Ever since I met a cool older Russian dude that taught me how to make wine, I have been thinking about brewing beer. Those thoughts have finally manifest into something concrete. After my first attempt at brewing beer, I do enjoy the process. There are still a few weeks left until the result can be evaluated, but the creative process was fun.

Me With My First Wort - A Wheat Beer Made From a Very Simple Malt Extract

While at his party a few months ago in Santa Fe, I met Stephen Merkel. Stephen is a an archaeologist outside of Santa Fe and is into all sorts of cool creative things. We talked for a while about the beer he was serving at his party. This was all beer he brewed himself. There were a variety of interesting flavors, and Stephen was able to describe the different processes he went through to achieve the unique attributes within the beer. I told Stephen about my beer bottling experience, and mentioned that if he needed any help on bottling I would be happy to help him. A few weeks later, I helped him bottle five gallons. After the bottling event, Stephen loaned me the below book.

Read This Book If You Want To Brew

After reading the first 150 pages (of about 300 - I'm still reading it) of this book, I decided I was ready to give brewing a go. The author of this book constantly repeats the mantra of "Relax. Don't Worry. Have a Homebrew." This was an attitude I tried to adapt, despite being excited to try creating something of this fashion. I was in a bit of a rush to get things going, but chilled out once the ball started rolling. Stephen provided valuable assistance throughout this whole process.

First, I made a trip with some of my coworkers to the Santa Fe Home Brewing Supply during a long lunch break. While there, I dropped $113.74 on home brewing supplies. Of these, about $25 were consumed during the brew (unit costs). The remaining expenses were capital expenditures which will be amortized over the life of the equipment. Below are the consumables.

The Wheat Malt Extract I Used - Pre-hopped for Greater Ease

Dextrose - Corn Sugar To Up The Alcohol Content

Eventually, I will brew a malt-only beer, but for my first time I was not too concerned about the effects of adding sugar. The recipes later in the book usually do not call for much sugar to be added, but rather rely on the malt for providing fermentable sugars. Malt is about 10x as expensive as corn sugar, but is supposed to ferment to fuller, less metallic, flavors.

As an aside, a malted grain has been soaked in water to allow it to germinate and then is dried before the seed could grow much. This allows the developing plant to metabolize a little bit and create different sugars. Those sugars have been extracted, and sold to me, as 'malt extract.'

Other than the malt, and 1 pound of corn sugar, there were a number of pieces of equipment I needed to make this happen.

A good cleaning compound is the first thing needed for brewing. Luckily, the previous tenant at my Santa Fe place left a number of half-filled bleach contains around various locations. Stephen has noticed some odd interactions that take place if any bleach is left on glassware, and sunlight hits it. He uses iodine, which is something I will consider if I have any problems with the found bleach.

Most of the utensils were given a once-over with a diluted bleach solution.

A big pot is the second thing you need for brewing beer. This is what we used to cook our wort (malt + sugar + hops) in. As my malt extract came pre-hopped, all we had to add was the extract and the sugar to the boiling water.

Stephen stirring the wort.

My Six Gallon Carboy

Fermentation Lock - A Simple Water Valve (but really small and compact)

This is a five gallon bucket with a spout at the bottom which is useful for transferring beer to directly before bottling. We did not actually use this piece of equipment for this phase, but will when the beer is ready to bottle.

After we boiled all of the malt and dextrose together, we let the wort sit for and while. Then, we ran the wort through some ice in my funnel to quickly cool it down. Stephen recommended buying three gallons of distilled water, and cooling them greatly to add to the cooling wort. Unfortunately, my distilled water was not quite cool enough so we used ice. With ice, it was difficult to tell how much ice contributed to the water content of the wort, but Stephen's familiarity with the process dictated about a gallon of ice water, 1.5 gallons of wort, and 2.5 gallons of distilled put us at the five gallon mark. This was a good place to apply the concept of "Relax. Don't Worry. Have a Homebrew."

After we finished mixing the malt, sugar and boiling water, we let the mixture cool to and then measured the specific gravity. This is to measure the density of the mixture, which is proportional to the sugar content (which directly impacts fermentation.)

The hydrometer is an instrument used to measure the specific gravity of a liquid.

After measuring the specific gravity, Steven said it seemed really, really low to him (34). We read the instructions on the malt, and the instructions actually called for 2.5 pounds of sugar, and we only added one. Luckily, I had some sugar laying around my house which helped us bring the specific gravity to 48. The difference between this measurement, and the measurement I take when fermentation stops will provide me with the alcohol content of my mixture.

Once we upped the sugar content, and let the wort cool, I added the yeast. There was a small yeast package included in my malt extract, which made choosing the yeast extremely easy. Different types of yeast are available, which have their own impact on the flavor of the resulting beer.

Finished Wort

In My Closet, With a Towel Around To Keep Light Away

After A Day of Fermenting

Overall, brewing my first batch of beer was very fun. I am grateful for Steven's advice, encouragement and help. I look forward to experimenting with different processes and seeing how they impact the resulting beer. Send me an email if you'd like a homebrew!

Tuesday, May 10, 2011

Baby Rabbit

Today I found a baby rabbit hopping along the street. It was too small to make it over the curb, so it was just kind of bouncing back and forth, waiting to get run over by a truck. No mama rabbit was anywhere around. I was walking home from a Blues dance at Cowgirls in Santa Fe and saw the little guy.

I carried it in my hands back to my apartment. The rabbit relaxed a lot when I would pet it on the head, and carrying it in my hands was a very pleasant experience. It is very warm and nice. When I got back to my apartment, I gently set it down in my shower after corking the drain so it wouldn't fall down. Then, I set a plate of water out to drink. I also cooked some soy beans (edamame) which I ate most of, and tried to feed the rabbit some of. If it ate any, it was such a small amount I couldn't tell.

Even though I understand that rabbits are very plentiful, and that the genetics which would drive a baby rabbit to be hopping around in the street likely shouldn't be selected for in Santa Fe, I wanted to help it. Hopefully bringing it out of the street, trying to give it food and water, and putting it in a little garden area at my place in Santa Fe actually accomplished that.

I think I would like to get a pet rabbit someday when I'll be around my house enough to take good care of it.

Maybe I will see this rabbit around my place in Santa Fe from now on.

Saturday, March 19, 2011

Videos Of The Tournament

Below are the videos of individual matches that I would like to include on this blog post. I've seen a decent increase to my blog based on this content, and I've heard about these videos from about six people in person.

Everyone Versus Armillo

As part of the tournament, Dan Armillo played everyone in the tournament against him (sequentially, not in parallel.) Armillo had to win eleven points against everyone that played against him. Between fifteen and twenty people played a single match to eleven. I believe four of the players each received one point.

Additionally, Armillo could only serve three consecutive times, and he could not kill the ball before three rallies. He actually never killed the ball, with anyone. Despite these setbacks, he was no where near close 'losing' the match.

Below are a few videos which were recorded at the tournament. I always, always label my graphics, but I believe the YouTube titles should be sufficient to identify these videos. These are all the videos which were provided to me which involved Danny Armillo. All videos were recorded on Saturday, March 12, 2011.

In addition to the Armillo destruction which ensued, there were a lot of pointers Armillo gave during each match. He helped all of the players improve, no matter what their level was. One of my favorite things about the tournament my father organizes is the effort that goes into making it a learning experience for everyone.

Stay posted for additional updates. I still have videos from all of the individual matches to upload.

Saturday, March 12, 2011

Dan the Hand Armillo 2 Handball Tournament

Today, Saturday March 12, 2011 is the first day of the second annual "Dan the Hand Armillo" handball tournament. The tournament is located at the Deming Country Club, in beautiful Deming, New Mexico. Below are some images of the competitors. Stay tuned for up-to-the-second updates as the tournament progresses!

The tournament format is that a match is two games to fifteen, with an optional tie breaker to eleven. If New Mexico's top handball player, Dan Armillo, shows up, there will also be an everyone versus Armillo side tournament with slightly modified rules.

Wayne Abraham (left) vs Don Stinar (right). Stinar came out on top, with a score of

Cary Hamilton (left) vs Don Stinar (right). This match is still in progress.

Bobby Hall (left) versus Jeremy Brewster (right). Brewster won.

Ron Todd (left) vs. Alan Gast (right). Results pending.

Handball Destroyer (requested no Internet presence) (left) vs. Ryan Ashley (right). The Destroyer won, in the tie breaker round.

Below are a few images from the Hall vs. Brewster match.

Saturday, February 12, 2011

SOAPWare 4.8 Database Backup Instructions

I have been helping my father out with his information technology systems at his office. He is a pulmonologist down in Silver City, New Mexico and all of his patient records are stored electronically. I'm the IT guy that comes in every few weekends to keep things running smoothly.

Part of what I consider an important portion of helping people out with their IT infrastructure is determining what level of redundancy is appropriate for them. My mother manages my dad's office, and agrees with me that the ancient Windows 2000 database server storing patient records needs to have a hot swappable spare. This weekend, I constructed such a hot swappable system. Below, you will learn how to do this same thing. This blog post exists for three purposes:

  1. If I stop being the network administrator for my father, the next administrator will be able to pick up these notes (in addition to those taken in a leather bound notebook) and not have to rediscover everything from scratch.
  2. Other people in the world may need to maintain such legacy systems, and find this post useful (or contract with me to perform such maintenance!)
  3. I want to be able to remember exactly what I did, so when I need to do the same thing a year or two later, I can easily remember.
This document does not exist to allow nontechnical people at my dad's office to perform backups. Things can be extremely broken by tinkering around with the database through the below mechanisms.

SOAPWare 4.8 is a difficult piece of software to maintain. It is well past it's end of life date, and it uses other, older, pieces of software to help it function. Our installation uses MS SQL7 as it's database back-end. As the first portion in this series on administering older SOAPWare systems, this blog post will cover backing up an existing MS SQL7 database. In a later post, I will carefully describe how I took those backups and created another MS SQL7 dabase, on a virtual server, which I then connected a SOAPWare 4.85.06 client to. All systems mentioned below are on a totally isolated network.

A book that helped me a great deal was SQL SERVER 7 : A Beginner's Guide, by Petkovic. This book cost me a $0.01 from Amazon, and then a few bucks to ship it. I ordered three other MS SQL7 books, one of which was worthless, the other which was helpful, this one which contained exactly what I needed, and a forth which I did not open because I already found the information I needed. These books cost less than fifteen bucks in total, shipped.

If you're going to buy it, use the above link and maybe I'll get a fraction of a penny from the sale. However, if you follow the instructions on this post, you won't need to buy the above book.

The first thing to do is to start up "Enterprise Manager", which is the utility that MS SQL7 uses for managing everything. Do not try and accomplish any of this on the command line, as you would do in Linux, or with any other database you are familiar with. For me, this is located under "Programs" -> "Microsoft SQL Server 7.0" -> "Enterprise Manager".

Figure 1 - Opening the "Enterprise Manager"

After "Enterprise Manager" opens, you will notice the sw_ databases present. These are what SOAPWare uses to store your patient information. There are six of these. They are:
  • sw_chart
  • sw_codes
  • sw_exch
  • sw_image
  • sw_trans
  • sw_users
Figure 2 - Hopefully You See Some of these Databases

The below steps are what you will do for all of the sw_ databases. We will begin at the top, and work our way down, backing up databases as we go. Right click on a database, go to "All Tasks" -> "Backup Database."

Figure 3 - Bringing up the Backup Dialog

Once you have the backup dialog up, make sure to type in something useful for the name, and remember where you are putting these backups. Then click "OK" to start the backup.

Figure 4 - Backup Dialog

Figure 5 - Hopefully You See "Backup in Progress" and not Something Terrible

Figure 6 - Backup Successful

Repeat the above steps for every database that SOAPWare uses (likely those beginning with sw_) . After you are finished with this, you should verify that your backups have been created with a somewhat reasonable time stamp.

Now, you have backups of your MS SQL7 SOAPWare database! In a later post, I will show you how to take these backups and create a fully redundant SOAPWare database server.

Friday, February 4, 2011

Broken Pipes + Playboy of the Western World

This Friday provided quite a challenge to my organizational abilities and peace of mind. The only thing I planned on doing on Friday was attending a play, titled "Playboy of the Western World" put on by the Adobe Theater here in Albuquerque. One of my buddies caught a ride to Santa Fe with me in order to snow board. He was 25 minutes late to my house, making it so I did not get to work as early as I would like. While at work, one of my tenants called to inform me that my pipes had broken, and my garage was filling up with water (see the below picture.) As that instant, I remembered speaking with my mother, and agreeing that I should put a space heater in my garage to prevent this from happening, and then immediately forgetting. So, I called my buddy and he replied that he was leaving the mountain now, and would be there shortly. 1.75 hours later, he arrived at my work.

The Beautiful Fountain

Luckily, my friends David and Efrain were able to pick up supplies for me to make this project progress as quickly as possible and work in parallel while I was driving back from Santa Fe. We shut off water from the main, stopping the leak and leaving everyone in my three apartments (Greg, Ben + Franciska, Me + 3 house guests) without water for a short time. Luckily, my tenants are some of the most flexible people, and were much all right being without water for a few hours.

After shutting of the main, Dave and I went to see the amazing play! My friend Kristina Caffrey invited us to to attend the play she is in titled "Playboy for the Western World." The play was funny, well staged and generally a positive experience. For only $15, the play was an extremely good value compared to seeing one of the pieces of crap Hollywood puts out and Albuquerque consumes for $12 at Century {12/21}. After the play, Dave, Kristina and I went for appetizers and drinks at Zinc, an extremely pleasant place to drink a beer and listen to music.

Unfortunately, these shut offs were not effective for the leaks

There were three things that helped me maintain my piece of mind during this process. The first was that I could depend on my good friends Dave and Efrain to help me solve this problem. Efrain has skills at plumbing, and was able to reason through intelligent solutions and alternatives with me. Additionally, his plumbing skills allowed him to pickup all of the necessary supplies for actually fixing this project. Dave helped with the soldering, and other logistics associated with this project.

The second element was how flexible my tenants are. They were without water for a total of six hours. After Albuquerque had temperatures of -7F, which are twenty year records, they understood we might have some slight infrastructure problems. My tenant Greg tried to shut off water at the main, and was very understanding about any issues that would occur. Ben and Franciska were understanding and cool as well.

The third thing that helped me was the ability to improvise and the familiarity with tools and construction techniques my father taught me. If you mess up a project, come up with a way to make your error into a beautiful embellishment. As a result of his training, I am extremely familiar with numerous tools and construction techniques. If it were not for this training, being a landlord would not be a viable economic enterprise for me.

Combining these three things I am grateful for, with the fact that these pipes burst in an ideal position (unused washer hook-ups which could simple be disengaged through sweating caps on with a torch) made it so I was able to fulfill my duty as a landlord, and still have a fun time at the play.

The Final Solution - Cap The Pipes