|
Computers are modelling devices. To model a problem on a computer (e.g. the problem of how to write documents, or the problem of how to send and receive email, or the problem of adding up some numbers, or even the problem of how to entertain a nine-year-old child), we must find a way of explaining to the computer precisely what we want to model. Such explanations are called programs, and computer programming is the art of creating such explanations. Computers are tremendously sophisticated machines but, at their very heart, they are really quite simple. In fact, they can only perform a limited number of operations, all of which are fairly primitive. Their sophistication comes from the way in which we can blend these primitive operations into ever more complex combinations. Alas, I don't have the time right now to provide you with a tutorial on how to write computer programs. If, however, you already know how to write computer programs, then I hope you will find plenty on this site to interest and, perhaps, educate you. Finally, I have included a number of techno-philosophical musings on various subjects related to programming. These are mainly an attempt to insert a modicum of common sense into a number of everlasting debates on a variety of technical issues. |