Engineering School Grads - Tradesmen or Thinkers?
El Cubano asks: "ITworld is carrying a story (sorry, no printable version) saying that John Seely Brown (former chief scientist at Xerox and director of PARC, currently teaching at the University of Southern California) is encouraging engineering schools to change the way they educate. The article, quotes Mr. Brown saying the following: 'Training someone for a career makes no sense. At best, you can train someone for a career trajectory...'. What do you think? Should engineering schools be producing tradesmen (like an apprenticeship program) or should they be producing 'thinkers' (people who can cope with a wide variety of problem inside and outside their area of expertise)?"
More hands on training would be nice. I find a tradional engineering program is more books than experience.
Party at O'zorgnax's Pub! Buy me a Slurmtini aye?
thinkers - it's in darn short supply in the real world.
I am not sure the question makes sense. Engineering is about solving problems. That isn't a rote field, but teaching the solving of problems is done by example. Ideally you want to educate somebody able to solve a novel problem.
It takes both. Producing "thinkers" gives us people who understand what is going on, and can analyze situations.
Problem is, they tend to over complicate somethings.
For example. Who would you hire to do the wiring in your house, and electrician or an electrical engineer?
Granted this is an extreme situation, but in theory, shouldn't both be able to do the task? Yes. However, an electrician has done it many times before and has the benefit of experience.
Now, who do you wanted designing a NASA space vehicle?
College should be about creating thinkers. It's just like CS majors vs programmers at a tech school.
Sure both can program but who develops the sophisticated software that run super computer simulations?
The CS major. The other programming just write the supporting code usually. There are exceptions just
like everything else though.
The college part of educating engineers boils down to quickly teaching basics and cram assloads of math, both which are needed. The training and specialization happens on the job in usually an apprentice like manner. In many cases, co-ops or internships are very similar to apprenticeships, and in my case, I had 2 years experience working on electronics under an engineer before I got serious and started college. My boss taught me many practical things, however to learn everything that college could have taught me under my boss would've taken a million bajillion years. If the education part of it does need to be changed slightly, then I'd require engineers to take a course or work alongside the construction workers or assembly line workers or machinists for a short period of time.
Without the trade education, you'll never get that first job.
Beyond that, there isn't much the school can do. Either you're a thinker, or you're not a thinker. This isn't something for a school to teach.
The best you can ask is that high-reputation schools simply discard all the non-thinkers, so that a degree from one of those schools indicates that you are a thinker.
I went to physics grad school and work in an engineering school. The engineers are not thinkers compared with physicists and mathematicians.
As a grad student at USC and someone who has studied under Mr. Brown, I'll say that I have to agree. Atleast as far I am concerned, I wouldn't want my professors to be teaching me a specific technology or system. I want them to teach me to think at a higher level. I mean if you really want to learn a technology well, do you really need a classroom and a professor? Can't you just pick up a few books, download some tools/compilers/etc. and learn it yourself?
On the other hand, what professor's teach you isn't so much how to code in Java or write PHP. What a professor teaches you (atleast the ones I've studied under here at USC) is how they (or other experts) tackled/approached engineering problems in the past, which IMO is more valuable.. in other words.. they impart more wisdom than knowledge. I think most good engineering schools would follow a similar pattern of teaching.
- Tempestdata
I graduated from an engineering university that focused on real-world hands on engineering. It has been my general observation that when it comes to taking a project from design to field implementation, engineers from theoretical schools tend to:
1. Not know where to start
2. Over design the project
3. Have a general disconnect between paper engineering and field engineering.
It may be a bit of envy, I still have to go back to my text book for the requisite math, but the hands-on guys seem to have an advantage.
I am billdar, and I approve this message.
In my 20's I was largely a waste of time. Only perused the things I had an interest in. Partied a lot. Campus was as much social as intellectual pursuit. This is not what I would call my "thinkers" phase. Now that I am in my 40's I have more perspective and more maturity and more self-control and self-direction. Campus might actually be of more use to me now than ever before.
In any case, now I realize that big-picture knowledge growth is a constant and can come from self-study, so better start with tradesmen approach to pay enough bills early to get to the maturity of the 'thinkers' phase.
I think coop is a great thing. You can't learn everything you need to know at school, and you can't learn everything you need to know on the job either. A certain mix is definitely a good thing, in almost all professions, not just engineering. Had I just gone to university, and not had any co-op experience, or pursue related studies outside the classroom, I wouldn't know the first thing about how to do my job right.
Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
Employers?
Leave them alone for a moment, think of the people themselves.
Most do not want to think for themselves and would rather do something mundane that pays the bills.
The percentage of people that actually want to think for their living is quite dismal in the grand scheme of things.
Secondly, look at who is more respected/has more resources in the society -- a "pop" star or a mathematician?
While the mathematician may be content with what s/he may have, society for the most part does not care about its "thinkers".
If we did, there would be far more folks out there doing things like pure mathematics, theoretical physics and other abstract areas that genuinely require thinking (not to discount the thinking in engineering and applied sciences, but pure sciences generally require more of a deidication than applied sciences and engineering).
So while engineering schools may be geared towards thinking, the question boils down to how many jobs out there require you to think as opposed to obey? How many people out there like people that think rather than do as they are told (while doing as you are told is certainly an important part of your learning experience, how many folks here have felt that they could find a better solution than the ones they have been asked to implement?).
No, if you want thinkers you need a society that encourages thinking.
I really like the ideas presented in the article. I'd love to go to a school where independent projects were the norm and lectures weren't. But even if all schools were like this, nothing would change. Colleges, professors, schools, and most institutions don't have as much influence on people as they like to believe.
For a "thinker" that's motivated to become an engineer, the vast amount of learning will be outside of the classroom, and would probably take place whether that classroom was there or not. True, the right program will facilitate the development of such a person, but in the end, these people are naturally curious self-starters, and would probably succeed without a formal education anyway.
Then you have the people who go to school to put a check in a box, and who hope that getting the right qualifications on paper will land them a job. These people will do whatever is necessary to get the qualification, whether it be going to lectures, doing projects, what have you. In the end, they'll also likely succeed in getting a job, but they'll likely never be the creative types with new ideas, no matter how they were taught.
The difference is one of personality and attitude. It doesn't matter how you teach. Changing the curriculum won't change the people.
If moderation could change anything, it would be illegal.
The problem is that engineering students are spoon-fed book-learning in the traditional system but they are rarely forced to apply that learning to solving a real problem that accurately simulates what they'll be expected to do when they start working for a living. Engineering studies should try to compromise between the traditional spoon-feeding of knowledge and some way of simulating what you will do most of the time in the real world which is solving problems using the book-knowledge but in an economical way that results in low costs and labor times but still incorporates enough inspired design work to make the product easy to maintain and scalable when it is time to develop it further. I'm a software developer myself and I see all to many engineers who threw away all sorts of things they learned in design classes in school such as UML, in favor of (badly) writing undocumented crap-code; and keep in mind that writing crappy code *badly* is quite an achievement. I'd for example like to see a teaching system in say, Software Engineering or Comp. Sci. where students are made to develop some software during the first term and then develop it further the second term adding features and complexity. They would quickly realize as the project becomes more complex why things like clean, well structured code UML diagrams code documentation and good initial design are important. That way if they wrote a crappy app during first term just to pass the term it would come back to bite them. That's what happens in the real world if you do bad design it bites you in the balls later.
The problem of spoon-feeding people knowledge is actually much more widespread than just Engineering courses. Even at primary school level kids are spoon-fed mathematics and physics knowledge but rarely given the task of solving real world problems that would make them realize that this knowledge is actually good for something. I served mathematics like a jail sentence until my first year of Engineering school when I was finally put in a position where I had to actually use it to do interesting things which made me realize that this 'boring crap' was actually pretty useful stuff that's used absolutely everywhere.
</rant>
Only to idiots, are orders laws.
-- Henning von Tresckow
The easy part: Trade schools graduate technicians, universities graduate engineers.
The hard part: Getting people to respect a good technician more than a bad engineer. Getting people to pay technicians what they're worth.
The likely outcome: Universities will continue to slouch towards vocational teaching that could have been done at the trades or in highschool. People will spend 4 years at mediocre state Us to avoid the stigma of not having a BS, which is the new highschool diploma. The masters will become the new BS.
My father had a GED. I've got a BS. If I ever have a kid, he'll probably need a masters to match his old man's career.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
I have to say I've witnessed this problem/challenge from multiple standpoints - as someone looking to hire a programmer, and as a self taught programmer looking at going to get a formal degree. As someone responsible for hiring programmers to assist me with my work I was somewhat surprised that the vast majority of CS graduates (engineers) knew the technicalities of the programming languages, but with no real world experience still had to be spoon fed exactly how to use those skills to solve a problem. As a self taught programmer looking to go back to school to get a degree in engineering I quickly realized that the advantage of such a degree would be the mathematics and theory I would learn. At some point programmers run into systems that are too large or complex to be hacked. And that's where I see the self taught programmers glass ceiling - the hack. Self taught programmers learn to make languages work for them, but they rarely understand the vast complexities behind the language (down to the binary). Getting a formal education may not make you the best suited person to actually write a specific application, but it will make you the kind of developer that can see beyond the immediate challenges of an application. Also, in terms of larger applications, without the theory and mathematics it simply isn't feasible. There's no way to hack a distributed program operating over multiple machines, networks and clients. While a self trained programmer might be able to pull it off, without the mathematical and theoretical background the product just won't be very efficient. This is where the formal training comes in, where it separates the trained engineers from the self taught hackers. Schools should realize that the hackers may be able to out pace their grads in simple or fairly straightforward programming tasks, but when it comes to something like systems design, their grads should stand well above the hackers.
But thinkers is not what most employers want in the freshly graduated engineers they hire. They want someone they can put onto project x using software y or tool z on day one, no matter how much their CEOs might talk about how they want "thinker" and "pioneers". There are some exceptions, but "I can layout amplifier circuits in ORCAD, program in Matlab and have never looked at anything except radar" will get you into the door at, say, Raytheon much faster than "I learned that I am good at problem solving". Now, it's a different story for engineering masters or PhD grads, but still most HR people prefer the skills match, be it Matlab or AutoCad, over the intangible qualities. This is at least partly due to the fact that you can't easily judge them in a resume and a short interview, but also because the engineering manager tells them "I need someone who can fill the place of the AutoCAD monkey who quit last week.
Creativity and "thinking" probably makes you advance faster once you have a job, or when you apply for your second job, but out of college, it's not the most looked for quality.
Disclaimer: I got a software job immediately after graduating in nuclear physics.
Then, once you get into upper level classes, you use those tools that you've acquired -- from classes or from elsewhere -- to accomplish tasks.
At least, from what I've seen. Who's taken a design class and been told what language they must write in? Unless you're forced to use an existing tool (ie, you MUST do your Computer Architecture work by extending simplescalar) or limited by the architecture (you can only choose between C and Assembly on most microcontrollers).
When I took my computer architecture class, we did trace-driven pipeline and cache models. I did mine in python; I was familiar with it from friends and I enjoyed using it. (I still do.) Other people used languages like Perl and Java, because that is what they were familiar with.
When I took video game design & programming, my group used Java for the client and C for the server. Other groups used tools like Visual Somethingorother or the Unreal engine (which was state of the art at the time). They chose tools that got them the product they wanted in the time they had. The team that wanted to do a "FPS Ultimate Frisbee" had great success with the Unreal engine. We had great success doing a multiplayer 2D board game using Java for the clients and C for the server. Partly because we were familiar with the tools and didn't have to fight them. Similarly, the person using Visual Studio wanted to make a DirectX game... and that was the right tool for the job. Writing a FPS from scratch in Java was clearly not the right option, nor was writing a 2D board game in the unreal engine. But the point was classical engineering of the kind that is most useful: given a set of resources (10 weeks in the quarter, a few University students with other classes, and only so many tools in the bucket), come up with a feasible idea and implement it.
Other schools have "computer science" programs where you learn linked lists and C++ pretty far along in your schooling (Junior year?), and you rarely (if ever) get free enough to design projects from the start. The difference is one of philosophy: using whatever tools available to accomplish the task you want to do, versus knowing tools to make things that someone else has mostly planned out.
It takes some of both kinds of people to make the world go around.
Most skilled trades (law, medicine) have secondary post-college programs entirely on top of arbitrary undergraduate degrees. It's a shame in a way that engineering gets crammed in with everything else; I think the secondary programs confer more respect on the people that go through them -- and a higher salary. If you had to get a Degree of Engineering on top of your undergraduate degree of choice, maybe engineers would have the respect they (IMNSHO) deserve.
-- Erich
Slashdot reader since 1997
Just because it is now fashionable to call people who are not engineers OR tradespeople by the name engineer is no reason to try to dumb it all down.
Anyone who isn't a thinker at the START of Engineering School should consider a different career.
I won't say "thinkers are born not made" but relatively few people change from non-thinkers to thinkers after their high school years.
Anyone with a brain can learn a craft.
It takes a heart and soul to be creative. By age 18, almost everyone knows they have it or they don't.
Engineering is a mix of both.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
Engineering is a profession, and requires education not training. Let me rephrase that: a technical engineer deals with difficult equations. A good technical engineer deals with difficult analogies.
My main gripes with engineering education are two-fold:
- Only engineering design is taught, not engineering discipline.
- Writing skills are neither taught nor tested.
Real-world engineering requires the ability to communicate succinctly and, invariably, a very large amount of documentation.
If you want to develop as an engineer, you will need to understand how engineering, as group of people working together, works. This is where the discipline or practise of engineering comes in. (Sometimes knon as systems engineering) Unfortunately, very few undergraduate courses teach it and even fewer academics believe in it.
There are some notable exceptions (eg. Carnegie Mellon University), but that exception merely proves the rule.
-- Butlerian Jihad NOW!
theory XOR practice?
As ~2% of the posters wisely noted, the two major skill set classes are neither mutually exclusive, nor sufficient.
"Both" is a partially correct answer, but "Both and then some" is a more nearly sufficient approximation.
Emotional Intelligence, common sense, a firm grasp of the underlying economic realities, the ability to finely parse a marginal ethical dilemma into multiple shades of grey, the ability to communicate complex concepts with clarity to non-technical audiences, and many, many more aptitudes and attitudes are all relevant and contribute to the production of seasoned engineers, in any specialty. The existing academic establishment struggles with subject areas not math- or science-based. Rigor is not the exclusive province of the physical sciences, math, and engineering ( e.g.: cognitive neuro-linguistics ), but there are relatively few exceptional scholars in the liberal arts or social 'sciences'.
An irrepressible sense of humor wouldn't hoit, either.
Technical Comedy 483: "Ratbert as Doppelganger" MWF 0800-0815 3 cr.
(T)he (O)ld (M)an
I'm definitely a "thinker," and have the utmost respect for roll-up-yer sleeve types.
There's a book out there called "Young Geniuses and Old Masters," which talks about two roads to accomplishment.
Some people have flashes of brilliance early on, good for them.
Available to the rest of us is the development of mastery.
Mastery does not come from getting an MEng, it takes developing a skill for a full decade. The people that dive right in to make it work, that will get their hands dirty and have the work ethic to get it done, I'd hire them bottom to top over chalkboard wonders like me.