Sunday, October 21, 2007

An Introduction

I've been a computer programmer for about 15 years now, 5 and a half of them professionally. I work in the health care industry, developing software (and associated databases and documentation) for an Indian tribe in Oklahoma. My objective with this blog, at least starting out, is to share some of my experience, provide information and references, and otherwise help developers through similar issues to those I've faced.

I know from first-hand experience that many things, particularly of a technical nature, are poorly documented in the health care industry, and it's difficult to get a handle on how everything is connected. Insurance in general, but specifically electronic billing and claim submission; procedure, diagnosis, morbidity, and mortality coding; electronic signatures; privacy, security, and HIPAA; the list goes on. Then there are the foibles of the development environment: the IDE, compiler, linker, operating system, various APIs, drivers, services.

So whether your interest lies in a good screen or database table layout for a particular purpose, data transmission between applications, designing useful/user-friendly/intuitive components, etc., I'll do my best to cover it.

Keep in mind that my experience has been mostly with lower-cost alternatives: C++Builder instead of Visual C++ .NET, Firebird instead of SQL Server or Oracle, and so forth. I've worked with the alternatives (.NET in college, SQL Server for interfacing with applications I didn't write at work), but I'm not a "Microsoft guy" or an "Oracle guy".

Our application started off with three developers, and has at most had five developers working on it. The original developers used the software that was lying around, due to lack of a budget. There have been at most five regular developers (six one weekend during a big data conversion), but only long enough for the original three to get their two replacements trained. I've been the sole developer/maintainer of the project for over a year now. I do a little of everything: systems analysis, programming, DBA, tech writing, training, and a bit of networking, web authoring/administration, and system adminstration. In addition to C++Builder and Firebird SQL, my work environment consists of Windows clients, Windows servers, Linux (RHEL and Slackware) servers, virtual PCs, remote sites connected by fiber, T1, and the internet, VPNs, VNC and Remote Desktop.

Other applications I've been forced asked to interface with include: medical, dental, pharmacy, financial, HR, GIS, police department, enrollment, and tag agency software. The software I directly maintain is used in the daily operations of our medical clinic, diabetes and wellness education program, resource center, behavioral health program, community health and public health nursing, caregiver/respite care program, contract health services, third party billing, and benefits coordination. Its data and reports drive all of the funding for those programs (from IHS and several grants), and it includes a financial component that both serves as a "checkbook" to complement the software and data used by the Finance department and serves as a budgeting and trending tool for administration.

I also develop my own projects on my own time, which I may discuss as well, as they're of a development nature (using the same tools, as that costs me nothing).

So that's where I'm coming from. If you have specific questions for me, leave them in t he comments. Otherwise, I'll pick topics to write about as they come to me.