Adding to Cart…

Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2025 Daz Productions Inc. All Rights Reserved.You currently have no notifications.
Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2025 Daz Productions Inc. All Rights Reserved.
Comments
They're actually experimenting with steno programming now:
https://www.youtube.com/watch?v=Wpv-Qb-dB6g&t=396
They're actually experimenting with steno programming now:
https://www.youtube.com/watch?v=Wpv-Qb-dB6g&t=396
The text typed in, almost reminds me of assembly. Another time and another lifetime ago, lol.
Yea, but assembler is sort of opposite - type more, accomplish less. :)
I used to do a little bit of assembly. I was never very fond of write-only coding... ;-)
I once did an assembly program. I made an error in one line of code and the whole program was messed up.
I had the joy (?) of programming in 8 different assembler languages on 8 different platforms over my career. The first 3 languages and 2 platforms were down at Purdue and just playing around. The rest were real-world communications programs and security exits - hard to actually test and painful if they didn't work. So glad I don't need to do that any more.
I once pointed out to my English teacher that the subject of the sentence for the rule
"There is never the subject of a sentence" was There.
I loved assembler. It's like building with Legos. Few pieces, infinite possibilities. I'm not sure I can remember all of them but it's probably around 6 different types.
IBM 1130 during late 60s;
Xerox Sigma 5 early 70s;
Raytheon: 704 & Raytheon RDS-500 in the late 70s;
Intel: 8080, 8086 & Z80 during late 70s & early 80s;
Motorola: 6800 & 68000 during early 80s,
Motorola: 68010, 68020, 68030 & 68040 in the late 80s & early 90s;
Assembly programmers learn to be precise and careful or they shoot themselves in the foot in mysterious and unexpected ways.
I loved assembler. It's like building with Legos. Few pieces, infinite possibilities. I'm not sure I can remember all of them but it's probably around 6 different types.
I didn't mind assembler so much as the fact that I was the only one in the shop that had a clue about it -
At Purdue - FAP (Fortran Assembler Program), IBMAP (IBM's Macro Assembler for the 7094) and Compass (for the CDC 6500)
Then - BAL (360 series Basic Assembler Language - to interface with IBM 2780 remote printer/readers)
BPL (Burroughs Programming Language, which they claimed was a high-level Algol-like block structured language. I maintain that any language which requires the programmer to safe-store an index register before certain operations is an assembler)
MacroL for the Raytheon PTS 1200
Gmap (GCOS Macro assembler for the Honeywell DPS series)
Datanet 355 micro-op strings for the DPS-8 communications front end
BAL - again - for IBM mainframes running MVS - upgrading from MVS to MVS-XA to MVS-ESA
And the assorted high-level languages . . . Can't complain too much, for the most part it paid well and left me with a comfortable retirement.
I loved assembler. It's like building with Legos. Few pieces, infinite possibilities.
Yes, and you have full control over everything, and understand what's going on in every detail. With high level languages you often don't have a clue about how the libraries and controls you're using work. For the same reason I avoid 3rd party controls and libraries where I can and write my own code, so I have full control over what's going on and can fix any bugs.
I once wrote a printer driver in assembler for a Star matrix printer, for printing the graphics screen on a Commodore 128 (it has two separate screen modes - text and graphics). It read screen memory pixel by pixel and converted the data into code the printer could understand. Strange as it may sound I didn't even have access to the printer and never saw it in action - I'd won the 2nd price in a programming competition held by a computer magazine and was contacted by a guy who lived in another part of the country who had read the magazine. He was an astrologer and he also had a C128 which he used for an astrology program he had purchased. It was written in Basic, for the C64, and was compatible with the C128, but it didn't have any graphics extension so it could only display the data alphanumeric. So he asked me if I knew how to write a graphics extension and a printer driver so it could also display and print out the radix horoscope and all the astrological symbols and stuff. I had actually studied astrology a bit myself and had been thinking of writing an astrology program (didn't know of any) so that was a rather funny coincidence.
The author of the program even gave us the rights to the C64 code for free if we wanted to make our own commercial version for the C128, so I went ahead and started working on the project, first the graphics extension in Basic, then the printer driver in assembler. I regularly sent him the latest version on 5.25" disks so he could test it, he then sent test printouts of the screen back which I interpreted and used for debugging the code. Eventually we got it working and the bugs straightened out. Pretty awkward but without no internet or modems (I didn't even have a phone) that was the only way to do it.
The commercial part of it was a flop though, I spent over a year working on this project but when it was finished the C128 had become more or less obsolete because the Amiga had entered the scene. But I learned a lot of stuff and it was fun.
This reminds me of the Benchley proposition, devised by Robert Benchley, a very famous humourist in his day (and grandfather of Peter "Jaws" Benchley):
There are two different types of people in the world, those who think there are two different types of people in the world and those who don't.
See if you can refute that statement.
Cheers,
Alex.
Argh! Assembly code. The only assembly code I got any practical use out of was 6502. I also wrote a printer driver. I had an Ohio Scientific C2-OEM system that had a simple Centronics printer driver. I wrote one for an NEC Spinwriter, which was a daisy-wheel type printer. You had to tell the printer EVERYTHING it needed to do. What I did was patch the OS so that instead of loading the standard driver, it jumped to my driver which was too big to fit in the same space as the regular driver, then return. I can't believe I got points taken off at the vintage computer fair because I modified the interface. >:-(
I also wrote an EPROM programmer in 6502 assembly. It would burn the EPROM with whatever was stored at a certain range of addresses. I stored the program in an EPROM. With a few simple keystrokes, I could make the program copy itself. I originally wrote the program as a bit map tester for the EPROM chips while they were still on the wafer. It printed out a physical map of where all the good and bad bits were. Needless to say, the memory chips had a lot fewer bits back then than they do now!
Old brains are full of holes. I finally snatched a fragment of a memory and reconstructed this much of another assembler I worked with. Sometime during the late 70s or early 80s I worked as a contractor for a division of the Harris company writing some sort of deep level driver for something that had to do with engineering control systems and graphic display tubes. Ayden color graphic display tubes I'm sure, but I don't think I did any of the graphic programming myself. Regardless, I was really proud of the code I created because it was very tightly structured. Deep level errors would propagate themselves up the hierarchy and each level would add additional information to an error message that eventually was intended to be read by a human. The human readable error message would tell you in almost proper English just what the problem was and what had caused it. No mysterious "401 Error". It was more of a "This is how you screwed up, jackass!" message.
I remember the code more than the computer, but the computer was unusual to me because it was a octal machine with 24 bit instructions which was strange because previous to this I'd always worked with hexadecimal machines with 8 or 16 or 32 bit instruction lengths. I do remember that Harris had bought the computer technology from someone else and re-branded it. I believe the operating system was called "Vulcan". I remember the Ayden color graphic displays in particular because they were like the ones I drooled over but was unable to access when I worked at the Kennedy Space Center earlier in the 70s.
Weren't the DEC machines octal? Perhaps a re-branded PDP-10? We had a project using a PDP-8 at Berzerkeley, but I was doing circuit boards, not programming.
My favorite error message of all time is "Tape drive will not fit through a 24 inch hatch." :lol: This was a real message buried deep in the Apollo Computer Aegis operating system. It was supposedly a snide comment on the reason Apollo lost a US Navy contract bid.
I love computer languages. I had every language available for my Amiga from LOGO to Forth to C (this was prior to the official OOP era). But I also had fun with the C64 using ML. Well not so fun when I'd carefully write a little program and check everything twice, three times. Then I'd step through it to watch it in action. BUT about the third step I'd go "Oh sh!tzu" because I'd just stepped to the command I'd put in to disable interrupts which meant now the keyboard was dead and I'd have to turn off the C64 and start all over.
I remember my first paradigm shift where I actually almost physically felt it in my head and I couldn't go back to seeing programming the way I'd seen it before. That was the switch from "top down" to "event driven". I struggled for a couple weeks with a magical Amiga program called Helm. Until it hit me and I can't explain it but I suddenly understood and from that point on it was as easy as brushing your teeth. I remember my first program. It was a Christmas scene and each item you clicked on played a different Christmas carol. The command attached to the click was a simple 'Play Notes Me' and the notes to play were 'embedded' in the object along with the picture that was displayed.
Real OOP took a while for me to grasp because I learned that on the PC with Delphi and you had to account for every bit of memory you wanted to use. Yeah, in the long run, protected memory was the way to go. But the Amiga was so easy--it took care of all of that and any program with an ARREX port could talk and listen to any other running program with a port as well. And if you were close to running out of ram, the Amiga kept back enough to give you a message of Ram Scram or Memory Panic to give you a chance to save or close something.
Arghh... more ghosts from the past. For one year in Orlando (1983) I'd gone to work for Control Laser Corporation as the lead programmer. The first job given me was to rewrite the code controlling a multi-axis laser cutting robot from a Siemens computer to a Motorola 680x0 based computer.
1st problem: The Siemens was a German machine. The code was in German assembler. The manual was in German.
2nd problem: The Siemens machine was a special purpose multi-tasking machine with 16 Sets of 8 hardware registers (or was it 8 sets of 16 registers???) that would permit quickly switching between 16 (or 8) separate tasks simply by flipping which register set was active. But the Motorola 680x0, though it had several registers it didn't have but one set of them.
3rd problem: The original Siemens assembler code had zero comments!
With the help of the 10 weeks I had of German class in college and a German/English Technical Dictionary I made great strides in learning the German assembler by struggling through the German computer manual. Load, store, add, subtract, shift, and, or, xor. A rose is a rose in any language. By flowcharting the code I eventually grokked what it was supposed to do. And there were a lot of pictures that helped too. :-)
I tried to rewrite the code with new logic more compatible with the Motorola architecture but ran into difficulties that made it look unlikely I was going to succeed on schedule.
The solution: The Motorola was much faster than the Siemens. And the computer didn't interface with many peripherals. So instead of rewriting the Siemens code I emulated it. Worked pretty well after I whipped up some Motorola specific drivers to manipulate the robot joints. Not the best of solutions but in the absence of identical multi-tasking hardware a workable one.
No, I'm sure it wasn't a PDP. I've been trying to remember and have even been Googling to try to determine which computer company that Harris bought in that time frame. and the more I think about it, I'm sure that it was an octal machine but I think it had 18, 24 and 36-bits instructions.
I know the company wasn't Scientific Data Systems (SDS) they were bought by Xerox to become Xerox Data Systems (XDS).
The company that Harris bought out was a big name at the time (at least in local computer circles) but wasn't DEC. I'll know it when I see it or hear it.
Ah, edited to add what I think is the answer:
I believe the company I was thinking of was Systems Engineering Laboratories (SEL). The link below says they were a break away from Harris and then bought by Gould. But from personal experience living in the Melbourne, FL area for decades, and from working for Harris a few times I know that Harris grew/acquired/split many new divisions over the years and engineers came and went bringing or taking technology with them. Major major player in military and engineering circles. Regardless of the official Harris/SEL relationship, the company name I remember as being responsible for the design of the "Harris" computers we used at the time (~1981) was SEL.
http://en.wikipedia.org/wiki/Systems_Engineering_Laboratories
I can mess up a program with an error in one line of code in any language (and I frequently have done).
I liked programming in assembler. I mostly did Z80 assembler in CP/M with a bit of 8086 in MSDOS (although I didn't think much of how the 8086 addressing system works). The great thing about assembler is you are completely in control. I miss the days when you didn't have to create a whole heap of objects just to display something on the screen.
Getting back to the original topic, my spelling is pretty unreliable. It's probably because I've never been good at just memorising stuff which doesn't have any logic to it. At school I was terrible at History and Geography, in my day these were all about remembering who was Prime Minister in any given year, writing the names of rivers and towns on maps and what is the principle industry of this town or region (and how many of those principle industries are still going?). I nearly allways spell always wrong, I see it as all + ways so it's obvious how it should be spelt. And most of the so called rules are riddled with exceptions. You are supposed to use an apostrophe to mark a missing letter and to indicate possession so by those rules the abbreviated "it is" and "belonging to it" should both be it's. I'm pretty sure one of them doesn't have the apostrophe but I can't remember which.
And as for hand writing, I was really glad when I switched to keyboards. When I was taught to write we used horrible pens that were just a nib on a stick and the ink took ages to dry. I'm left handed, and if you try and use the same type of grip as a right hander with one of those your hand goes across what you have just written and smears it into a complete mess. I developed a grip twisting my hand round that did work but was very uncomfortable. I moderated it a lot once I was allowed to use a biro, and if I try and use a fountain pen now I usually smudge the writing pretty badly.
Ah, yes. Penmanship. We did that in third grade - fountain pens and the whole cursive writing training bit. I failed. Never did get really legible handwriting. I have a real bad habit that four successive teachers never managed to break me of; I rest the heel of my hand on the paper and write three to five letters just moving my fingers, then move my hand, then another three to five letters. The result is cramped with irregular spacing. And I still (50+ years later) write that way.
I have heard that they are not going to teach cursive in schools any more. I'm a bit sad about that. Not because I just love cursive. I tend to write a bastard cursive that has printed letters tossed in as well. But had I not had to learn cursive I doubt I ever would have learned to write at all. Having the letters attached to each other helped me remember which way they faced.
I recall that - ESC codes for every single operation. "Perform one n/216-inch line feed" etc..
Found an old printout from the astrology program, looks terrible but that was the printer resolution of those days...
--
Do programmers spell better? Maybe, maybe not. Programming languages are precise but there are debugging tools that help find problems, in a way like spell checkers. However, errors in spelling of commands or variables is minor compared to logic errors though both have the same effect: boom
Though spelling errors (typos really) will cause immediate harm, logic errors can be very subtle and the problems, cascading in many cases, often are not obvious. That's the fun of debugging which I really loved to do.
BTW my claim to fame is doing work for Saturday Night Live back in the late eighties. I interfaced the Mac to an IBM midrange machine so they could access our software and enter/retrieve data. It involved both finding hardware and writing software.
Hmmm..., isn't that a bit like plugging a 110v TV into a 220v power line using an American plug and a British Socket and the only tools at hand are stone knives & bearskins? 8-O Congrats!
And to sway the OT back to another OT let's talk cursive for a moment. In a brief flash of inspired insanity I decided to learn Russian. Actually it has gone pretty well, I don't intend to compete with Tolstoy or Pushkin but at least I can pause TV scenes and read building signs and protest placards semi-successfully and even grasp a few words here and there in Russian news sites. I have a Russian keyboard and I've even been practicing hand printing Russian. Although, for a lifelong Englisher, some of those letters require entirely too many strokes! And then I thought why not learn to write in Russian cursive! Great idea until I found this picture. I'm tempted to draw a little sailing ship, a couple of lightning strokes and a puffy faced cloud blowing hard on those waves . 8-s
I agree, spelling is low down the priority list when I'm programming. I concentrate on the logic and rely on the compiler to spot the typing errors. A program never compiles on the first attempt (at least not for me) so I might as well clean up the typing errors while fixing other problems. I evolved this technique years ago before IDEs when we did everything from the command line. Of course these days with intellisense and stuff like this you often don't do much actual typing, just selecting from a list of things the IDE thinks that you want to type.
The one typing error that can be tricky to find is if you mistype a variable name so that it comes out as a different variable. And with languages like Basic where you don't have to declare variables, any mistyped name just creates a new variable and that can be a nightmare to track down.
And there are logic errors and logic errors - I worked with a Burroughs system for 6 years and got to see a real beauty when we converted to the Honeywell system. We re-ran the previous year's financials to validate our conversion of the COBOL programs. Accounting looked at the reports and said "What do you mean our net income was only $1,200,000 last year? It was over $9,000,000". Indeed it was - it was $10.200.000. It seems that if you do "add A to B" on the Burroughs and the result won't fit in B as defined - the Burroughs system toggled the overflow condition and did NOT store the result. Every other system I'm aware of would toggle the overflow condition AND store the result, loosing that left-hand digit. While the add construct allows "Add A to B on overflow " I've never seen it used in non-financial companies.
I gather there were some interesting discussions on the executive level and in the board room after that; seems the numbers had been low for three years running and no-one noticed it, even though other reports would have shown discrepancies. Luckily it was a privately held company so they didn't have to advise stockholders or such.
LeatherGryphon - I started a free Russian course taught by a friend some years ago (had to drop out because of illness) but we got into some of this. That top left word looks like 'mouse' (I think - it's been over 20 years) - and actually contains 4 letters, IIRC. Also, they can be written as shown, OR wit rounded tops, like a continuous string of lower-case cursive 'n's.
Speaking of logic errors, I still have an original but still functioning Texas Intruments TI-30 calculator (~1976). Mine is one of the very early models that has the logic error that causes it to go into an infinite loop as described in the link below. The biggest problem with calculators of that era was that they simply inhaled 9-volt batteries like a desperate coke addict. 8-(
http://en.wikipedia.org/wiki/TI-30
I used to have their original similar calculator that was intended for computer people, the "TI-Programmer" (~1978). It calculated and displayed decimal, hexadecimal, and binary and I think octal. It had logic functions AND, OR, XOR and NOT in addition to the four basic math functions. It was a very handy tool for manually pouring over long paper core dumps trying to find logic errors in your assembler program. "Eek, how did my looping "LD" instruction get changed to "PRINTER EJECT PAGE" instruction?" 8-s Unfortunately my "TI-Programmer" calculator bit the dust many years ago. :-(
Cool beans! :-)
Hmmm..., isn't that a bit like plugging a 110v TV into a 220v power line using an American plug and a British Socket and the only tools at hand are stone knives & bearskins? 8-O Congrats!
And to sway the OT back to another OT let's talk cursive for a moment. In a brief flash of inspired insanity I decided to learn Russian. Actually it has gone pretty well, I don't intend to compete with Tolstoy or Pushkin but at least I can pause TV scenes and read building signs and protest placards semi-successfully and even grasp a few words here and there in Russian news sites. I have a Russian keyboard and I've even been practicing hand printing Russian. Although, for a lifelong Englisher, some of those letters require entirely too many strokes! And then I thought why not learn to write in Russian cursive! Great idea until I found this picture. I'm tempted to draw a little sailing ship, a couple of lightning strokes and a puffy faced cloud blowing hard on those waves . 8-s
Wow! Is that for real? And you want to learn that? More power to you...that's wicked!
Semi-related to cursive, I always have Explorer in thumbnail mode. I was going through some old Japanese freebies--don't remember who did them--and noticed with the tiny thumbnails the flowing lines and curves of the picture elements. All figures were posed in a pleasing manner with arms, tilted head, slightly bent body, little umbrella at just the perfect angle. So pleasing to the eye and then it hit me something I should have realized all along, that growing up writing kanji or katakana (I hope I've got that right) internalizes this beauty and of course it would show up in the art as well.
Actually it's not all that bad. Image below is the Russian alphabet in cursive.
I imagine that if in English we wrote in cursive using words composed exclusively of the letters w,u,v,i,n,l, and m that we'd make some "waves" of our own. Fortunately we don't have many words that collect those letters in long strings.