Tech IndustryMay 13, 2018
AdobeUserChange

Coding standards and critical systems

So I’ve worked in a few places and everywhere I go there are insufficient unit tests, poor and outdated documentation, insufficiently enforced coding style... in other words we hack, a lot. Then I hear of companies driving their engineers to 10-16 hour work day. This is insane as code quality really suffers. There are many software engineers but very very few who can write safe and maintainable code consistently. This is ok in online ads and social networks. But can we really execute systems like self driving cars safely? We talk about things today that really have to work, how do we snap out of hacker mentality?

Cisco binpack May 13, 2018

This is the single biggest reason Google can succeed faster and longer in moonshots than others. They really care about the health of their code

Apple yUtX72 May 13, 2018

Right... show me one person who has been promoted in Google for making code healthier :)

Cisco binpack May 13, 2018

Not everything is about promotions. Do you just work out to look good or are there other benefits too?

Amazon Ang Boomer May 14, 2018

Hardware companies (I consider self driving a hardware thing) have different standard, and no matter how much you unit test you still have to stress it in real life for long duration to stabilize things. There are reasons why certain practices are used for these hard real-time, fault tolerant systems: No recursive calls Static and global variables Design for worst case instead of average performance Limp mode Bare metal or at most RTOS No runtime resource allocation, hard code them from init on Redundant components

Cisco binpack May 14, 2018

The biggest difference is "no move fast and break things" and "it's not ok to fill up your memory with memoized results"