Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Doctor Q

Administrator
Original poster
Staff member
Sep 19, 2002
40,132
8,440
Los Angeles
R.I.P Thomas Kurtz

From the Your favorite programming language thread:
My first programming was Kurtz and Kemeny BASIC, the original BASIC. If you compare it to, say, Visual BASIC, the difference is major. But you'll still know that VB is a dialect of BASIC.

John Kemeny died in 1992 and Thomas Kurtz died last week (November 12, 2024). They were the co-inventors of BASIC (Beginners All-purpose Symbolic Instruction Code) at Dartmouth College in 1963, as well as creating the Dartmouth Time-Sharing System.

BASIC has had countless implementations, variations, and extensions over the years, including Microsoft's Visual Basic. The list of BASIC dialects has well over 350 entries! Over the years I've written software in a number of them.

Apple's products have supported Apple BASIC (aka Integer BASIC), Apple Business BASIC, Applesoft BASIC, Chipmunk Basic, GLBasic, MacBASIC, PureBasic, TML BASIC, ZBasic, and probably others.

Have you used BASIC?
 
Back in the 80s I was working for the US Government on Saipan in the Northern Mariana Islands on an unusual project: The merger of the Northern Mariana Islands Social Security System (NMISSS) with US Social Security. When I arrived the computer system the NMISSS was using was a flat file database running on an IBM 360/40. Historical storage was on bound spreadsheet style printouts. Input was done via 80 column Hollerith cards.

It was decided that we would modernize by moving the system to an IBM System/23 Datamaster that had four eight inch floppy drives. We hired a programmer to do the work. He did a good job, but the data sets were so large that one had to constantly swap floppies in and out of the drives.

Shortly, IBM introduced a 30MB external shareable hard drive for the System/23. We bought one but that required rewriting all the code which had been written in a variant of IBM Business Basic (which was in ROM). The rewriting task fell to me even though my only programming experience was in PL/1 and FORTRAN on IBM mainframes back when I was at university.

It was a steep learning curve for me, but I managed. A few years later the merger had legally (but not actually) happened so I once again had to rewrite most of the code to accommodate US law rather than Northern Mariana Islands law.

Later we moved everything to PC Clones with System 23 Emulators and, when we got networking, 3270 emulator cards. That enabled me to interact with SSA's mainframes in Baltimore using BASIC and IBM's HLLAPI.

It was quite a trip for a guy who was completely self-taught and working on an isolated Pacific island.

I was younger then. My SSA office in the Saipan Beach InterContinental.
1979_mikework_big.jpg
 
1979, Iowa State University, I cut my teeth on FORTRAN (missed having to use punchcards by one semester). I had a knack for it, the last of six programs we were assigned ran for me first time, just one table of output was blank, and I found the bug within ten minutes!
Start of the Jr. year we had to learn BASIC to perform a lab project, did okay on that but otherwise flunked out that semester (out of 166 Aerospace Engineers my freshman year, only 30 of them made it to Sr. year and eleven of them flunked out before graduation); yeah, builds a great reputation for the college, but I was paying them for an education, dammit! It was fifteen years later before I realized how much of a blessing having to change schools, and change my major from Aero E to Mechanical Engineering, was.
Only things close to programming since have been Excel spreadsheets and Fault Tree analyses, which were fun, in my later years.
 
In elementary school at 9 years old, I learned BASIC on a Commodore PET, taking Saturday classes at another elementary school. I was a Space Invaders junkie and well on my way to nerd-dom at that point, so she asked me if I wanted to learn how to make my own games. At that time, I used PETASCII (PETSCII?) to make the screen of the game in BASIC, but it wasn't until years later that my junior high friend Ray taught me how to program game logic on a TRS-80 Model III. Of course, the speed of interpreted BASIC didn't cut it for said logic, so I learned Z80 assembly on that same machine, and 6502 later (Atari 800).

Learning BASIC was a very important step in my (forever hobby) programming journey. I've done Atari 8-bit, Apple II, VIC-20, and C-64 games (all lost, unfortunately), and in the recent decade or so, written two Dreamcast games and ported many others to the same console.
 
I took a semester of BASIC programming in high school (late 1980s), which was the most basic (ha!) computer class offered by my school. We used a lab of Apple II machines (which included a couple of original Apple II machines).

I probably encountered BASIC earlier when when my elementary school got a couple of Radio Shack Color Computers. I remember us being able to program them, although it was merely typing in an existing program.

HyperCard scripting was the closest I came to doing any programming after that high school class. I was very taken by HyperCard for a couple of years, although I never created anything particularly noteworthy with it.
 
I learned ALGOL as a freshman in a CS101 class at the University of Virginia in 1967. We keypunched IBM cards, put them in a "deck" wrapped with a rubber band where they were submitted to the guys in white coats inside the computer room that held the big Burroughs B-51 mainframe. They would run the deck when they had a chance, which would take awhile for a low-priority CS101 assignment. After the run, they would wrap the line printer output around the cards and put it in a row of boxes with letters corresponding to our last names.

That was pure hell, most of the time the output would just have a few lines indicating a syntax error on card #3 (or whatever). Then you would repeat the whole process, so it could take days to get a simple program debugged and running. That convinced me that, in spite of my interests, I wasn't gonna be a CS major and that class was my only formal education in computers.

Later that year, I visited my genius friend who was on a full scholarship at Harvard for computer science. He showed me their BASIC time-sharing system with ASR-33 teletypes terminals and acoustic phone modems around the campus. I was really in heaven after playing with that for the weekend, it was such a better experience. It took a year or so, but my university also eventually rolled out a similar time-sharing system and my informal computer education began (and still hasn't ended).

Around 1977, I got access to the IBM 360 timesharing system at Carnegie-Mellon, they were running FORTRAN instead of BASIC, so I taught myself that. Funny story - I did grad work at CMU (in theatrical design) but was no longer a student. My girlfriend was still a student, studying costume design and I got her to sign up for an account (she had no interest in computers). I was a regular over at the terminal room that year, writing all kinds of FORTRAN programs. The cool thing was, they had a pen plotter connected to the network that nobody ever used. I wrote a program that could plot 3d wireframe views of my scenic designs. Would be laughably simplistic today, but I was having a great time. Then one day I got the message that my (girlfriend's) account had exceeded its computer time quota, so that was the end. Later, I learned I was actually the only person in the drama dept who ever used the computer center and in fact, I had used the entire computer time allocation for the whole department! 😅

In 1978, I was an early adopter of the Apple ][. Got it from a little store that was literally in the basement of some guy's home in the Pittsburgh suburbs. I got the (expensive) 16k Apple ][ so I could run floating point BASIC, the base 4k model could only run integer BASIC.

So, it was back to BASIC and I wrote some pretty complex programs. When Visicalc came out, I was really impressed but couldn't afford it. I wrote my own simple spreadsheet program in BASIC and used it at work to manage budgets, which really impressed people.

Fun times. 😃
 
Last edited:
My first computer, which I got around 1983-84, was a Laser 200 (with the optional 16 kB RAM expansion):

Disk_smith_vz200_with_ram_expansion.jpg


This ran some flavour of BASIC, and after the initial:


Code:
10 Print "Lasse"
20 Goto 10

...I tried a bit of programming, starting with "Guess a number" game using prompt and command line. (And accidentally stumbling across the binary search algorithm a couple of decades before actually learning about that.) :)

PS! I bought (or rather - as a very young teenager with no income - begged my parents to buy) the RAM expansion after tediously writing a rather long BASIC program, testing out the colour options of the Laser, that suddenly just "dissapeard" once I'd reached 4 kB, and the computer rebooted because it ran out of memory.
 
...I tried a bit of programming, starting with "Guess a number" game using prompt and command line.

I wrote "Guess a number" in BASIC too, along with a program to play the game of Nim.

I also wrote a BASIC program to find integer fraction approximations for real numbers (like this online Fraction Approximator tool). My program, using an algorithm that I read in a math book, found that 22/7 is a simple approximation of pi, but that 355/113 is even closer.
 
I taught myself BASIC on a Commodore 64 at age 11. I took "Computer Science" in high school at 17, and while everyone else was using BASIC to make their name print in an endless loop, I was using it to code an ASCII version of Citizen Kane. The teacher didn't like me because I could answer questions that she couldn't. Her pettiness and resentment came out in the grades she gave me. Looking back, I appreciate the early introduction into what life in the corporate world would be like.
 
  • Like
Reactions: chown33
Unfortunately, I no longer have my Apple ][ but still have the manuals and tapes. This was floating point BASIC, which required 16k to load from tape. A few years later, Apple introduced the AppleSoft Card which had floating point BASIC burned into 16k of ROM. When you flipped the toggle switch on the card, that ROM took the place of the "upper" 16k of RAM. Now BASIC was built-in and no longer needed to be loaded from tape and it freed up the precious RAM required by the tape-based version. Big upgrade, I was really thrilled to get one of those!


applesoft1.jpg


applesoft2.jpg



This was the manual for the built-in integer BASIC and the Apple ][ operating system.


basic.jpg



basic2.jpg
 
  • Like
Reactions: ILoveCalvinCool
Yup! They taught it (and LOGO) in my elementary school on TRS-80's. I had an Apple II+ and home and recall making a silly choose-your-own-adventure type game with it.
 
Yep, had the original Apple ][; still have some of those manuals. Pretty much everything was done in BASIC in those days (magazines were full of program listings), then came assembly, Forth (don't ask), Pascal, and XPL0 (Algol/C local club language). There was a pretty active Apple user group in the Denver area at the time - it even had Jobs and Wozniak at one of the meetings. Those were the days.
 
  • Like
Reactions: ILoveCalvinCool
Unfortunately, I no longer have my Apple ][ but still have the manuals and tapes. This was floating point BASIC, which required 16k to load from tape. A few years later, Apple introduced the AppleSoft Card which had floating point BASIC burned into 16k of ROM. When you flipped the toggle switch on the card, that ROM took the place of the "upper" 16k of RAM. Now BASIC was built-in and no longer needed to be loaded from tape and it freed up the precious RAM required by the tape-based version. Big upgrade, I was really thrilled to get one of those!


View attachment 2452784

View attachment 2452783


This was the manual for the built-in integer BASIC and the Apple ][ operating system.


View attachment 2452786


View attachment 2452785
My manuals are... a bit different :) (excuse the shadows: it's first thing in the morning here).

IMG_3661.JPG
IMG_3662.JPG
 
  • Like
Reactions: Buadhai and Boyd01
ZX Spectrum - some obscur variant in the early 1980's
PDP/RSTS - Basic on PDP-11 - mid 1980 professional use
VAX/VMS - Vax Basic - as above, in combination with VAX Pascal and some Macro-32 assembly - same period
M68000 - CPM and another Basic variant - mid 1980's
Intel/PC - Visual Basic in early 1990's

Then I went full C and assembly language on Digital and Intel platforms until mid 2000. Not much programming since then except shell scripting on Linux/Bash.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.