Live data from Hacker News

Lessons learned by a software guy venturing into hardware

sidecart.xyz

21–30 of 58 posts

Re: Lessons learned by a software guy venturing into hardware

#21

Just like "software" is a huge field with a wide variety of technologies, payscales, opportunities, and niches, so it is hardware. You wouldn't expect someone writing about the opportunities and lessons from the JavaScript/CSS frontend world to have a huge amount of insight into the work and opportunities of firmware developers. So it is with hardware, and personally it frustrates me when software people think they c…

I personally don't see a problem. Writing shouldn't be limited to experts, as long as person clearly identifies what it is and what it isn't. Both in the title and introduction of article it clearly says that it is experience of person who is new to field. Which to me implies that whatever they are saying should be taken with grain of salt and that they might not have exhaustive or fully accurate knowledge. It doesn't claim to be "ultimate reference book for everything hardware". That doesn't change the fact that that's experience they got as beginner. It's up to you decide whether reading beginners experience is useful to you.

On the other hand it also means that the problems person encountered are likely nothing extraordinary. And that it's something other beginners should watch out and further research, as they are likely to encounter similar challenges. Beginner articles can also be useful for those who have no idea where to start as means to gather keywords for further reading.

Having beginners share their experience might not be useful for most experts. But it can be helpful to highlight common pain points and areas of potential improvements for educators and people making tools.

Re: Lessons learned by a software guy venturing into hardware

#22
Anyone suggest some great book recommendations to better understand modern computing hardware?

I have these three on my shortlist: (i) The Art of Electronics (3rd edition), written by Horowitz and Hill; (ii) Digital Design and Computer Architecture: ARM Edition; and (iii) The Elements of Computing Systems: Building a Modern Computer from First Principles, by Nisan & Schoken

But keen for more.

Re: Lessons learned by a software guy venturing into hardware

#23
post #21

Just like "software" is a huge field with a wide variety of technologies, payscales, opportunities, and niches, so it is hardware. You wouldn't expect someone writing about the opportunities and lessons from the JavaScript/CSS frontend world to have a huge amount of insight into the work and opportunities of firmware developers. So it is with hardware, and personally it frustrates me when software people think they c…

I personally don't see a problem. Writing shouldn't be limited to experts, as long as person clearly identifies what it is and what it isn't. Both in the title and introduction of article it clearly says that it is experience of person who is new to field. Which to me implies that whatever they are saying should be taken with grain of salt and that they might not have exhaustive or fully accurate knowledge. It doesn'…

Yeah, I think it's fine, and even very positive, to be sharing their view. However, I do agree with the sentiment that "hardware" used as a generalization is confusing. There are lots of different kinds of hardware and the article does not clarify it anywhere, although you can derive what they mean through the later descriptions. I had to re-read the intro once I had figured out what "hardware" meant.

Personally, I'm also a software engineer who ventured into hardware, and even am now professionally doing hardware design. I find that perspective worthwhile. But I am an ASIC engineer, which is a very different kind of hardware than PCB design or integrating ICs on a breadboard. The lessons and realities of each are different. So I would find it helpful if the post (and title) clarified what specific field was being discussed.

Re: Lessons learned by a software guy venturing into hardware

#24

Anyone suggest some great book recommendations to better understand modern computing hardware? I have these three on my shortlist: (i) The Art of Electronics (3rd edition), written by Horowitz and Hill; (ii) Digital Design and Computer Architecture: ARM Edition; and (iii) The Elements of Computing Systems: Building a Modern Computer from First Principles, by Nisan & Schoken But keen for more.

[deleted]

Re: Lessons learned by a software guy venturing into hardware

#25
Having also taken this journey, the one thing I wish I'd understood much earlier is how important familiarity with CAD tools was going to be. Not just PCB layouts but everything from enclosure design to product mock-ups. You need to get comfortable with at least the basics of both additive (3D printing) and subtractive (CNC milling) processes.

Re: Lessons learned by a software guy venturing into hardware

#26
I just would like to celebrate this sentence for one second:

> If It Can Be Done with Code, Don’t Do It with Hardware

We all complain about why my washing machine needs a connection to Wifi and why my brakes don’t work while I’m tuning the heating on the display (joking to emphasize the craziness of plugging the infotainment on the CAN bus), but our hardware is now so reliable that it’s more reliable to do something in software and reuse existing HW bricks, than to design a specific circuit for a dedicated function.

Re: Lessons learned by a software guy venturing into hardware

#27

Anyone suggest some great book recommendations to better understand modern computing hardware? I have these three on my shortlist: (i) The Art of Electronics (3rd edition), written by Horowitz and Hill; (ii) Digital Design and Computer Architecture: ARM Edition; and (iii) The Elements of Computing Systems: Building a Modern Computer from First Principles, by Nisan & Schoken But keen for more.

IMHO there is no way to understand _modern_ computer hardware without knowing the old, retro one. Start with basics od digital electronics, then analyze some old computers (Altair, Apple 1, PC XT)then, slowly move on.

Re: Lessons learned by a software guy venturing into hardware

#29

The point about "not doing something in hardware if can be done in software", is although mostly true, is less so when one takes FPGA into consideration, where the difference between hard in soft is blurred.

Yes, and when doing it in software makes no sense. We have GPUs for a reason, for example. (Yes I'm aware graphics can be done on the CPU but there's a reason GPUs are faster)

Re: Lessons learned by a software guy venturing into hardware

#30

Anyone suggest some great book recommendations to better understand modern computing hardware? I have these three on my shortlist: (i) The Art of Electronics (3rd edition), written by Horowitz and Hill; (ii) Digital Design and Computer Architecture: ARM Edition; and (iii) The Elements of Computing Systems: Building a Modern Computer from First Principles, by Nisan & Schoken But keen for more.

IMHO there is no way to understand _modern_ computer hardware without knowing the old, retro one. Start with basics od digital electronics, then analyze some old computers (Altair, Apple 1, PC XT)then, slowly move on.

This is great advice. The concepts haven't changed much - electricity and physics don't change at all - we just have new techniques and the scale is way larger than before.
Post reply on HN