Sunday, December 31, 2006


Handgun Safety Training

I've always been afraid of handguns, and of the people who own them. A handgun provides its owner the power to kill another person instantly with the press of a button. As with presidential candidates, one has to wonder whether anyone who wants that kind of power can really be trusted with it.

I have friends and relatives who own guns, and they don't worry me. I know that the vast majority of handgun owners handle them responsibly, and accidents are rare. Unfortunately, I've met too many handgun owners who scare me. They are unwilling to leave their homes unarmed, demonstrating an irrational level of fear and/or prejudice. They harbor fantasies about heroically fending off gangs of burglar-rapists. They hope they will someday get a chance to legally shoot someone who they think "deserves it." I know it is probably just macho posturing—I suspect the braggarts are more likely to wet their pants than draw their weapons in a life-or-death situation—but it worries me that people like that are walking around in public with concealed weapons.

In spite of my concerns, I've always believed people have a right to own handguns. Many handgun owners may be misguided, but I believe effective individual self-defense is a basic human right. I also know that, statistically, they are more likely to kill me with their cars than with their guns. I'd support a ban on SUVs, but not on handguns.

I recognize that my own fear of firearms is a little irrational, so I decided to educate myself and get some training. This fits in with the "becoming James Bond" theme of my recent hobbies, but I don't want anyone to think I don't take it seriously or that I have fantasies of battling international supervillains. What I've found most engaging about my flying, scuba diving, skydiving, and motorcycling classes is the fact that, while these activities seem dangerous, with proper training the risks are very manageable. As I've said before, I'm not a thrill-seeker; I like learning how to do things the right way, and relying upon reason and training to overcome fear.

I hoped to get three things out of this. First, I wanted actual experience with handguns so that I would have a better understanding of how they work, how to use them, what the safety features are, how useful they really could be in a self-defense situation, how likely they are to discharge unintentionally, and so on. Second, I hoped that meeting responsible gun owners would alleviate my concerns about the psychology of gun enthusiasts. Finally, I hoped I would enjoy it, and spending time at the shooting range would be a way to spend my leisure time when the weather precludes flying.

There are a few shooting ranges in my area, and all of them provide safety classes and other forms of training. I wanted to take a group class, so I could meet other handgun newbies, but the group classes weren't being offered during the Christmas season. Rather than waiting a few weeks, I decided to take a private lesson.

In the days leading up to the lesson, I scoured the Internet for handgun-related information and I read everything that seemed useful. I ended up with a pretty good understanding of how semi-automatic pistols and revolvers work. I learned about the features of the most popular models. I learned the safety rules.

I was surprised to learn how many people carry concealed weapons. I had always thought that only people in law-enforcement or other special circumstances were allowed to do so, but it turns out that in my home state, anyone with a firearms license can carry concealed weapons as long as they stay out of certain areas (government buildings, schools, bars, churches, political rallies, sporting events, bus, rail, airport, and a few others). Many other states have similar laws, and through reciprocal agreements, concealed-carry permits issued in one state will be honored in others. A large segment of the firearms industry is devoted to producing concealable handguns and holsters for private citizens. This doesn't scare me, but it was a surprise.

I read a lot about the various pro-gun-control and pro-gun-rights arguments. Both sides present statistics, studies, and anecdotal evidence to support claims that their strategies lead to a reduction in violent crimes and deaths. It's hard to find accurate and balanced information about such a politically charged topic, but I've come to believe that (a) guns are not as dangerous to society as the pro-gun-control camp claims, and (b) guns are not as useful to society as the pro-gun-rights camp claims. The likelihoods of being killed by a gun or of being able to defend yourself with your own gun are both very small.

I started following some of the online forums for gun enthusiasts. As with most Internet forums, the most vocal members are the least knowledgeable about the subject, and also the most wacko, so this did little to ease my concerns about gun owners. There were a lot of Camaro-vs.-Mustang-style arguments between advocates of various brands and models of guns, and a lot of ludicrous "what if?" self-defense scenarios. The gun owners' forums were similar to pilots' online forums in the frequency of references to "the liberal media" and arbitrary/stupid decisions by government officials. Still, buried in all the noise were some signs that there are smart, careful people who carry guns.

Having nothing better to during my week of holiday vacation, I spent an afternoon going to the county courthouse to apply for a firearms license. The process was pretty simple: I had to fill out a few forms and then get fingerprinted by the police. Assuming I pass the background check, I'll have the license in a few months. Until I receive the license, I can only carry a loaded firearm in my home, in my car, or on property where the owner gives me permission. Otherwise, I have to carry any firearm in a locked case separate from the ammunition. (As I don't own a gun, this is all academic.)

I bought myself an airsoft pistol for Christmas, so I could practice handling a gun and practice target shooting. I had toy guns as a kid, and a couple of BB guns as a teenager, but I had developed some bad habits with those. With this airsoft gun, a replica of a SIG P226, I concentrated on handling it as if it was a real gun. I was very careful about where the muzzle was pointed, I used the safety, and I kept my finger outside of the trigger guard except when ready to fire.

My lesson started at 9:00 AM on a Saturday morning. I was nervous as I walked into the gun shop/range; I hadn't been in one before. As with most gun shops, it wasn't in the nicest part of town, and the big iron bars on the windows and the featureless exterior weren't very inviting. The place was empty except for the three guys behind the counter. They were very friendly and we chatted a little while waiting for the instructor (I arrived early). When the instructor arrived, we picked out a gun for me to use (a Glock 19) and I took care of the fees for the private class, gun rental, eye and ear protection, and 100 rounds of ammunition. Total cost: $156.30.

The instructor was a former weapons trainer for local sheriff and police departments. He told me the material he was presenting was basically the same stuff that is used for police training. The main difference is that police officers fire about 1,500 rounds during their training, whereas I'd only be firing 100 rounds. Also, I'd be concentrating on short-range self-defense-style shooting, while police officers practice a lot of different kinds of situations.

We spent about 90 minutes in the classroom. He covered the safety rules, operation of the weapon, how to load it, how to clear it, and how to handle malfunctions. He concentrated on the specific operation of the Glock 19, but described how other weapons differed. He showed me a couple of different ways to grip the weapon and a few different stances, and recommended that I try them all on the range to determine what worked best for me. He showed me how to disassemble, clean, and reassemble the pistol. He discussed safe ways to store the weapon. He discussed legal issues.

Little of the information was really new to me: I had already read most of it during the previous week. Holding an actual gun in my hand while reviewing it made everything a lot clearer, but also made me nervous. Even though I knew the gun was unloaded, and the ammunition was left safely outside the classroom, I was constantly afraid the gun was just going to just suddenly go off. A little fear is a good thing; it kept me on my toes.

Then, it was time to go to the range. I put on my rented safety glasses and ear protection, and picked up my empty gun and two 50-round boxes of ammunition while the instructor grabbed a few paper targets, and then we walked on in. I had never been in an indoor shooting range before, so I didn't know what to expect other than what I'd seen in TV shows and movies. The range had six booths, with wooden walls between them, each with a little countertop where you can rest your weapon and ammo, and an overhead cable where you mount the target and then send it downrange.

I jumped a couple inches when I heard the first shot from one of the other shooters on the range. Even with the ear protection, guns fired indoors are loud.

The instructor sent the target down 15 feet, then told me to load the magazine with six rounds and fire them at the target's "center of mass" (middle of the torso). I fumbled with the rounds as I put them in the magazine, I inserted the mag in the pistol, then I pulled the slide back and let it snap back into place.

I now held a loaded, cocked, deadly weapon in my hands. My first solo flight in an airplane wasn't as nerve-wracking as this was.

I was able to ignore the screaming voice in my head, and just do what I was supposed to do. I pointed the gun at the target, lined up the sights, and put my finger on the trigger. I pulled it back slowly until it hit a point where it resisted, then I pulled as smoothly as I could while also keeping the sight on the target.


The recoil wasn't as bad as I'd expected it to be. I heard the clink-clink-clink of the expended brass bouncing off the wall, onto the table, and then onto the floor. I fired the remaining five rounds, then ejected the empty magazine and put the gun down on the table. The instructor brought the target back, and to my surprise, I had a nicely packed group of shots. (I think the airsoft practice paid off.) The group was centered about an inch below the center of the bullseye, so the instructor asked me to do it again, this time aiming about an inch higher.

Load six rounds into magazine. Insert magazine into grip. Rack slide. Sight the target. Finger on trigger. Aim and press. Bang! Aim and press. Bang! Aim and press. Bang! Aim and press. Bang! Aim and press. Bang! Aim and press. Bang! Eject magazine and put the weapon down.

This time, five of the six shots were inside the bullseye. Wow, this stuff seems pretty easy. Maybe Imperial Stormtroopers need some practice like this, to improve their aim?

The instructor ran me through a lot of exercises for the remaining 88 rounds, at various distances and with different variations. While my first couple of groups were good, they got progressively worse, due to fatigue and increasing stress. But even my worst shots never missed the target completely. Even my left-hand-only shots were probably lethal.

After an hour on the range, we went back to the classroom for a few minutes of final discussion. The instructor said I did very well for a first-timer (but I suspect he says that to everyone). Most of my misses were high or low, indicating poor breathing control, so I need to work on that. I didn't mention that I was scared shitless every second I held the gun.

I'm glad I took a private lesson instead of a group class. I got more out of the range time with the instructor's undivided attention, and I didn't have to sit through lengthy explanations of things I already knew. I'd like to meet other shooters, but I can meet them at the range, at advanced classes, or at competitions.

I found the Glock's magazine release and slide lock a little hard to manipulate with my thumb, but otherwise it felt pretty good in my hand. I'll try some other models if I go to a range again. If I end up buying a Walther PPK (James Bond's gun), I'll need to re-evaluate my motivations.

So, how do I sum this up? I learned a lot, and changed my mind about a few things. Guns and their owners still worry me, but the gun I used didn't blow up in my hand or put any holes in anybody, so I'm not as scared as I used to be. The thought of owning a gun doesn't seem as unreasonable to me as it would have a few weeks ago.

I am a little concerned about my change of opinion regarding guns. I wasn't afraid of criminals before I started reading the gun owners' forums, but now I am. Have I been enlightened, or brainwashed? If I start spouting ridiculous sayings like "An armed society is a polite society" or if I start referring to unarmed citizens as "sheeple," I hope somebody will smack me.

I've described my views on gun rights and gun control just to provide some context for this experience. I am not interested in any discussion on these subjects, and don't want my blog to turn into a forum for such debates. I will delete any comments about gun politics, and will delete any anecdotes about horrible things happening to people due to guns or lack of guns.

I don't plan to write any further entries on this subject. In the unlikely event that I am involved in some sort of shooting-related incident, anything I've written may be used against me.


Signing Back On

You knew this couldn't last, didn't you?

I wrote my Signing Off entry because I thought I couldn't post the next entry (Handgun Safety Training). The Handgun Safety Training entry contains material that will cause some people to label me a gun nut, and others to label me a namby-pamby liberal sissy. I was willing to live with that from my online readers, but I was very concerned about reactions from my meatspace friends and family. I didn't want them to worry about me doing "dangerous" things, and I didn't want them to be afraid that I was turning into Eric Rudolph.

Feeling unable to blog about something that I found interesting really pissed me off. Long-time readers of my blog may have noticed a pattern where I say "I quit" whenever my frustration level hits the limit. That's a habit I need to break. I'm sorry that I said "I quit" to you guys.

I've decided "@#$% it, I'm gonna post that entry." (Uh-oh, there's some of that self-censorship again.)

And now back to your irregularly scheduled self-indulgent narcissism . . .

Tuesday, December 26, 2006


Signing Off

I am ending my blog. For the past three years, this blog has served as a public outlet for my thoughts, but I've decided that it will be best to start keeping my thoughts to myself. My navel-gazing will be done privately or anonymously from now on.

Why the change of heart? I haven't suffered any negative consequence from my writings, and I don't have any big secrets to keep. However, I am getting frustrated with the process of writing personal articles for public consumption. I was once proud of the fact that I could write a blog with my real name on it, knowing that my parents, my colleagues, my bosses, and prospective employers/clients might be reading it. Now, I delete half of what I write due to concerns about how some readers will react, or the impression it could make on people who don't know me. I don't like censoring myself, so I'm just going to stop.

Also, a lot of what I write is crap. As I review old entries, I find very few that inspire pride. I can sum up my blog as "I hate my job, and computers suck, but flying is kinda fun." There is no need for more of that.

I reserve the right to change my mind and start blogging again if the spirit moves me, but for now, I'm saying good-bye. I appreciate all the comments and other contributions from my readers. It was nice to have a bunch of pen pals. Feel free to contact me via e-mail if you want to maintain correspondence. If you want to keep up with my interests, you can monitor my links page.

Thanks for your attention, and have a Happy 2007.

Sunday, December 24, 2006


Christmas Party for One

As the CEO of Capable Hands Technologies, Inc., I decided to organize an employee Christmas party. After all, if the staff is happy, then I'm happy. The corporation's board of directors agreed.

The chairman of the board offered the use of his home for the party. Dress was casual. Pizza was served, and there was an open bar. The entertainment was a screening of The Good, the Bad, and the Ugly on the Chairman's widescreen TV.

Best corporate Christmas party ever! Hope to do it again next year.

Merry Christmas, everyone.

Saturday, December 16, 2006



At the place where I'm working, there is an increasing consensus that they need to give up on legacy Linux systems and port all the apps to Windows. The reasons are that they have a lot of trouble getting device drivers to work for their hardware, and they don't like any of the libraries, frameworks, or development tools for Linux.

Given their budgets, schedules, and skill sets, I can't argue against them. They probably will get more done if they can move everything into the familiar land of Windows. But I will be sad when that happens.

They ask me why I'd rather use Linux, when Windows is so much "easier." As a contractor, I'm diplomatic and simply say it's a personal preference. But here, in my blog, I can give my non-diplomatic answer.

There are basically two approaches to solving a software-related problem. The first approach is to do some Google searches to find similar experiences other people have had, try all the approaches those other people have tried (reinstall some things, uninstall some things, change registry entries, etc.), and if you're lucky, eventually you will have a solution. You won't understand the solution, but the problem will be magically gone.

This approach is a bit like relying on a million monkeys banging on typewriters to produce the works of Shakespeare. If you wait long enough, they may do it. This approach works well for Windows users, because there are lot of Windows-using monkeys out there. Unfortunately, it does not work well for Linux users, due to the smaller number of Linux-using monkeys.

The other approach is to investigate the problem, using source code, logs, debuggers, and other diagnostic tools to determine the cause and the correct solution. This often takes longer, and requires skills that a lot of people don't have, but the result is that you truly understand the solution, and you will be better equipped to handle the next problem that comes along.

Linux users have to become comfortable with the second approach. Unfortunately, the second approach doesn't work well with a closed proprietary system like Windows, so most Windows users have never tried the second approach.

Windows encourages its users to stay stupid. Linux encourages its users to get smarter. That's why I prefer to use Linux.

As a user, I often wish the damned printer would just work. As a software developer, however, I don't understand why other developers don't relish the opportunities to learn more about the systems they use.

Friday, December 15, 2006


"Integration Testing"

My current job involves working on an application that routes messages between a server and a bunch of terminals. When I first asked how they test this application during development, they told me the only way to test it was to hook it up to a server and a bunch of terminals.

"No, really, " I asked, "how do you test it?"

That really is what they do. They spend a few weeks writing code (without running it), then they go into "integration testing" where they hook everything up and see whether it works. Not surprisingly, their integration testing usually takes a long time, as many bugs are exposed and the application often needs significant rework to get it to function.

I told them that I'd like to have this stuff set up for me before the scheduled integration, so that I could test code as I made changes. "Sure, we'll get something set up for you next week," they said. They've told me that each week for the past six weeks.

The problem is that there are only a couple of people in the company who know how to set up the servers and terminals. Those people are swamped helping real customers; they don't have time to help mere developers set up systems that customers aren't paying for. And they don't have time to teach others or write down instructions.

So, I've spent the last few days refactoring the application so that I could run it without those external components. I developed mock objects to simulate the server and the terminals, so I can now run the application standalone on my laptop (or anyone else's laptop). I was told several times that it couldn't be done, but it really wasn't very difficult. That's a common pattern: people often think that mock objects and simulators are going to be impossible or too expensive to produce, but it usually only takes a few hours.

