4 ms·
Can you see the value in being able to create software more quickly, at the expense of the software's stability?
by Jyaif 4y ago
Can you see the value in being able to create software more quickly, at the expense of the software's stability?
- kaba0 4y agoYes, but that is definitely not achieved by checking for errors every second line.
- philosopher1234 4y agoI think checking for errors every line makes my go programs easier and faster to produce at a higher level of quality.
- valand 4y agoSome languages achieve error checking by type transforms and pattern matching, which are much more effective and efficient than error checks after every function call
- chrisoverzero 4y agoSure, but is writing the error check by hand what creates the benefit? Or is it having the error check?
- lanstin 4y agoIt is thinking about what to do for each operation that can fail. This thought is what separates the applications that recover when the network glitch is over vs. the applications that need to be restarted.
- lanstin 4y agoThe value here is the few seconds of human attention given to the error at hand. The thought is irreplaceable. Like others mention, 90% of the, end up if err != nil { return nil, err } but thinking about it will, in my experience, make the system more robust to failure. At the very Least for your process you will decide on a goal of carrying on in the face of failures and repairing when things work again vs. just bailing out and letting something else worry about it.
- kaba0 4y agoWhat if the return nil, err was the sane choice at the time of writing but there are changes downstream that mandate a new error handling mode there? Also, there are plenty of “writing this code at 3AM” where I would question the validity of such thoughts.
- sph 4y agoNo, the compiler needs to save us from ourselves. What if we get a runtime nil? Oh God, the horror! I understand correctness, I do not understand why we're making languages a nanny state where if we're not completely focused on correctness and zero copy interfaces it's not worth using. I don't want to always care about memory allocation strategies when I want to have some fun on a project. I don't understand why a vocal group tends to dismiss some languages because they're not always doing the PERFECT thing.
- jokethrowaway 4y agoI used to prototype in PHP and nowadays I prototype in JS. I also ship JS in production and it's a painful experience compared to rust or haskell.