Saturday, 9. February 2008, 18:14:27
IntroductionI decided to start here a sequel of articles on how I understand Programming. It may be useful for some Programmers (note the capital letter), or may be not. In fact it doesn't matter. I believe that any shared points of view are somehow useful. Even if some of them are totally wrong. And this is a part of my phylosophy too.
To begin thinking about Programming from an existential philosophy point of view I can give some starting theses here:
- 1. The decision making during any programming project is nothing different from any other everyday's life decisions we make (or like to make) every day.
- 2. The programming process is only a certain slice of view on real (or imaginary) problem. The result of the process is only one of many possible results, most of which could be well acceptable too.
- 3. In conclusion - nothing special is in Programming comparing to all our other activities in life.
Disclaimer: I will write these series in a form of short brain-dumps in unformal way, with no respect to conventional wisdoms, encyclopedic knowledge and famous idols. I can call such my style as a
Optimistic Controverse. In order to confirm my right to behave so shamelessly, here is a short list of facts of my life in Programming:
First program written: October 1975
First language learnt: Fortran
First OS: IBM 1400, IBM/360
First UNIX experience: 1987
First Linux Experience: 1994
Languages in use: Fortran, Algol, PL/I, C, LISP, Perl, Shell, JavaScript, 4GLs
Languages learnt, but ignored: C++, Java, Python
Last language learnt: JavaScript, in 2000
Preferred languages: C, JavaScript, 4GL
Technologies in use: (D)HTML, XML, Ajax, TCP/IP
Technologies ignored: UML, SQL
1. The definition of ProgrammingWhat to say about Programming...?
I am often being asked to speak on that. Now I shell try to explain my feel of Programming more seriously. The main and first thing I realized to myself in years - it is NOT just
coding. In other words - it is much more than coding.
Let me define
Programming as a
kind of non-material philosophy.
All what you program in your life - doesn't really exist in material world (except the huge set of magnetic distortions on various media devices, which have nothing to do with your ideas, thoughts and emotions when you are inside the process of Programming). You cannot become a Programmer just by will. It's as much as you cannot become an aristocrat or artist. You can only born with it. Otherwise - you are a
coder, or even worse -
developer. Unfortunately, these states of "programmers" are prevailing in modern times. But let them be, - we need them too.
To be continued...