I would like to start out with a confession. And it might be a shock to some of you. Others who are more worldly, more cynical, more hard-bitten will have expected something like this all along. Here it is. Brace yourself: I like to write computer programs.


It is all out in the open now.

It all started back in the 70s — Oh, that wild decade — when my poor little school district bought a TRS-80 computer. It cost $600 at the time. (That would be $2500 in 2016 dollars.) This was a huge expenditure for them considering the poverty in the area. It was all the more surprising because no one at the school knew how to work it. They gave me the manual and said, “Figure it out.”

And I did.

It has never made me any money. I find that I write computer programs now in the same way some of my friends play the guitar. When I am feeling low, feeling out of sorts, I can sit down and write a computer program and it makes me feel better.

There’s been a meme going around on Facebook saying that the only honest things in the world are Drunks, Children and Yoga pants. Funny to be sure, but nitpicker that I am, let me pick a nit. That’s not honesty; it is openness. And maybe that is part of honesty; I will have to think about that.

Computer programs deal with another sort of honesty that has nothing to do with openness. The computer will do only what you tell it to do and only if you follow its rules. If you tell a computer to do something and it doesn’t, it’s not because it doesn’t like you; it’s not because it is lazy; it’s because you have done something incorrectly.

I started out in BASIC back in ‘76. I took a class in FORTRAN in ‘80, but have never used it; it’s the only class in programming I’ve ever taken.

I’ve piddled with Pascal; doodled in C++. I spent some quality time in Java and Javascript sometime back. Never going very deep, just learning what I needed to know to do what I wanted to do, scratching whatever obsessive-compulsive itch than needed to be scratched. I’ve always learned the language (other than that FORTRAN class) with me, a manual and my honest computer.

For a certain kind of person, this sort of learning has no substitute. I would say that scientists would be among those. It’s not that every scientist needs to be able to program a computer; it’s that nature has the same sort of honesty that a computer does. Nature, however, is more complex and the manual on it is far from complete.

About a year ago, I was at a place where I had the itch to program again. I wanted something new. I talked around my circle of computer gurus for languages and they recommended either R or Python.

I downloaded the languages onto my computer. They were free. I then began the phase of book acquisition. One of the Python books was as thick as four of my fingers together and when it arrived in the mail I thought here were bricks in the box.

I learned R fairly quickly (at least the part I needed) because I had a project. It is well-adapted to statistics and I had some data that was in need of crunching. Python, however, in spite of (or maybe because of) its hefty book, languished until I had a project.

The project was my desire to understand how to calculate a planet’s position, Which I attacked in the way I’d learned from wrestling with that old TRS-80. Yes, how to calculate a planet’s position is all written out in books, but as you may have discovered yourself, just because it’s written in a book doesn’t mean it’s easy to understand.

The calculations were horrendous, seriously horrendous. I needed a friend, an honest friend to help me. I found that friend in the computer, in Python. Last Monday, as I write this, it all came together. The numbers all worked out.

The itch is scratched. I am happy.

Until next time.

— Bobby Winters, a native of Harden City, Oklahoma, blogs at redneckmath.blogspot.com and okieinexile.blogspot.com. He invites you to “like” the National Association of Lawn Mowers on Facebook.