SimplyBASICsoftware

Simple Software … Simply Effective Results

When Programming Was Fun

 

I recently saw an advertisement headline in a magazine that read “Remember when programming was fun?“. If you have recently tried to write a small Microsoft Windows GUI based program to do some modestly complex task using popular tools you may have discovered programming is not very much fun any more. Today the tools try to “help” and be everything for everybody but generally the learning curve is very steep. All you wanted was a few hundred lines of core logic but it needed to be in a GUI. To use some of these tools you have to be an expert in underlying technologies like COM and dot Net that just don’t seem to be very friendly. Maybe you did not even want to install dot Net on the target machine.

Dot Net has thousands of classes (maybe tens of thousands by now) to do just about anything you want but who has time to even find the class you need when the list gets that long.

Programming can still be fun if you use the right stuff.

I remember when programming was more fun. In the “old days” (pre PC) I thought nothing of sitting down and writing 4,000 lines of assembler code on a machine that had no time of day clock and I even had to keep track of time. I learned a lot about chip architecture, interrupts, and what happens at that level. During the same time period I wrote many hundreds of thousands of lines of code in BASIC and a few other languages but I always seemed to think about the underlying architecture. The assembler experience was invaluable in understanding the hardware even when I was using BASIC. Over the years using BASIC syntax in various dialects became as fluent as my English. I even wrote a B-Tree file indexing system in BASIC before any affordable commercial database application existed.

Over the years Microsoft Windows, and other environments, have led to levels of abstraction that make understanding the machine seem not important. All of the push toward object oriented programming and the dot Net environment, in my opinion, has not really simplified things but made them more complex. You can do many cool things if you can figure out how to use the tools. The simple program in BASIC that many will remember, PRINT “Hello World”, now generates hundreds of thousands bytes of machine code from many modern day compilers.

Object oriented code, while practical for large teams working on the same project, simply makes the structure and overall architecture much more obscure.  Debugging gets harder and sometimes there is unexpected or even unexplained behavior of an “object” that the compiler added.

Others seem to share my opinion but we seem certainly to be in the minority. Here is a reference from the author of Font Forge, George Williams:

 Click here http://fontforge.sourceforge.net/faqFS.html and then scroll down to “Why isn’t FontForge written in C++”.

It seems odd that somebody would ask that question and his choice of language would need to be defended.

Stay tuned to learn how to write a 2d physics game for an iPhone or Android based device. Now that can be some seriously fun programming.

 

April 21, 2011 - Posted by | SimplyBASICsoftware News |

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: