Thus why I call “C” the world’s most sophisticated PDP-11 macro assembler ;).
What that does emphasize, however, is just how pleasant and well designed the PDP-11 really was, since the “C” language is now the world’s most popular language for writing low-level code (thanks to the success of Linux, amongst other things, but still) despite not mapping well onto the hacked-up Intel assembly language (which is ridiculously nonorthogonal and a PITA to optimize for). Nowadays I only drop down to assembly language when I’m dealing with something ridiculously limited like a PIC chip that has 4K words of program memory and no timers or interrupts, where everything I do has to be cycle-counted state machines to make the timing work. But that’s another story.
]]>At the school I taught at I administered the PDP-11, but it had ATT Unix on it [free education license]. It was a breeze compared to working with the original Data General Nova 3 because it had the memory and disk resources to keep everyone moving at the same time, as well as a 9-track tape for loading and back-up. It could also output to the line printer at full speed. We shifted a lot of the student load off the IBM 360 and got to move away from cards for everything except the COBOL and CICS courses. Good times and no reason to just dump them – if it ain’t broke, don’t fix it. The PDP-11 has been the standard system for nuclear power forever, and there is no good reason to risk something new.
I took drafting in high school and had the tools, but my skills were only adequate as far as I was concerned, even though I took top marks. Now I can do the job with decent software programs that can make up for my weaknesses. I know what I want, but my hands don’t want to go along with my mind when I try it freehand.
The ability to click and have the output go to the plotter is a wonderful thing for me.
]]>Hey… want a laugh? (or a job in Canada?) 😉 😀
I know from working for HP in late 90’s that they were pissed because they wanted to kill the PDP-11 deader than purple suede shoes! But GE and a couple other major companies had news for them! LOL They said they planned to use them until 2050! And that was that! LOL I did a quick Google and found this posed to a Canadian IT board last year:
“ChrisGE is offline
Join Date: Jun 2013
Greetings from GE Canada!
I would like to reach out to you to let you know about a fantastic opportunity in Peterborough Ontario Canada for a PDP-11 programmer. The role supports the nuclear industry who has committed to continue the use of PDP-11 until 2050!! Yes I know this is a hard-to-find (existing) skill. We will also consider programming experience with other assembly language. If you are interested, or know of anyone who is, please feel free to email me at chris[.]issel[@]ge[.]com
Thanks!”
(email edited by me).
I am still laughing over that! (I don’t like HP either!) LOL
Actually, Mentec in Ireland have the LSI-11 rights. 🙂
Drafting was a big part of the COT! And VERY strict! They measured everything! Even the text had to be a precise size and shape! Spaces between lines, thickness, radius of bends, pad size & shape were measured, and woe betide you if you hadn’t properly taken current or LCR into account! I am (smugly) proud that I scored top marks in that (98% – a high distinction)! LOL 😉 And it did come in very handy over the years.
]]>I did the tabletop version with an old plastic dishpan and some tools for developing photographs as well as a surplus military gas mask, because even without the air bubbles the etchant was foul and I couldn’t move air fast enough to avoid it. My neighbors thought I was really strange when I did it. I had conversations with the local cops and firemen on more than one occasion, but it wasn’t illegal and I was following the manufacturer’s directions. I even took out my soft lenses and wore glasses because I wasn’t sure the stuff wouldn’t affect them.
Fortunately there were press on designs for ICs and and other components so I didn’t have to depend on my nonexistent drawing skills for anything other than lines. Later I mastered the use of the system where you mimicked the photographic system, but it didn’t save as much time and effort as I thought it would for one-off projects.
Both Unix and C owe their existence to an unused PDP-7 in the bowels of Bell Labs, but that’s just history and can be ignored. [What some people will do to play games is amazing.]
]]>So long as you only need a single or double sided board. Multilayer boards have to be specially manufactured of course. But back in the late 70’s, they were not even a dream yet! LOL
I made my own solder station with an old electric thermostat controlled frying pan for the solder bath and a drill press with an adjustable board holder. 🙂 You could buy a cool tool that would snip and crimp the component leads at the same time. Stopped things falling out while soldering! 😀
Those where the fun days! 😀
As for Java, yeah I started with v1. It sucked (and not just speed!) LOL
LOL badtux! 😀 Actually, DEC used BLISS for the PDP’s mostly, and VMS (for all the OS utilities anyway). 🙂
]]>“C” is, of course, a macro assembler for the PDP-11 ;).
]]>C was definitely a welcome replacement for the assembler I was occasionally having to write to get things to work at a decent speed.
Java is definitely useful these days, so I can understand his interest.
]]>The early versions were too slow for the work I was doing so I left it behind.
Perl and PhP are well beyond the borders and need to be seriously reined in to be reliable. They absolutely require defined standards to be maintained and to ‘play well with others’.
I’ll pass along the Javaworld recommendations that Kryten mentioned.
]]>Regarding best practices, that is the same regardless of the computer language (at least when you’re talking about object-oriented computer languages), I use the same best practices in Java that I use in Ruby, Python, or C++. Perl and PHP are a bit… special… because their syntax is so loose and makes it so easy to shoot yourself in the foot, I use a more strict set of rules there. There are special rules applicable to particular problem domains, such as “separate out the business logic from the presentation” (otherwise you have a pain in the butt when you want to go change the presentation because people want the GUI to look or operate differently), and “make everything an API except presentation”, but those are all language-independent too, though some languages make it harder than others (PHP, GRR!!!!).
]]>