The biggest problem I had is that there is no documentation for the protocols used between my application and the external components. It took a lot of study and experimentation to figure out the specific ordering of messages that would make everything wake up and work correctly. I'm still not sure it is a perfect representation of the real system, which I still haven't seen, but it is enough to exercise the new code I've written.

They tell me they'd like me to re-implement the whole system over the next few months (after current crises are resolved). If I get to do that, testability is going to be one of the major features of the design. And "integration testing" will really be integration testing, not a replacement for unit testing.

Saturday, December 09, 2006



I played many games of tic-tac-toe with my six-year-old and four-year-old nieces a couple of weeks ago.

The six-year-old (Hannah) did pretty well after I and her Grandma explained the importance of taking the center square.

The four-year-old (Sarah) responded to each move by asking "Did you win yet?" It may be a year or two before she gets it.


Airplane Instrument vs. Helicopter Private

Assuming that I ever get paid by any of my clients (I haven't yet), a question that keeps popping into my mind is "Should I get my Airplane Instrument rating, or should I get a Helicopter Private certificate?"

The Airplane Instrument rating would be a valuable add-on to my Airplane Single-Engine Land certificate. This would let me fly through clouds, and fly on days with bad weather. Even if I never fly in instrument conditions, I understand that an instrument rating improves the precision of my flying.

On the other hand, I really want to learn to fly a helicopter. It is not practical at all, but I think it would be a lot of fun. One "practical" issue is that if I get my Private Helicopter certificate, I have enough flying hours that I could immediately train for a Commercial Helicopter certificate, in which case I could theoretically get a job as a helicopter pilot.

The airplane training will cost me about $170/hour. The helicopter training will cost about $260/hour, assuming I can lose enough weight to train in an R22.

I'm not seriously looking at changing careers, but being a professional helicopter pilot sounds pretty cool. Then again, being a certificated flight instructor for either airplane or helicopter sounds pretty cool.

Anybody have any advice or suggestions?


Jersey City is Not Cool

I noticed this in Francis Hwang's links.

My corporate apartment during my Oct-Nov stay in the NYC area was in Jersey City. I liked it. I had a five-minute walk to the PATH station every morning, which was nice. I didn't have do deal with driving a car anywhere. When I got home, I could stop at Newport Centre Mall for dinner. I preferred this lifestyle to the one I had back at home in Georgia.

The writer of the article says it's not "cool." Well, I gave up on "cool" about ten years ago. If I had to work in NYC (and I wouldn't really want to), Jersey City seems like a pretty good place to live.

