Why I Write Software

I’m going to start this blog out with a story I wrote describing one of my primary motivations to write software, which is to make life easier.

While I work primarily in the database arena now, I was a developer for 20+ years, working in C, C++, Visual Basic, C#, PHP, Javascript, Perl, AWK, FoxPro — basically whatever was available and appropriate at the time for the task.   This is the story of some software I crafted once, with an emphasis on why I did it.

Once upon a time, I worked for the family business. Now, when you work for a family business, particularly when you are involved in the management and finances of the business, you gain a real appreciation for your good employees. Through their hard work, your family benefits. And when your family business is a billing service company with embarrassingly antiquated tools and procedures, your good employees work too hard too often. You want to give something back. Not more salary or a gift card and a pat on the back, but something that matters, like more hours in the day, less demands on their time, a clear head, their sanity.

Well, in an effort to achieve this — and also admittedly at the insistence of our largest client, who quite literally pounded the table about this to us — we decided to buy and install a business intelligence system. This would let customers and our account executives answer the increasingly frequent queries about their billing results without having to burden the already overburdened IT department.

Well, it turned out that the system we bought (not one of the major vendors) was absolutely, positively horrible. I mean horrible. We spent months trying to implement it, finding bug after bug after bug in the thing along the way. The account executives had absolutely no confidence in it, and working with it, at the insistence of management, became yet another burden on their time.

Being primarily responsible for the horrible decision to buy this horrible product, which was making work even more horrible for our account executives, I felt, well, horrible.

So here’s what I did: I wrote a program. (Did you expect something else?) Actually it was more like a series of Perl, PHP, and SQL scripts, but the end result was a web page which let the account executives easily create simple queries which, lo and behold, would answer questions about the billing results without burdening the already overburdened IT department.

And here’s the kicker — it really worked. A click here, a click there, and violá, answers. The joy and relief specifically on one of our account executive’s face that this little effort produced is an image that still motivates me to produce software today. For me, that’s what it is all about, creating something that is easy to use and gets results, software that helps out, makes life easier, that gives back.

There it is, what motivates me to write software.  Being out of the family business now, I must admit to less of a motivation to improve operations through software.  However, I’ve found that everywhere I work there is at least one person working unnecessarily hard, struggling through some process that could be made easier via an appropriate program here or there.  I always find that I like attacking those problems best.  Software can make life easier, and that’s a big reason why I do what I do.

This entry was posted in Personal. Bookmark the permalink.