Beginning Engineers Checklist

  1. NEVER loan out your copies of:

  2. Practice ITERATIVE design:
    • Fail: Expect to fail, it leads to experience, shows you care and are motivated.
    • First: Get failure over with by taking on the hardest parts first.
    • Fast: Make small, incremental, steps towards the larger goal, testing after each step to look for failures
    • Fix: Once you have experience, you can fix any failures.

  3. Always quote at least twice the time you think it will actually take to do the job (if it's good enough for Scotty...) 90% of the code gets written in the first 10% of the time, the remaining 10% of the code will require more than the remaining 90% of the time.
  4. Always have someone (or a group of) real pro(s) to fall back on for advice when you get stuck. But, never rely on someone else's circuit design to work as drawn or code to run as written.
  5. Troubleshooting is hard. Problem solving is harder.
  6. Always document everything you do (why did you always see engineers and scientists with a log book?) and be ready to extract a complete history of actions at a moments notice. I don't care how sharp you are, at some point, while trying to solve a complex problem, you will realize that you don't remember exactly what you already tried... which means that you are duplicating effort, running in circles, and doomed...
    • When it really drops in the bucket, management WILL try to make you a scapegoat and being able to tell the customer exactly what you did may save your job (or get you a better manager or even a new job).
    • Watch your co-workers and boss... when they start to pull away from something, get your notes in order
  7. Amateurs can get one of the following three, professionals can get two of the following three... If you can get three, please contact us.
    • It can be built well,
    • It can be built quickly,
    • It can be built cheaply.
  8. Don't rely on simulators: "Simulations are doomed to succeed." Reversed biased Transisters are a good example.
  9. Ohms law: Know it, look for it, use it. Very simple but often missed. Applies to all professions, not just electronics.
    • Ground planes, power busses, shields, etc... are not superconductors, they resist and a voltage will develop when current flows.
    • The heat dissipated from a component operating at its rated wattage might look small on paper but it can build up to a melt down in the real world. Use a higher rating and heat sink and ventilate, but don't depend on good ventilation; the customer has to set his paper work somewhere...
    • Instantaneous currents can be huge in switching devices, even if the the average is low. Decouple every major and sensitive component. Overbuild the power supply. Power traces are part of the power supply.
    • Noise happens

  10. Business WILL always be part of engineering. Get over it.
    • Lots of people lie. You can't tell. You can't get along with out them. Hope it doesn't happen, be ready for those times when it does.
    • Richard Stallman. "...People find ways of getting money by impeding society. Once they can impede society, they can be paid to leave people alone. "
    • Salespeople will tell you anything they think will sell their product (see point 2.) Don't trust the Vendor, FAE, Distributor, Rep, etc... Ask around. On the other hand, if you want all the samples you can handle, make sure your title is "Senior Firmware Engr"
    • Payment for contract work may be difficult to collect (see point 2.) [ed: Oh! What to say... We can do volumes on this one. See:
      Consullting.]
    • Never underestimate the stupidity of the end user of your product. Make it fool and idiot proof if possible. This is very hard to do. It takes infinite intelligence to anticipate boundless stupidity. Artificial intelligence is no match for natural stupidity. From "The Tao of Programming": A [product] should follow the `Law of Least Astonishment'. What is this law? It is simply that the [product] should always respond to the user in the way that astonishes him least. Some people live lives of perpetual astonishment.
    • "I have been consulting for 30 years and have come to understand that a stupid customer is a treasure, not a problem. If they are really good, they don't need me. If they are really "idiots", they don't need me to tell them that. They need me to help them for a fee."
    • Make things that people want to buy. Not use, play with, see, understand, etc... BUY.
    • Design a product that has something better about it than any similar product.(Price, features, battery life, etc)
    • Marketing is necessary. You must convince yourself that people need your product before you will be able to convince them to buy it. Try to see your product in the most favorable light possible:
    • Have a life, don't neglect your spouse and kids in favour of your job. It really really really isn't worth it. I've never met an old man who said "God, I wish I'd spent more time on my work." If you boss doesn't understand that or care, start looking for one who does. If you find one who does understand, take good care of him or her.

  11. K.I.S.S. The ideal design has zero parts. "An engineer is someone who can build for a dollar what a fool can build for twenty" - Robert A. Hienlein
    • If it ain't broke, it doesn't have enough features yet
    • To the optimist, the glass is half full. To the pessimist, the glass is half empty. To the engineer, the glass is twice as big as it needs to be.
    • In any product more complex than a few passive electronic components (resisters, caps, etc...), a little microcontroller with a clever program is worth the coding time because it reduces the component count. Of course, code is a component.

  12. Hardware and Software (firmware) need to work together
    • Hardware should be viewed as a necessary evil, and minimized where possible.
      • Code can always be modified, once the boards are made, the electronics is fixed, so programmers will always be expected to fix hardwares screwups.
      • Any circuit, other than signal I/O and A2D / D2A, can be replaced by firmware giving a fast enough processor and clever enough coding, thereby reducing component counts and product cost.
    • Software should be viewed as a necessary evil, and minimized where possible.
      • No amount of code can respond faster than the clock in the controller.
      • Code almost always consumes more power than dedicated electronics.

  13. "Thou shalt not design thy PCB before thou hast the components in thine hands."
    • And even if you DO have the parts in hand, make certain that you can order them in the quantities you need later. e.g. watch out for Maxim or Motorola (68HC11s) or TI (msp430) or Pericom.
    • When working with Atmel: "...until thou hast lifetime production quantity in hand, UNLESS thou art prepared to "slightly modify" code occasionally as new 'improved' processors are introduced and old ones are 'retired'."
    • When working with Zilog: "...until thou hast lifetime production quantity in hand, AND each part has been tested and shown to work." Actually, just don't use Zilog.
    • When working with Microchip: "...Olin has done at least one project with the chip(s), Microchip has acknowledged the problems he found, documented them in the errata sheet, you have read that sheet, and you really understand what is stated there."
    • 1st law of component engineering: only use devices that EVERYBODY makes EXACT replacements for.
      2nd law of component engineering: Exact replacements aren't.
      1st law of purchasing: Be sure to ask your vendors to recommend alternate parts which are identical to the specified part.
      2nd law of purchasing: Do not trust the vendor who tells you a replacement part is identical to the specified part.+ Have an engineer test the replacement parts before sending them to manufacturing.

From Elon Musk:

  1. Make your requirements less dumb. Your requirements ARE dumb, no matter who they came from; make them less dumb.
  2. Try very hard to delete the requirement and all the things needed to meet it entirely. Delete things until you need to add things back in. If you can delete it totally, your requirement was stupid.
  3. Simplify to optimize function, if you are sure you can't delete it.
  4. Go faster. If you really have to do it, and it's as simple as it can be, do it as fast as possible.
  5. Automate it away so you don't have to do it anymore.

See also:

Interested:

See:

Comments:


file: /Techref/begin.htm, 13KB, , updated: 2021年11月22日 12:50, local time: 2025年9月2日 17:14,
40.74.122.252:LOG IN

©2025 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF="http://massmind.org/techref/begin.htm"> Beginning Engineers Checklist</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.


Link? Put it here:
if you want a response, please enter your email address:
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?

Welcome to massmind.org!

Welcome to massmind.org!

.

AltStyle によって変換されたページ (->オリジナル) /