Friday, December 08, 2006


Who Likes American Men?

American women don't seem to like American men. As an American man, I find this discouraging. Are there women in the world who do like American men?

I've heard that German women like American men. I've also heard that Australian women like American men. So, should I move to Germany, or to Australia?

In Australia, they speak English, so I'm leaning that way. But that's a long way away, so if anyone can steer me toward another area of the world where women don't hate American men, I'd appreciate it.

(from my brother Steve)

Wednesday, December 06, 2006



I was asked to provide a "sales brochure"-style description of a product I'd worked on in my pre-contractor career. The company wanted to sell this thing to customers, and so I was asked to write up a description of the product in a positive light.

What I wrote was not exactly "lying," but it has been entertaining to see the reactions of others who know the truth. Those of us who are familiar with the product know how flawed it is, and how much work will be needed to make it a good product. My description of the product ignores these flaws, and creates the impression that everything we would like the product to do is actually already do-able.

One of the managers of this company has a saying: "Don't confuse what is necessary to get the business with what is necessary to do the business." In other words, what we can promise is unrelated to what we can actually deliver.

I don't feel good about my not-completely-transparent description of the product, but I'm a hired gun, so this is what I do.

Sunday, December 03, 2006



At Sean O'Leary's suggestion, I watched an episode of HBO's "The Wire." During the episode, one of the characters was picked up by the police for "slingin'." I didn't know what the term meant. I figured it had something to do with drugs, but I wanted to be sure, so I searched the Internet.

That got me to, a site which endeavors to be "the definitive source for slinging related information and news." This site is about the primitive weapon featured in the story of David and Goliath.

