IO programming: that's why some test stations still run Win98 and older versions of Windows and Even DOS. You had direct access to the IO port. that was changed and made much more complex for security reasons or for Microsfot to make more money.
Martin wrote: And yet, we work more today than back then. What went wrong?
While some things are indeed a lot easier now -- my favorite example is being able to capture transient events using a digital 'scope -- many things are much harder. In particular, it's much harder for a CPU to talk to I/O devices. My favorite example of this is that the PDP-11 Peripherals Handbook has a chapter called "Programming" which covers how to write I/O programs in PDP-11 assembly language using both busy-waiting and interrupts. The chapter is eight pages long.
Nowadays device-level programmers have to deal with Windows or Linux device drivers, which require understanding thousands of pages of arbitrary complexity, and modern SoCs require hundreds or thousands of lines of initialization code just to get started.
Another example is USB. If you're using a properly-designed USB device, it's really easy: you just plug it in and it installed as if by magic. If you're writing the software to implement that magic, it's a nightmare.
The great thing about punch cards is that you can fold them into missiles and launch them using a rubber band. They're really dangerous: the point is sharp and they'll go quite a ways into acoustic tile ceilings.
I don't miss them either, as I paid $350 for my first floppy drive. An Apple II with 147K storage capacity! Woz was the man. New EE's now do not have a clue on how much easier things are now, compared to back then.
You are not old school unless you used punch cards to enter your programs. My first embedded programming was with an Altair 8800(?) toggleing switches. Then got to work with a 6803 system writing assembly language and storing them on the 8 inch floppy!! First system design was a 6502 based cpu, so wrote assembly code on an Apple II computer.
A few years after graduating, I returned to my fraternity house and was appalled. There was a TV-100 in the second floor landing, connected over an acoustic dialup modem to the school VAX computer. A great convenience, but it meant the gweeps had taken over sacred space.
What are the engineering and design challenges in creating successful IoT devices? These devices are usually small, resource-constrained electronics designed to sense, collect, send, and/or interpret data. Some of the devices need to be smart enough to act upon data in real time, 24/7. Are the design challenges the same as with embedded systems, but with a little developer- and IT-skills added in? What do engineers need to know? Rick Merritt talks with two experts about the tools and best options for designing IoT devices in 2016. Specifically the guests will discuss sensors, security, and lessons from IoT deployments.