Irony is having a blog post in your queue with a title such as this one and just sitting on it for weeks on end. Luckily I’ve been trying some things instead of studying them, it just so happens that those things have nothing to do with this site. I hope to discuss those on this site soon.
I am a glutton for knowledge. Part of it is my fear of looking silly in front of co-workers when I don’t know the answer to something. Part of it is feeling like my knowledge base is lacking and the thought that I can always learn or teach myself something new. But when presented with a new challenging situation that requires you to learn the question is always the same: where do you start? Do you jump in and try it out? Or sit back and study what others have tried so as to not duplicate their mistakes?
There are two extremes
- You study so much and try to take in so much that you become paralyzed by information
- I feel like this happens to Generation Y more than other generations. Not because we are dumber than others. Instead, I think we are so accustomed to having all of the necessary knowledge required to solve a problem at our fingertips (i.e. Internet, ChrisGammell.com, etc).
- Academic thought processes often begin with simplistic assumptions about the model you’re considering. Analyzing these over and over can be very time consuming and can quickly become too complex to handle. Even analyzing the minutiae associated with a single transistor can be mind boggling. What happens when you try and expand that knowledge to 10, 10k or 10M transistors?
- You over simulate, over analyze, over think a problem past the point of diminishing returns. An example would be designing a new type of toothbrush. You can model the toothbrush, the bristles, the handle, the shapes, everything; you can even go out and get ideas from your toothy customers about what they think they would like or dislike about your design. But until you prototype your new type of toothbrush and put it through testing (product testing, tooth scrubbing ability, will it shatter in someone’s mouth), then all of the testing and surveying in the world won’t matter.
- You have little knowledge of a problem or situation that you just start changing stuff randomly and keep changing until something works…without realizing the consequences.
- This seems to be the modus operandi of the inexperienced, but not necessarily the uneducated. A gutsy, recently graduated electrical engineer may emerge from the cocoon of the academic environment ready to go out and change the world. And every resistor value of a circuit board they encounter. And mess with the capacitors. And change the model of the op amps. Oh, and don’t forget to swap out transistors. “What?? It still doesn’t work? But why?”
- This can be as much a symptom of engineering bravado as it is bad conditioning. If the person involved has always had simple problems placed in front of them that have obvious or at least semi-obvious solutions (ahem, most introductory electronics labs), they will fix the “broken” component and pat themselves on the back. In the real world, that “broken” component isn’t broken at all. It’s just out of spec and you can’t figure out for the life of you why that unit you’re testing refuses to turn on anymore after increasing 5 degrees internal temperature.
- You forget/refuse to read the manual. Granted, some of the greatest “tinkerers” out there can just magically turn a knob and get a broken piece of equipment to work. But the reason they can do that is because they actually turned the wrong knob about 1000 times the last time they tried to fix something like this and that knob did absolutely nothing.
A Good Mix (for me, at least):
[STUDY] My own personal mix when it comes to circuit problems starts with the problem definition. Understanding the problem is so much more important than what you study, how long you study it or how you begin to test out your ideas for how to fix it. If you don’t understand what the real problem is all that later work is for nothing! However, I try to understand the issue without going overboard and trying to understand every single minute detail; this could be just as bad as studying a possible solution for hours on end.
[TRY] Once I have a grasp on what the problem is, I try the obvious stuff. You’d be surprised how often it can be the really dumb things that trip you up. And those might not even be the problem you’re trying to fix. You could try to troubleshoot a blank screen for 20 minutes, throwing your best ideas and debugging techniques at it before you realize, “Whoops!” you never plugged in the display cable. Or you can’t get your software to work once you load it onto your electromechanical whizzbang toy…but you actually loaded the wrong version of the software or the toy doesn’t have any batteries in it. The silly things will waste your time and throw you off the trail of the real problem if you’re not careful.
[STUDY] Next is researching the problem to see if it has happened before. Some of you out there will have unique situations, like making a new analog chip that no one has ever made before. But I’d guess more of you will be encountering problems that can be researched. Even the analog chip designers will see issues that are similar on some level to other products or models within a corporation. Oftentimes the best troubleshooters are those who are able to compartmentalize problems and then analyze where those problems came from and research how others have fixed it in the past. I’d rather have a boring problem that someone else can easily tell me how to fix than one that I can’t figure out at all.
[TRY] After trying and then studying all of the really obvious stuff, I start to go back to my resources–either online or in print–and start to search for information on the topic. Obviously the online information is much easier to search, but I also have some trusted books that I turn to on a regular basis. I might see a chunk of a circuit that looks familiar and try flipping through the pages to see if I can’t find a similar circuit. If that doesn’t work or the circuit looks extremely foreign to me, I’ll go back and study some of the basic properties of the components within the circuit to see if there might be a certain property the designer used that I have overlooked. And if all else fails, I’ll start to ask around to try and gather others’ knowledge of the circuit. True, this isn’t quite studying, but can often be more effective. I try and balance asking others for assistance only after I have tried to solve the problem on my own and not made any progress. I think it is important for my personal growth to struggle with a circuit before asking for help and I think it’s important to not get in the habit of running off and asking for an answer so I don’t waste the other person’s time. However, I don’t want to be so stubborn that I waste my time and the time of those who are paying me.
[STUDY] Alright, so now you know what the circuit is and how it sort of works. But you also know that you need to change the circuit in order to make it work better. What now? Next I would try and write out any equations I know that are relevant to the circuit. Not necessarily any equation, that could end up being a waste of time. Keep it simple and make sure you know where the currents and voltages are in different parts of the circuit. If there are components (such as capacitors) in the circuit, include basic equations that can help to describe their behavior. If you don’t need 3 chalkboards to do so, try and figure out the transfer function (relationship from input to output). If you have a circuit that is too complicated either break it down into smaller pieces and try and figure out the transfer function or take the plunge and try it out in SPICE. This will help you to better understand how the circuit might behave when presented with certain inputs. All of these exercises are done in order to present you with a solid starting ground for when you actually construct the circuit, so you know what to look for and what behaviors to expect.
[TRY] After all of the studying and simulating and pondering about this circuit, you should have at least enough knowledge to begin building up and trying the circuit. This is an important step in any circuit creation process because of the nuances the real circuit will show you. Perhaps you forgot to model a realistic op amp in your SPICE simulation and it was outputting 500 A. Perhaps you didn’t realize in your equations that a resistor will have different properties depending on how much current you actually put through it and that your circuit happens to be particularly susceptible to those changes. Perhaps you completely disregarded a simple concept such as bandwidth and your circuit is now oscillating so hard it breaks. All of these things will be uncovered when you begin to build up your circuit and try out different inputs. Once you realize what some of the realistic problems are you can go back and modify your assumptions and models and start to delve into whatever topics you believe will get your circuit to the optimum operating point.
Finding the right balance between slowing down and taking your time to figure out a circuit or jumping in and seeing what works can be a fine art. Sometimes projects are on a very tight schedule and need a product cranked out the next day (think startup). Sometimes you have one shot at making a final product or else your company will fail (think chip fabrication). Finding your own personal mix will take time and trial and error.
What is your personal mix of trying vs. studying that gets the best results? Leave your tips and tricks in the comments!
Sounds about right to me. I keep a stack of textbooks on my desk within easy reach (as I’m sure most engineers do) and whenever I come to a problem I don’t understand, I pull out the books and read up on it to get a handle for the basic idea. Then I look online to see if there is anything out there that’s more recent than my textbook, or if anyone has had a similar problem. Then I go try some things on my own to figure it out, and if I still have trouble, then I bug a coworker. I think coworkers are an excellent resource because they understand what you work on, how it fits in with the whole project, what tools you use to get your work done, and that sort of thing. However, if you haven’t done some work on your own beforehand to figure it out, they aren’t very pleased, so asking for help should never be the first thing you do. After that, it becomes an issue of working with your coworkers or anyone else around that might be an expert in your problem.
Every situation is different. When I first broke into doing RF IC design, I bought a text book and read it front to back. Before then, I had no clue about RF circuits or systems. However, it’s not a method I’d recommend. Personally, I’m a tinkerer more than a reader. Tinker first. When that fails, search papers. Rarely have I had to go back to text books unless it’s to pull out the odd equation or two. They do look nice sitting on the shelf though.