Two Kinds of Hardness, or What You Learn Studying Engineering

This is Part I to an unplanned series of posts where I talked about what I actually learned as a result of studying different things in college (you can find Part II: Business, here, and Part III: Liberal Arts, here).

During recruiting season, people would tell me at the events for engineers that while I might not directly apply my domain knowledge, I’d be able to put into practice the “problem-solving skills” that I had learned. I’d be able to (so I was told) open up the “engineer’s toolbox” and accomplish the task at hand. What the hell did that mean? What were these magical problem-solving skills that I had picked up on while learning that V=IR or that a capacitor’s voltage couldn’t change instantaneously? After thinking about it for a bit, I’ll propose that there are two dimensions of “hardness” (at least for academically-related endeavors) that engineering teaches, one of which I’m really going to need to put effort into.

I don’t want to waste time philosophizing on the definition of “hardness” - everyone already knows at some level what it means in a college context. Things are hard, usually because they (1) require the application of concepts we already know (“application-hardness”) and/or (2) require us to learn something new entirely on our own (“novelty-hardness”).

In school, application-hardness is the basis for introductory math, physics, and engineering classes - for Calculus I/II, Differential Equations, mechanics, and basic circuit theory, there’s not actually all that much to memorize. EE 302 (UT’s intro to EE class) only really covered eight concepts: P=IV, V=IR, positive sign convention, KCL, KVL, node-voltage analysis, mesh-current analysis, and superposition. Each of those could be their own 10-minute YouTube video, and yet somehow it took me a semester to learn those eight basic (in-retrospect, at least) topics. I’d suggest that EE 302 is a class with averages in the 40’s and 50’s because of application-hardness. The challenge isn’t knowing that node-voltage analysis exists, it’s applying it to the current task at hand to solve a problem that’s familiar to those we’ve seen before, yet different. I’ve cooked salmon on a pan before; cooking steak on the pan is a slightly-different problem that’s still relatively in my comfort zone of “I know, for the most part, what I’m doing here”. Pan-frying something new is application-hardness.

In contrast, novelty-hardness (the name’s a work in progress) takes you completely out of your comfort zone to doing something that you’ve never done before. At least at UT, this is more common in the later EE classes; a project for EE 422C required us to build an Android app that called the Dark Sky API to display the weather. Since I had already worked with APIs before (though not that specific one), the majority of the back-end of the app was application-hardness. However, I had never built an app or made a front-end before, and so most of the project featured novelty-hardness. The first time I tried cooking involved a comedy of errors and a ton of novelty-hardness. I think that these two concepts are related in that you need to first conquer the novelty factor of a problem before you start on the application. In other words, to do X, you first have to wrap your head around what eaxctly X is, and only then can you start worrying about how to apply some basic first-principles to solving the problem itself.

Anyways, I’ve noticed in my own life that I’m really, really bad at managing novelty. I panic and freak out in most situations where I’m thrust into doing something that I don’t know how to do - going back to the software project, I procrastinated so much on building the app (since I didn’t ever feel confident enough to know where to begin) that I started the project the day after it was due (somehow, I ended up with a 95). Outside of academics, there are tons of situations where we have to face something new - having your first kid, getting your first credit card, paying taxes, etc. As a result, I think it’s pretty important that I develop a response to these kinds of situations that’s better than the deer-in-the-headlights. The questions, then, are (1) What’s a good reaction? and (2) How do I do that?

For the first question, my advisor/mentor Stephanie recommended mentally cataloging previous experiences where I tackled something new successfully, and using that to motivate me to accomplish the task at hand. I’d also guess that telling yourself that the task is, in fact, possible and within your capability would help (surely I’m not that special to where I can’t do this one project that the previous X-hundred students have done just fine; if the other 320M people can figure out how to pay their taxes, I can too.) All of this, however, is really just talk for now - I haven’t tried doing any of this myself yet, so I can’t really comment on what works. That gets at the second question, since I think practice is necessary to build up virtually any skill. That said, I think it’s easy to create situations where you step outside of your comfort zone to doing something new and scary. For me, cooking is great since (1) I’m not (yet) Gordon Ramsay, and (2) I get to eat something at the end.

For those of us not in engineering, learn how to cook! You’ll learn more than how to pan-sear a steak.