Most hackers could eventually become engineers if they chose to do so, but the reverse - training engineers to become hackers - is next to impossible. Is this true?
Meanwhile, Peter Christensen, in his own blogpost, defined the two as follows:
Hacker: Always trying new things, trying to stretch the limits of what's possible or what exists… Linus Torvalds is a great example of a hacker - he had two giant ideas that few thought were possible - writing a free operating system and doing it with a worldwide collection of volunteers. Once something is functional and successful, the hacker moves on to another hard problem, like a serial entrepreneur.
Engineer: All of the definitions of engineering that I've found were too complicated and missed the point, so I propose this: An engineer is someone who takes something that is known to be possible, and makes it fit within a given, limiting set of criteria. Some common criteria are:
within a fixed budget
meet a performance benchmark
exceed certain reliability requirements
make it aesthetically pleasing
must include a certain capacity
meet arbitrary regulations (accessibility, environmental, paying living wages, etc)
Note that this doesn't mean that an engineer is any less creative than a hacker. On the contrary, the constraints provided by the engineering problem can provoke more creative and original thinking than that of the original invention.
Engineers can become hackers
On the other hand, Kim Guldberg answered, "What is the difference between an engineer and a hacker?" in quora as follows:
For journalists and the general public a hacker is someone who breaks into computer systems stealing information and doing other malicious stuff.
For hackers the term seems to have expanded… Today being a hacker is more a question of mind set than just skill set. It's a curious individual, who has obvious talents and knowledge. He (and today sometimes also she) is somewhat geeky and obsessive in his interests, he is persistent and able to think out of the box. He is not bound by conventions and what is understood as possible or the right way of doing things and he has an open mind.
So the answer to your question must be. If an engineer has the above-mentioned mind set, he can be a hacker if he wishes and work hard at it.
With that beginning, tell us your definitions of hackers and engineers, and explain (if you can) how engineers can become hackers.
well put, DMcCunney. So you are saying in their pursuit of "failure points" in a system, test engineers and hackers are working with a similar mindset. It makes sense. Do you think, then, it is customary within an engineering organization to leverage their own test engineers in finding any weakness of a system that can be hacked?
@caleb, there are many ways to define hackers, and clearly, many people have defined it differently.
But my original intention was, as you can see in the first few graphs of my story:
....Soja and I were discussing issues concerning cars. I was asking him how the best automotive chip suppliers like Freescale can get a few steps ahead of hackers to identify potential security holes.
Soja quipped: "To protect against attacks, you need to think like attackers."
My conversation with this Freescale executive really opened my eyes. For example, established automotive chip suppliers -- usually a full of smart engineers -- do need help from hackers. So that they can think ahead, figuring out which security holes that need to patch in designing their next generation automotive MCU, for example.
In that context, I would like to know whetther design engineers at chip companies can morph themselves into hackers to help that cause, or they are really two different types of people and they probably need to hire external "hackers" to do the job...
Among engineers who can best think like hackers are those who work on testing, he added.
No surprise. A friend who is a test engineer said the fundamental distinction between a developer and a test engineer is that a developer assumes the code will work, while a test engineer assumes the code will fail. Indeed, getting it to fail is what a test engineer does.
"Hackers" in the pejorative sense are behaving like test engineers. The test engineer wants to break the code and discover how and why it broke, so the code can be changed to make that failure impossible. The hacker is looking for failure points where code can be exploited for malicious purposes. The process is similar. The intended end result is very different.
First, we need to define which "hacker" you're referring to. Initially it seems like you're talking about someone with malicious intent. Frankly, I see no correlation between engineers and hackers in that sense. The equipment may be similar but it is the mallice that is the differentiating factor.
Toward the middle of the article you're discussing "hackers" in the sense of people who are building things but aren't necessarily fully educated or involved in their career path. This is the one I'd like to focus on. I think many engineers go home at the end of the day and hack. They find a problem and they solve it, and since they're not doing it for work, they aren't following SOP. They're exploring and chasing passions and obsessions, often only for the purpose of doing it. I think engineers can be hackers, and many uneducated hackers can go on to be engineers.
One interesting thing I've seen is when a hacker is obsessed with a specific technology. They learn everything they can about it, sometimes surpassing professionals in their knowledge. However, they have no interest whatsoever in broadening into all the other subjects that one would have to master to become a professional.
Thanks, Junko. I love this discussion. In professional engineering, a hack doesn't mean high quality. So maybe it's a pride thing. BTW, to comment on this article, make sure you log in separately because for some reason this article hangs on the log in screen. Hmmm, unless you have a hack to get around that problem, you'll have to use the workaround for now.