Wednesday, November 11, 2009

Ahead and did not know it again

For at least the second time I have discovered that I had learned how to do something and was doing it on the computer without realizing what it was. Then thinking I needed to try to learn about this new programming concept I realized I had been doing, but not knowing what it was called or that it was something really special.
Back in the 80s I wrote an extensive student records program for Swainsboro Tech that was used by a number of people on the system at one time. The system was written in COBOL on a Burroughs 1900 midrange computer. The total code for the system was about 200, 000 lines of COBOL code. It ran one copy on the computer and the different users logged in at their terminal and did different things. For instance it maintained registration, grades, transcripts, attendance, financial aid, and the book store among other items. Different people did the work in the system for the different areas.
I realized as I started developing the program in the early 80s that having different people using and to put in one program that centrally controlled everything (including security to certain parts on top of system security) meant I needed a way for the parts for different users to peel off and run their code and then join back on central control module. I studied for a good while the Burroughs manuals (this part of COBOL is machine dependent) and found what would work and it worked well. I also set the files in a way that as I got in databases deeper I realized I had set them up in the approach a good database would take.
Then in the late 80s I heard people talking about doing multi-threaded programs and I wanted to learn what that is and how it was done. As I started digging I realized that what I had done in my students records program was multi-threading and that I had been doing this for more than 5 years. Multi-threading and applications for multi-users was neat and still impresses me.
Back in 2004 I started working on a real estate web site and one of the items was we wanted the site I developed to allow the agents to take care of the listings (enter, change, delete and post pictures). It was to be simple enough that they should be able to do with just knowledge of how to browse the Internet and to find pictures stored on their computer. I had not done a site with that before but I set out to learn how and discover how to do and I learned the PHP programming language and MYSQL database would work well (I used what I already knew about SQL and databases to learn MySQL quickly and I realized I understood PHP from my experience with doing reveal codes in WordPerfect and my knowledge of BASIC and FORTRAN). I have developed the same feature for another couple real estate sites and a donkey farm (they list donkeys for sale) and an arts council site for events. I use the code developed from one site to modify and use for the next as far as the management side of the site for them managing their content.
Over the last couple of years I started hearing about Content Management Systems (CMS) to do web sites and have been trying to learn what is different about them versus what I do in developing websites in the actual HTML/XHTML code. I started studying a book on a free CMS called Joomla and talking with others and suddenly this week realized what I had done with those real estate and other sites was CMS. The people have the control of putting and maintaining the information on their sites, instead of me having to do it all. I had basically developed my own specialized CMS systems without realizing it.
As I tell my students being in computers means we have to keep learning and changing. And sometimes I amaze myself with having known something just not the proper term for it.

No comments:

Post a Comment