Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

"Actual" engineering might have greater stakes in terms of "blood", but I have a hard time believing they are harder.

There are equations well known for hundreds of years on how to design a bridge that doesn't collapse. And the fact that most bridges don't actually collapse is not mainly due to the ingenuity of the engineer that built it, but rather, allowing liberal margins of errors for safety. If you use materials twice as strong as the minimum requirement, things don't break if you made a 50% error in your calculations.

In fact, I'd be very concerned if "actual engineering" is hard. Given that most people are mediocre in ability ("licensing" is just about formal requirements, whether one can jump through the hoops, as opposed to actually being super smart), it's really scary if building a bridge or a building is "hard".

On the other hand, building robust yet complex software is actually hard. There's no software equivalent of "just spend more money on materials to allow for a 10000% margin of error to ensure it doesn't break". Spending more money stops working at a certain point, for example, hiring more people doesn't work, per Mythical Man Month; spending more effort on handling edge cases don't always work, because writing more code with minimal utility means an even less maintainable project in the long run. Correct code almost has to be "mathematically perfect" in order to be small, simple-as-need-be, and robust. And then even if your own code is 100% error free, you have potential bugs all the way down from frameworks, compilers, to even the CPU (eg. Spectre).

Software development definitely has one of the highest skill ceiling among the trades that I know of. Sure this doesn't apply to whoever wrote your CRUD app, but think about it -- let's say you're thinking of building a skyscraper that requires extremely difficult engineering (whatever that means) to properly build, nothing short of the most brilliant engineer would be capable of planning and executing the project, any mistakes would lead to a complete collapse of the building... would you want to proceed with this project?

Yet people start software projects like these for fun. Precisely because it doesn't necessarily have to involve "blood".



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: