Hacker News new | ask | show | jobs
by brabel 1435 days ago
> you learn on the job by getting your hands burnt.

That's how it works in new fields where there's no good theorical foundations yet. I think OP is asking if we already know how to avoid getting hands burnt in the first place, as in many other fields of engineering where you don't just learn on the job and get yourself burnt a few times.

1 comments

This is why I think "software engineering" is more of a creative field than a "hard engineering" one. More akin to painting or singing. You need practice in order to improve solving problems in the real-world, you can't just read up on it and become better than people who've actually implemented useful things in real scenarios.
I think that in the area of system reliability, specifically, there's quite a lot of theory that's useful and often ignored by practitioners, though. Saying you need to learn everything on the job is akin to cowboy system design. There's a lot of collective knowledge you should absolutely use when designing large systems, and ignoring that body of knowledge by assuming the only way is learning on the job is a mistake.

I believe not long ago, medicine was like that. Clearly, things can, and should, become more standardized and that will not in any way encumber the creativity that is also a big part of our field.