About 60% of what I do every day at work now involves me writing software. Of that, the largest part is LabVIEW, but this has begun to expand into C++ and C# as well. There is a tremendous amount of overhead involved in writing software, but the payoff is that once the programming is finished, if it is well-written, it is possible to get data at a rate unimaginable in the absence of the automation the software provides.
That describes pretty well why I put up with writing software- automation of data collection makes it worth the headache. Only, as I do it more and more, it becomes much less of a headache, and something altogether different. It has become a means of thinking about the world. The algorithmic mindset, I find, complements the scientific. I have heard it said that programming should not be an experimental science. Well, in the hands of an experimental scientist (at least this one), it most certainly is.
I cannot imagine programming to do something like accounting or database management or business systems, though I am quite happy to use the fruit of such labor. It would not be something I could stomach, I suspect.
But getting things to do stuff...this is intoxicating, and I like it a lot.
In the process of doing experiments, I have learned a little about programming microcontrollers. I can't pretend that programming a microcontroller to run a dishwasher sounds like crazy fun, but it doesn't sound bad, either.
The key is that the combination of software that allows one to control things, coupled with chemical and other scientific knowledge, allows the creation of systems of fairly awesome power. I am keen to try to learn more, and hopefully post some of my non-professional experiences here. "The man" owns my professional experiences. Not that I am complaining. I'm pretty happy to be in the employ of "the man" in times as tough as these.