Hacker News new | ask | show | jobs
by m_eiman 3478 days ago
When the main product being developed is a tangible system, redos are way more costly.

Even when primarily doing software, this can come into play.

I know of a customer who had about 5000 card readers in an access control system, where bugs in the card reader firmware required a firmware update. Doing this required walking to a reader, unmounting it from the wall, updating the firmware, re-mounting the reader. Rinse and repeat 5000 times.

A rough estimate is that upgrading all the readers on the site took about a man-year of technicians walking around updating things. Let's just say that when more bugs were discovered, the customer who paid for it all was less than pleased…

Lesson learned: always make secure remote firmware updates possible on your devices.

1 comments

> Lesson learned: always make secure remote firmware updates possible on your devices.

Lesson apparently not learned: get it right first time.

Software isn't special

http://www.gettingitrightfirsttime.com/report/

Software IS special. Compared to hardware, software is (usually) so easy to update that it's (usually) cost effective to not do it right the first time. NASA etc is different, and they work differently.

Everyone knows this and act accordingly - which is why we have to live with ever changing requirements for projects.

Er, but the case study you linked is very different.

There they're talking about getting specific tailored treatment right the first time.

Here we're talking about getting a generic reusable component right the first time.

Which is exactly what that link advocates against...