Thursday, May 25, 2006

Programming should be easy

The BASIC programming language was the original easy to use language. This was no accident. The inventors of BASIC designed it to be easy. People from all walks of like created their own software in BASIC on small computers that plugged into their television sets. I was one of those people, and many of you visiting this site remember what that was like. These computers were called home computers. They were simple and could be completely understood by someone without formal training. Anyone could learn to make the computer do what they wanted, and it was a lot of fun!

BASIC was at the center of all this.

However, once the IBM Personal Computer (the IBM PC) made its debut, the home computer began to fade. Every company wanted to make PCs, and home computers began to disappear from stores. With every year, creating software for PCs (which are really business computers) became more and more complicated.

Most home computers came with BASIC built right in. Just turn one on and it says something like:

**UltraBASIC v2.23 - 28374 bytes free**

READY>

Then you just jumped right in and started to program your computer in BASIC because BASIC was the startup mode of the computer. It was easy, everyone did it, and an entire industry grew up from it. This was real computer literacy, not just knowing how to use a word processor or play games and music. People wrote their own games and word processors. Much of the time this was out of necessity, but many people discovered they loved doing it!

Today we have a completely different picture. Programming languages are complicated. The software culture worships complexity and the popular programming languages of the day require thick manuals. Lots of money is made selling training. Programming it seems, is not for the rest of us.

3 comments:

Tom Dison said...

To some extent, I think this is why some of the scripting languages, such as Ruby and Python, have taken off. I remember looking at the code to open a file, process each line and do something (like replace a string). In Ruby it was one line of code and it made sense. In Java or C# I'd be dealing with Streams and all kinds of goofy stuff. However, I think languages like Python are too hard for the average computer user. I agree that Basic is a good language that _can_ be made easy to use. I am really intrigued by a web-capable simplified basic. You just might revolutionize website programming for many of us!

Carl Gundel said...

Hi Tom,

If you look at some of my older posts you'll see that I am a strong proponent of interactive programming systems. If fact I am working on a version of BASIC now that brings some of the interactivity of older BASIC interpreters into a modern version of the language.

Tom Dison said...

Part of the power of the older basic systems was the integration with the OS, just like we see with modern BASH and KORN shells. They are used to script and interact with the OS. As you have said, older computers booted right into a Basic command interpreter. I still believe the worst thing Microsoft did was to merge DOS and Windows into Windows 95. I liked the sepatation and cleaness of booting straight into a command shell. I can still do that in the Linux world and I have all the power of the OS at my finger tips. It seems silly to boot into a Graphical Shell on a server. What a waste of resources. Maybe you can write an Explorer replacement that it a Basic command shell. However, I think you probably have a full plate right now with LB5, etc. I can't wait for LB5 for Linux. Woo! Maybe someone will make a bash-like LB Shell. That would be way cool!