I've seen many new users saying that they come from programming or something similar, but without any experience, and wanting to build something completely over their head.

I attribute the cause of this in part to Arduino et similia, because they are very simple and allow making many funny things, even for neophites. But it's just an hypothesis, there may be many different causes.

So my question is: is there something that we can do in this site to give a global answer to all these questions, and suggesting a starting point for getting into electronics?

This is an example: many times I see a question by someone who seems lacking the base concepts of electronics, I go look at the profile and see that he's a quite experienced user of Stack Overflow, meaning that he might be a programmer.

UPDATE: And would we talk about this? A web developer who wants to create a capacitive touch screen in thin film; now, I don't want to seem to critic, but why does everybody think that electronics is like Lego?

  • \$\begingroup\$ I've just entered EE.Meta thinking if there were a discussion like this here. I want just to praise you for putting the question in excellent words: "why everybody think that electronics is like Lego?". \$\endgroup\$
    – mguima
    Oct 24, 2017 at 15:46
  • \$\begingroup\$ We usually just ask them to join hands in a ring and Meg them to have them baptized to the world of electronics. \$\endgroup\$
    – winny
    Nov 2, 2017 at 6:40

3 Answers 3


The real problem with software developers is they are just that 'developers'. Engineering is more rigorous. There are two strategies:

  1. Engineering - You sit down, develop some requirements (in your head on paper, a goal) then you come up (by doing research) with a design that meets those requirements. You then build or test the design to verify that it works.

  2. Developing - Go for it, sit down and start coding or bread boarding or whatever! The sky is the limit! Really, you sit down and start on your project, and keep making changes until it works, there is no structure, you occasionally go through some of the steps that an engineer would take, there is no methodology no formality no documentation, some steps you revisit several times. Some times you might get with a buddy and you can both pour over code at the same time. Sometimes you might go 'out on a limb' and try some extreme programming where you let the client make changes to the requirements whenever they want, but that doesn't matter, its software and its malleable, its not like it takes time to develop software.

Programmers need to be engineers if they want to develop hardware. Iteration for hardware design gets expensive in both time and money.

Teach programmers how to design, its something that most of them haven't tried or heard of.


Every time I try to answer a question like the one you linked, I find myself having a very hard time because I feel like I have to step back to the basics in order to find the misunderstanding they have. The problem is identifying what part of the problem the poster has misunderstood. I don't think any of the answers or comments are even doing a good job at doing so. Anyone who has issues with those basics also probably don't understand what is meant by output impedance nor do I think he is talking about a constant current source.

The root of the problem that I see is that the poster has not described what it is that they are trying to do. Once this context is in place it is much easier to answer their question in a way that is helpful to them.

Once the post has given context to their question then it can be determined if it is a duplicate of a previous question, or if we should go ahead and spend the time to write a new answer explaining the concepts to them.

The problem with a global answer is that it is hard to guess what it is people will need help with, so there is no way to have a resource that covers everything they need to know. As we build up a larger amount of basic questions/answers then we can just start pointing people to those questions.

  • \$\begingroup\$ But what I think is that the basic concepts are hard to understand question after question. There should be a way (maybe in the subscription page) telling that it's useful to have a knowledge about the simplest concepts. And also how can they think to build a time machine without knowing what is a voltage divider? \$\endgroup\$
    – clabacchio
    Jan 29, 2012 at 20:16
  • 7
    \$\begingroup\$ @clabacchio: Everyone knows you don't need a voltage divider to make a time machine, just a bunch of flux capacitors. \$\endgroup\$ Jan 31, 2012 at 17:29

My two cents : I read somewhere that to make a software guy understand hardware development, tell him that it is the same thing as software, but everytime he hits "compile", it takes 2 weeks and costs 5.000€/$, i tried it myself and got a few devs thinking.

What i would do is either close the question (because is is often too broad, unclear, has not been researched or all of the above), and steer the asker towards good learning material, or use it as a wiki on a basic topic (like resistor dividers).


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .