4 ms·
As a someone working in hardware development (PCBs & firmware) in Spain, from the 5 companies I worked: - Only one used version control, the rest I had to intr
by xondono 7y ago
As a someone working in hardware development (PCBs & firmware) in Spain, from the 5 companies I worked:
- Only one used version control, the rest I had to introduce them (and fight management fears) to set it up.
- Only two had onsite backup using RAID or similar
- None had out-of-site backup
- Only one had a system that supported shared libraries (for hardware), the rest resorted to email or a shared drive and a LOT of back & forth to ensure no one overwrote past edits.
- I started working in 2010, yet I've managed to found "goto" statements (the "jump out of this function to some weird place in code" type) in the wild.
But by far, the most damaging practice that I see around is how pointless much of the work done is. Given the amount of investment required for developing your own hardware, knowing that less than 40% of the products I have worked on are on the market because they were pointless in the first place (and everyone knew it) is the most demoralizing.
EDIT: I always forget to double the break lines
- raverbashing 7y ago> yet I've managed to found "goto" statements (the "jump out of this function to some weird place in code" type) in the wild. I might just add that this is not wrong and actually expected in some places. Linux uses it. It helps with some error handling situations. But yeah with the other points I agree.
- golergka 7y agoWhile I've seen a few places where goto made sense (as in, "goto fail" in C), a goto that lead somewhere out of a function has never been one of them.
- xondono 7y agoThat’s what I’ve added the parens, I know there’s some very limited edge cases were it makes sense to tradeoff clarity for speed and use a goto. To clarify, I’m talking about stuff that could be easily done with functions or loops being done by random goto statements.
- uxp100 7y agoto further nitpick and distract from the main conversation, it sounds like they are talking about non-local goto (setjmp etc in c), which, just like an actual goto statement, is useful for error handling, but is much more difficult to deal with that a normal goto.
- pjc50 7y agoThat very much agrees with the "poor management" verdict. In the light of all this it's great that a famous hardware startup managed to come from Italy (Arduino).
- wayoutthere 7y agoThe history of Arduino is pretty shady [1]; and from all accounts they’re barely treading water these days. There is a glut of well-documented microcontrollers targeted at hobbyists. Most are at similar price points with far more advanced capabilities. They created the market, but have been largely unable to capitalize on it. Which is basically par for the course for Italian companies. [1] https://arduinohistory.github.io/ https://arduinohistory.github.io/
- dmix 7y ago> They created the market, but have been largely unable to capitalize on it. There's a long history of this stuff happening in tech and other industries. It's often the 2nd or 3rd popular company that becomes dominant. Facebook is a classic example. There was a great Harvard Business Review article critiquing the 'first mover advantage' which was the go-to strategy during the dotcom boom that highlighted this phenomenon. Most often the 'first mover' is just paving the way for the next guy.
- pravda 7y agoArduino has been a resounding success! And Arduino is not hardware, it is the ecosystem, the community, etc.. Do a web search for "Basic Stamp", the closed-source progenitor of the Arduino. Then search for "Arduino". I get 142,000,000 results.
- devonkim 7y agoTo be fair, I see this in the US as well and IMO the problem is that we have many generations of managers that have learned about management based upon 20th century manufacturing and military (the biggest and best studies in management come from here). My plea to management in all these stuck in time companies is to read about Deming and a reminder that even the US military has mostly abandoned the practice of command & control for missions that are more exploratory or back office related because they weren’t working when enemies were so fast moving and adopting new strategies quickly. And in fairness to your experience of lack of useful projects, many of the products people work on even at the big tech companies never get deployed or are shuttered within months (Google Wave anyone?) We need management to lead now, not... “manage.”
- xondono 7y agoI would understand if projects were launched, didn’t caught up and were abandoned (like Google Wave). What makes no sense to me is building something that everyone knows from the start there’s no market for it, Or getting something ready and then just not bothering to sell it.