[stella] OT: Programming

Subject: [stella] OT: Programming
From: "Glenn Saunders" <cybpunks@xxxxxxxxxxx>
Date: Tue, 23 Oct 2001 19:26:31 -0700

It is distressing to see how many so-called programmers
don't have the first clue how a computer actually works.
"That's the compiler's job."  Funny, if I thought the compiler
was smarter than me, I'd look for another line of work.

It's depressing, yes, but one needs to also realize the much more pervasive role programming has in our society today vs. the late seventies.

There is a need for more things to be programmed than there ever were, and over a wider range of devices. The ultimate goals of the programming are getting more and more complicated too. Too complicated to be solved by assembly language alone. As much as I like structured programming, object orientation and componentization have a lot of strengths. In the old days all code was sitting right on top of the metal. What they used to call OSs on microcomputers are really more akin to BIOSs today, as they didn't do a lot of task or memory management. Programming today is such a diverse thing. It's like peeling away an onion. At the core you have microcode programming on the chip where there is a fine line between what is software and what is electrical engineering, then you have embedded processor and hardware driver coding which is similar to classic assembly, interfacing directly with the hardware. Then you have OS programming which is like adding little gears and widgets to an enormous machine, then you have application exe programming which is pretty cushy, but (at least to me) seems like it's all about calling other people's functions vs. contributing something meaty for real. It's all glue. That seems to me pretty far removed from the machine. Then you have the new realm of MIDDLEWARE script language which, to me, are the modern equivalent of BASIC. They provide a way for the novice to accomplish tasks in an easy rapid development way. Then you have Java which uses an entirely VIRTUAL machine where there simply is no way to get at the native hardware, period.

So it all depends on what kind of modern programming you are doing and why before you can criticize it all as being 'inferior'.

Cold Fusion is a very limited language, but it's perfectly suited for rapid development of web-based applications, moreso than making compiled DLLs in C++, that's for sure. So what may seem as lightweight programming to one person is the right tool for the job to another.

I think what's cool about assembly, and 6502 assembly in particular, is that it forces you to think in terms of the quanta of the computer itself, the bits and the bytes. This can be a really refreshing change, like going from a romance language that all shares common roots to chinese which has fundemental differences.

We have an inverted pyramid where there are a select few elite individuals who are doing the work right next to the metal, and as you work your way up the chain you have more and more people at each tier.

What the industry must realize is that we must always have some people at the core who can write assembly, no matter how crazy and messed up the CPUs become, in order to facilitate the higher levels to continue. If we lost all our assembly programmers, we'd probably be in really deep trouble. It's like if we all relied on calculators and there were no people who knew how to do math by hand, we'd be in trouble if all the calculators broke.

It's depressing because as far as popular culture goes, C++ or Java is the _only_ real programming environment, so I don't see a lot of interest in the newer generation of coders to learn assembly.

Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp

- Archives (includes files) at http://www.biglist.com/lists/stella/archives/ Unsub & more at http://www.biglist.com/lists/stella/

Current Thread