A year ago I saw a posting by Bill Williams on the Internet asking for a program to implement a scrolling timeline. I had been working as a contract programmer for a few years and had always been limited by the time and money to be spent on a project. I reasoned that I was compensated for working under the pressures created by those limits as much as I was being compen sated for my programming skills. When I met Bill he told me that there would be little or no remuneration from the project as well as some time restrictions. Nevertheless, my initial reaction to The Evolution of the English Bible was that it was be autiful, interesting, and the prospect of programming the timeline was so alluring that I gave myself the gift of taking the time to work on it.
Programming is a strange mix of art and science.
I closeted myself with my computer for long periods of time, thought about the timeline code while I was working in my garden, and had more than one flash of inspiration come out of nowhere. As I developed the timeline it became clear to me that I needed to organize my code into objects. An object, in programming terms, is a piece of programming code. It has attributes and behaviors associated with it. In the timeline, when the cursor is on a specific part of the screen, a message is sent to an object whose attributes include a sc reen element that is part of the scrolling bitmap.