I cut my teeth on an Apple II! Learned programming in assembly language on a Z80 processor. And quickly moved to Fortran and C. I have been out of the electronics and computer programming for over 20 years and am just amazed at what the people can now program. Gone are the days of trying to fit code into 2K of memory!
With my youngest starting college, I am once again getting reacclimated with C++ and am amazed at the extension of this programming language. Then I discovered visual C++. WOW! Even an oldtimer can get into the new stuff!
Very nice historical synopsis on coding! I always appreciated having to learn assembly as it gave me an understanding of what was really happening at the bit level, but I also deeply appreciate the evolution of higher level programming languages to get the job done. I think it is important for an engineer to learn low level programming so that they have low level control when needed, but can also use higher level languages to implement solutions that meet customer and project criteria and compatibility requirements.
Remember the Intel MDS80, the development system for the MCS-48 series processors? If I remember right the system had two 8" floppy drives, and that's the machine we used to write the 1K of code we squeezed into an 8048. At one point the place I worked at had lost the ability to move the source code out of the MDS80 and its 8" drives, so I once had to type all the code into my new flagship machine, a `286 PC clone. It was a huge improvement, though, because I could assemble (not compile, this was Assembly) in as little as five minutes. Yup, just type into the command line on the PC, and walk down the hall for a cup of coffee. When I came back from the cafeteria I'd pull a windowed part out of the uV eraser, burn the HEX file with my Needham programmer and start debugging the latest change.
There isn't a day I don't marvel at how far embedded software development has come, and what what the next big change will be.
Ah, the wonderful world of code...I covered Java application development as my first tech journalist job in 2000...so this took me on a trip down memory lane. Thanks for the retrospective!
I still write assembly at the microcontroller level. PIC assembly is the majority.
So much has changed, but the spirit has not. The lessons of the past are still on us. AutoCAD has new features, but it is quite similar to the first version. Same goes for word processors, in a way.
Imagine 30 years from now, people will fondly look back on this time as simpler...
Nice retrospective, Cabe. I think the time will come when all engineers will have to have good programming skills when they leave college (not just one or two classes in programming). I don't think that mechanical engineers will be able to avoid it. From what I can tell, though, engineering curriculums don't seem to be making that a priority yet, but I think the time is coming.
The thing is, when I was covering app programming, everything was about getting simpler and also being more visual, so even people who didn't have coding expertise could use visual tools to code to build applications. Is something similar happening in the engineering world? I am not super up to speed on CAD tools, but I imagine there is a similar trend there, no?
"Electrical engineering is without a doubt one of the fastest growing disciplines today. Between the constantly changing curricula and rapidly advancing technology, engineers are required to keep themselves up-to-date with the latest tech and tools."
Cabe, we can say electrical engineering is the mother of modern engineering. In 70's there are only 3 branches like electrical, mechanical and civil. Later electrical branch is divided in to electronics, computer, communication etc. While I done my graduation in 90's all such divisions are under the electrical department.
Charles, now a day’s programming and computer literacy is a mandatory for all the engineering branches. Even mechanical and civil graduates are doing programming courses, inorder to grab a job in IT domain. Moreover, now a day’s most of the branches had introduced C/C++ programming in their curriculum either as main subject or elective.
When I was in school FORTRAN counted for foreign language credit. We ran stacks of punchcards to the VAX gnomes. Many a student broke down in tears when they accidentally dropped their stack of (unnumbered) cards.
In the DOS days I was a BASIC guru and a whiz with Turbo BASIC.
From Dell / Intel® New Paradigms in Design Work Scott Hamilton, vertical market strategist for Dell Precision workstations, 5/2/2013 5
Early in my career, I worked as a draftsman and remember the days of drawing on vellum with numbered pencils and Mylar with plastic lead. This was a fun experience in the sense that I ...
I've been using workstations for more than 10 years and love finding ways to get more performance from my system. With demanding professional applications that require more power each ...
A lasting memory from my first job as an engineer in an auto assembly plant is standing on hard concrete at six in the morning, vending-machine coffee clutched in hand, listening to ...
For industrial control applications, or even a simple assembly line, that machine can go almost 24/7 without a break. But what happens when the task is a little more complex? That’s where the “smart” machine would come in. The smart machine is one that has some simple (or complex in some cases) processing capability to be able to adapt to changing conditions. Such machines are suited for a host of applications, including automotive, aerospace, defense, medical, computers and electronics, telecommunications, consumer goods, and so on. This radio show will show what’s possible with smart machines, and what tradeoffs need to be made to implement such a solution.
To save this item to your list of favorite Design News content so you can find it later in your Profile page, click the "Save It" button next to the item.
If you found this interesting or useful, please use the links to the services below to share it with other readers. You will need a free account with each service to share an item via that service.