I was pretty sure that the kid on "The Wire" wasn't picked up for packing an unlicensed sling, but I started reading the articles on the site. I've always been fascinated by primitive technology, and as weapons technology goes, the sling is just past the spear. I was also interested in the techniques needed to use a sling—it's not just a point-and-shoot kind of thing.

I'm not sure why, but I suddenly needed to have my very own sling. I considered going to the store to pick up materials, but it was close to midnight. After searching my closets for suitable components, I sacrificed an old pair of leather shoes, cutting out a panel behind the heel to use as the sling's pouch, and using the shoelaces as the cords. (Any sling experts need not tell me that shoelaces are a bad choice. I was improvising.)

So now I have a sling. If one lives in an apartment, and it's midnight on a Saturday, where could one go to practice his sling technique? If I'd had some marshmallows, I might have tried slinging a few down the hallway between my living room and the door, but I had none. I considered a trip to the 24-hour grocery store, but I decided my sling practice would just have to wait.

By the way, according to the Urban Dictionary, slingin' refers to drug dealing.

Saturday, December 02, 2006


Linux Development

In my current gig, I'm going to be working on a lot of software for Linux. This is good. I've always preferred UNIX-style operating systems to Windows. I see Windows as an operating system for regular people, whereas UNIX is an operating system for "real programmers." My first job included a lot of UNIX development, and since moving into the Windows world, I've missed it.

I'm re-learning all the UNIX skills and knowledge that I used to have. I've dug up my old O'Reilly books and skimmed them to refresh my memory, and I'm reading lots of man and info pages. In some cases, I need to learn how the Linux ways of doing things are different from the traditional UNIX ways, but for the most part, my old knowledge is still relevant.

I really enjoy having the variety of programming tools available on UNIX. Microsoft's Visual Studio is nice, but not having all those nifty utilities like make, vi, grep, find, awk, perl, sh, mail, and tar available by default on Windows machines has always been frustrating. Sure, I can get all those things for my Windows machine by installing Cygwin or other packages, but that doesn't help when I'm using another user's machine, or trying to create automated scripts that will run on anyone's machine.

I'm working with some people who have not had a lot of UNIX experience. They find Linux frustrating. There are no nice IDEs like Microsoft's Visual Studio available for Linux. They've tried Eclipse, kdevelop, Visual SlickEdit, and a couple of others, but none of them compare favorably to Visual Studio. They are also learning how to configure the systems, install device drivers, and generally try to get everything to work, and it's not as easy as it is in the Windows world. In many cases, it's just a matter of learning something new, but in many others, there is no denying that Linux is just difficult.

The boss is trying to get us all to standardize on Visual SlickEdit for Linux development, as it is the most similar IDE to Visual Studio. It's nice, particularly with its support for source browsing and automatic completion (like Visual Studio's IntelliSense). It has support for emulating a lot of editors, like Vi and Emacs, so I haven't had to re-train my fingers to use a new editor. While it is nice, when my 15-day SlickEdit evaluation license expired, I went back to Emacs. The boss is going to get me a real SlickEdit license, but I may never find time to install it.

The boss also wants all the source code that is currently in CVS repositories to be moved to a SourceSafe repository. I hope I never find time to do that.

I have a couple of different ways to do development. When I'm in the office, I ssh into the Linux development machine, and then run Emacs with Cygwin/X on my laptop. That works really well; the experience is indistinguishable from sitting at the actual machine.

When I'm not in the office, or when I need to avoid screwing up the shared development machine, I have a VMWare virtual machine running Linux on my laptop.

A dual-monitor setup works well with these arrangements. Putting all the Linux windows on one monitor and all the Windows windows on the other helps me remember when to do Linuxy things and when to do Windowsy things.

When I first started programming, I hated UNIX. As a Mac devotee, I thought UNIX's commands were too cryptic and that features were too hard to find. I still think Linux has a long way to go before it can be used by "regular people," but as I've gained more experience, I've gained more appreciation for the philosophy behind UNIX. It doesn't make things easy, but it doesn't get in your way and it provides a lot of power.

With Linux, I hope my job will suck less.

This page is powered by Blogger. Isn't yours?