How it all started, for me.

I don't know how I got this kind of visions, but already in the early 1970's I 'saw' that I would once have a room with many computers in them. In those days, computers were "the things with the blinking lights" like you saw them in Star Trek episodes and the like. This vision has become true, to some extent. But the computers are not solely in my house, but all over the industrialized world. And they don't have blinking lights anymore.

Before 1980.

I started programming in 1974, when I entered Highschool (EE). We were taught HP Basic on a Hewlett Packard mainframe. Rattling teletypes, 8 in total, plus one with a nonvolatile mass storage adapter: a papertape puncher...
Later I moved to another highschool were we borrowed CPU time from the Technical University, who ran a Burroughs computer in their cellar. We were taught Algol 68, BEATHE and later Pascal. Of course I remained faithful to BASIC as long as I could, but compiled languages were in favor with most teachers.

After 1979.

In 1982, I bought my first private computer which ran BASIC (on the ZX-81). With a short intermezzo with ASM (Spectrum) and Forth (Jupiter Ace), I remained using a flavor of BASIC until I bought an Amstrad CPC 6128, which had two operating modes: Locomotive BASIC and CP/M Plus, when booted from the internal 3 (yes: THREE) inch drive. This was the turning point.
After some time I decided it was time to have a taste from some other languages as well. The british company Hisoft produced some high grade compilers and development tools. But shipping charges were high in those days, so it wasn't worth while to just order one software title. Which made me place an order for:

That was around 1986. C was hot in those days. Only few compilers were available. And Hisoft made a very good one which was released for several platforms.
I made my first steps in C with the Hisoft C compiler. It had lots of neat features, most of which I forgot by now. One task I set to myself was writing a bookkeeping program for raw material stocks. I had a reasonably well working program (for a first project) but I had to add one topic. I changed the source, recompiled and got endless errors. I changed back to the old version, but the errors remained. After a few weeks I gave up and rewrote the whole thing in assembly language.

The IBM PC compatibles era.

Later I bought a PC and started programming in 8088 assembly language. I used Speedware TASMB and TDEBUG. Yes, Speedware, not Borland. Borland aquired the Speedware products shortly after I purchased my disks. And started to kill the Speedware features... I stuck with the good old Tasm until late in the 90's. And I nicknamed myself 'the assembly missionary' since I always wanted to convert people to start programming in assembly language, rather than in one of the considerably slower toy languages.
Which doesn't mean I "ONLY" used assembly language... To the contrary. I got familiar with Modula-2. Now THAT is a programming language...

In the mean time I got myself a copy of Mix Power C and the related Ctrace debugger. That was a mighty fine C compiler. OK, you needed the debugger since errors are very easy to make and extremely difficult to find, but the pair was nice. I used the Power C compiler to see if C was something for me.
It wasn't. Too cryptical and too easy to make mistakes. And you just NEED a related debugger to get the errors out. And you need massive amounts of testingtime to get the runtime errors out. Now, C was named 'the portable assembler', but with this low amount of protection offered by the compiler, I was better off with a good assembler and a good set of libraries to re-use software.

So in essence, I stuck to assembly language, but switched to the A86/D86 system since this was better suited for newer projects. To my opinion, A86 and A386 still are the best assemblers ever made for the 80x86 platform. And cheap. I wish Eric would offer a version for Linux. But he won't and I can understand it.

Welcome to the compiled languages.

Around 1996 I realized that on the CPU's of that time (P75 and up) it didn't matter much anymore which language you used. These computers were so damned fast that BASIC was almost as quick as assembly language. So I decided it was time to move to a compiled language. Which made me evaluate my previous experiences with other programming languages

This all made the choice rather simple. So I registered FST Modula-2 and got the latest version, plus full sources of the library modules. Combine this with the Coronado tutorial and you have a very good starting system. The FST compiler did not come with a debugger, but you just don't need one with Modula-2.
I did a fair amount of programming with the FST Modula-2 compiler. Check out the Modula-2 pages on this site (see navigator frame on the right). At the time, I was the QA engineer at Ushio and I had confiscated a worn out 486 that was too slow for most other employees. So I installed DR-DOS 6 and my own goodies. Yes, Ushio profited a lot from that old computer with a shareware compiler.

Current situation.

At present, my favorite language is (and probably will remain) Modula-2. It is versatile and very well to read and write. I use this specific order: READ and WRITE. A Modula-2 source can be read by most anyone. Especially if you are not the original author. Which is not the case in many other languages.
Furthermore, Modula-2 has many features that other languages lack. There is one language in which you can write a million tokens in a string of length 16 bytes. Many authors of books in that language hail their favorite language in it's power that it does not check on the bounds of an array. Which, in terms of stupidity, come close to a warning on pistols like "Do not look into the barrel, when pulling the trigger".

You probably guessed which language I am referring to. It's the most used language around nowadays, which may be an explanation why there is so much buggy software around, as well. But bugs mean dollars too. Most PC users are stupid enough to buy software from Redmond (WA) and pay money for every update of it, which have newer bugs, and so forth.

This all doesn't apply to Modula-2. So I want to use this language by default. But this default position makes my wish rather difficult: I want to learn how to make GUI based software for X Windows. And not with any compiler, but with the Mocka compiler since this one is truly free, for Linux users. So now I am delving through my C++ books again, trying to get some sympathy with the devil. Sorry, C++. Slip of the tongue.
In the meantime, my aversion against C++ grows. I just hope to get some more understanding for being able better to read and understand the Qt sources. My goal still is to try to make a FOREIGN MODULE for Mocka, based on a GUI language, whether that is GTK++ or Qt.

Just follow these pages and return at least once a month to see how I'm developing. I might perhaps even start to like the C++ gobbledygook.... Perhaps, when hell freezes over. You never know. There was snow in Sitges (near Barcelona, Spain) this winter...

And this is how the future of programming languages looked like in 1981. It couldn't have been any worse....

Structure of this site.

This site is modular and it re-uses code. So if you want to visit the assembly language section via the navigator frame (on the right), your browser just loads the files that are on the respective directory on the fruttenboel server.
The same applies for the topics about GUI, Mocka and Modula-2: you will see the pages I made earlier. Still, since this topic is about programming and languages, I wanted to offer the possibility to surf these sections without having to take the detour via fruttenboel main.

Everything below 'C and me' is part of the crusade. If you are rather faint hearted and a c-soned C programmer, don't read those pages.
If, on the other hand, you have an open mind and the urge to read other people's opinions, please open the pages and supply me with feedback.

Page created February 2005,

Page equipped with googleBuster technology