← Back to context

Comment by chrneu

13 hours ago

everyone is guessing

some are just a bit better at guessing

I am not sure which profession they are in (software development?), but no. Not everybody is guessing. If they were you would have half of the buildings and bridges collapsing and the other half on fire by bad electrical wiring.

You can legitly learn how to do things properly and people who learnt to do that do the polar opposite of guessing. It is just that the world of software development has yet to be made liable for their results in the same way as civil or electrical engineers. So in software development many are just guessing because guessing wrong won't ruin their life.

  • Software "engineering" also differs in the way from more formal engineering in that there are very rarely absolutes, there's often many different correct ways to solve a problem, each possessing their own pros and cons. So, it could feel like "guessing" choosing a certain approach over another, but more senior people usually have an intuition brought from experience which one will work better and be more informed of the tradeoffs, so it looks a lot less like guessing.

    • I once found a very interesting definition of engineering. It is about making something that just barely does the job. Doing it better costs more usually and doing it worse costs lives.

      Not much different in software. There is always many ways of solving problems and that is typical of any engineering. Contrary to sciences.

    • Yet when we talk about controlling trains, airplanes, freight ships, medical devices, nuclear power plants and space stuff we suddenly know how to do it?

      There is software engineering and it is known how to do things that absolutely must not fail. It is just thst these standard are not commonly deployed if nobody forces you to deploy them. And why would you? Costs money and a software error is widely treated like divine intervention.

      1 reply →