Engineer in a Box?
Dr.Luke writes "Robert Lucky in a IEEE Spectrum Online article laments the state of today's engineering as progressively more removed from the "real" reality of tinkering and soldering "in a big musty laboratory" like Thomas Edison as engineers become more and more reliant on software tools and simulations. He fears that "math itself is slipping away into the wispy clouds of software that surround us" and that eventually engineers will be substituted by a bestselling software program Engineer-in-a-Box 2.0. What do you think?"
Not that the loss of the chance to do a little tinkering in one's job isn't a sad state of affairs, it is. But if I was the guy who wrote the cheques at Boeing's R&D department, the word 'tinker' would probably send me into a conniption.
___
Cogito cogito, ergo cogito sum.
I started to witness this decay while in engineering school, 1987-1992. Things were pretty lousy back then, I don't want to imagine how worse they are now.
I was probably in one of the last classes that actually learned drafting first, then CAD later (this is at the School of Engineering, University of Puerto Rico at Mayaguez). Drafting was a pain but it really taught us the beauty of CAD/CAM and not to ever take it for granted. Same for numerical analysis: numerical analysis becomes a thing of beauty after you have spent two years getting HAMMERED with advanced calculus courses.
Now every mickey mouse NT admin is calling himself an engineer. It is a shame. Engineers are supposed to be able to build stuff, to apply science to resolve problems, but we are raising a new generation that is being trained to use software packages and that's about it.
Of course, generalizations are not good, and I am in awe of the next generation of hard core programmers that are being exposed to real programming languages and real world problems like building a kernel, not us that were writing stupid little Fortran (WATFIV!) programs on a freaking VAX.
Pedro
----
The Insomniac Coder
those whose jobs it is to innovate and make the impossible possible, and those who just turn and crank. One innovator can't be replaced by 100 turn and crank guys just because the ability to innovate doesn't follow a statistical bell curve. Its not like after you get up to some obscene number of turn and crank guys, your chance of developing an innovation will reach 90% or something. It will still be at zero.
I think what this guy is lamenting is an adjustment in the ratio of innovators to turn-and-crankers that has been brought on by the anti-innovator prejudices of the SEI and other "everything must be predictable" initiatives. Very large projects that couldn't hold innovators because management was threatened by them and wouldn't pay them the six figures that they were worth were collapsing (as they should). The world reacted by saying that we can't depend on heros instead of recognizing that they needed to pay the heros more. Now all the heros, those that just instinctively know the aspects of "right" that aren't teachable are disappearing. Big surprise.
The result is that true innovation and accomplishment of the "impossible" has been going away and our economy is suffering because of it. What truly new classification of software have you seen in the last few years? I don't know about you, but the world in CompUSA has been looking pretty stagnant to me for quite some time. Mostly incremental advances, not the type of true innovation we were seeing in the late 80s before these things had really taken hold. Sales are down because the next blockbuster reason to use more CPU cycles, more RAM, more disk space, more pixels, more polygons/second, etc. hasn't been appearing.
Also, I saw several posts on here about this being because people can't do it all anymore. Bull. Some who could have done it all are being hampered by the education system telling them that they can't, others aren't allowed too, and others just stay quiet about it to avoid the backlash from those who've been brainwashed into thinking that we know such a vast amount of things that noone can do it all. It seems that the vast mindless majority is too threatened by the idea that someone can still do it all. And its become non-politically correct to hurt their self-esteem by telling them any different.
I am not saying you have to derive/understand/program every numerical algorithm and not use the packages, but at some point you are going to have to know, as a DSP person, some numerical algorithms and how to represent numerical algorithms in non-proprietary programming systems (such as C/C++/FORTRAN/Lisp).
OK, another analogy. I don't expect an engineer to design an op amp -- op amps are things you go out and buy. But op amps are unlike software: black-box IC like things are this 30-year-old dream in the software field, but interoperable software IC-like components only exist within various proprietary sandboxes (Visual Basic/COM/Windows, LabView, Cocoa). It is like to use an op amp you have to purchase one vendors circuit card substrates and power supplies. Maybe that's why Miguel De Izeca is so fire up about C#/Mono -- to come up with a non-proprietary component sandbox.
Also, op amps cost, say 50 cents a piece in small quantities, 5 cents a piece in volume. Is there a piece of commercial component software that can be reused with such generous terms? Oh, and the 741 op amp has been around for 30 years with the same specs. What piece of numerical software (apart from published source code form) has been around and conforming to its spec for that long?
And one more thing. The op-amp people may have patents up the wazoo on op-amps, but they will sell you the op-amp to do what you please with it. They are not greedy SOB's who say, "We hold the op-amp patent -- any thing incorporating the op-amp, even if you have bought the op-amp part, falls under our patent and you pay us tons of money.
... but it's not limited to engineers. Many scientists are the same. Story time...
In undergrad, I worked with a physicist and an engineer on some Fourier analysis homework. I was a math major (and a meteorology major also). (No, this is not one of those jokes.)
I distinctly remember once when we reduced a problem to a very simple integral: the integral from 0 to 2*PI of 3 x cubed minus 4 x, dx. What do both of them do to finish this problem? Pull out the calculators and begin to type it in... I just watch in awe... they didn't even want to attempt this basic integral without the "comfort blanket" that the calculator gave them. Never mind that thanks to a typo one of them got the wrong answer.
Even in my field (atmospheric science), the "simulation bug" is prevalent. They're great tools, but it's rather annoying when you ask one of these simulation people to explain something that they're pointing out using basic physics that they frequently can't, even when the basic theory has been there for decades.
Scientists and engineers need that strong mathematics background. I personally think that calculators should be outlawed from classrooms until high school. People are frequently too dependent on those tools currently (had one guy in math help session in undergrad who used a calculator to figure out 3 minus 2... I kid you not). You always should learn the basics and the hard way before being given the tools for the easier ways. Anything else is bass-ackward.
-Jellisky
I work in Broadcast Engineering, which is managed by clueless ex-salespersons who wouldn't know what a tower was if it fell on them! All they know is that they pay me way too much to be the only engineering person at a major market 50,000 watt AM station. I manage a 40 computer network here, do the studio work, the transmitter and all the remotes. I work like 50+ hours every week, yet I'm yelled at if I'm not in every day at nine AM sharp (I have to stay until at least 7 PM). I get chastized for every failure, but hear nothing for (my many) successes. For example, a few Sundays ago (labor day weekend) the station went off due to the failure of a circuit breaker in the 40 plus year old transmitter plant (that they refuse to upgrade and the manager has never been to). I was called on the carpet because: "Nothing should be able to take us off the air". These idiots can't fathom that equipment occasionally does fail. Even four nines reliability (99.99) means almost eight hours a year of outage, yet this idiot expects perfection. A while back, my wife bought me a T shirt that said: "I'm a can of tuna". When I asked her why she said that in her opinion, managers hired Engineers as if they were shopping for a can of tuna. They go down the supermarket aisle where they have the choice of premium or inexpensive, national brand or house brand and they pick based probably on what's on sale that week (in other words, generally they shop for the lowest priced tuna). That's what we are: a can of tuna to these clueless jerks! They have no idea of what we do, and don't care. All they know is that we cost them way too much. Am I looking? You betcha! Problem is from what I can see, 95% of the places out there are as bad (or worse) then things are here.
but we as a whole need to learn how to use our brains, after all we are engineers right?
When someone says, "use your head," they are usually refering to finding a better faster way of doing something. So why is it you think learning to use your brain entails training yourself to do complex operations in minutes when a machine can do them in seconds. The human brain is piss poor at performing complex computations, sorting, detailed memory storage, and the like. Machines are very good at these things. On the other hand, humans are very good at analyzing complex situations, planning, designing, and the like. Machines are piss poor at this. Wouldn't it be smarter to assign your brain tasks it is good at and relegate other things to tools?
Don't get me wrong, I'm not saying you don't need to learn to do some of this stuff manually. Sometimes knowing how things work is necessary, but at the same time we don't need to permanently burden our minds with tasks that our tools can accomplish more efficiently.
Yes and know. What the professors are (or should be) getting at is that you should think before you compute. Sure you can punch a much on numbers into your calculator in the right order and get the right answer. However what if you press the wrong button? Suddenly you have the wrong answer and don't know it. You should always have an idea of what the right answer would be.
Also, if you don't reach for the calculator right away you can often see a way to simplify the problem, and then the rest works out quickly. In fact for most of my college tests the problems were choosen such that it if you caught the tricks you could do all the math in your head faster than someone who memorized the equations without knowing them can punch numbers on the calculator. (or look, these two variables cancel, and 2 to the second power is 4 and before I knew it I had the right answer)
Of course there always a few problems that cannot be done in your head, but most can be.
With respect, that is complete and utter bullshit.
Engineering something now that was engineered many years ago is much easier now.
With hindsight, and knowing all that we do now, yes it would be easy to engineer a lightbulb. But it wasn't an easy thing to do when Edison did it.
Engineering a quantum processor or an artifical joint for your hip/knee/shoulder is not easy now, but it will be 20+ years after it's been done.
To get back to the discussion, all of the computers/programs are tools - they will never make up for an intuitive understanding of the problem and a good 'engineering brain', something that a good Bachelor course will try to teach. And that is the problem - engineering students now start on the computer programs and have little appreciation of their status as a tool. The real problem here is that when the computer program spits out an answer that is completely illogical, it doesn't register as being wrong.
"Because it's there." - George Mallory, when asked why he wanted to climb Mt Everest, March 18, 1923 (New York Times)