5 ms·
Well humans reading your bit of code is not the only end goal. My intuition tells me that when I've refactored something to be simple-but-hard it ends up makin
by geokon 9y ago
Well humans reading your bit of code is not the only end goal.
My intuition tells me that when I've refactored something to be simple-but-hard it ends up making more maintainable code. There is less state being maintained, less lines of code to maintain, less coupling. Yes it requires a bit more time to understand, but there is also less stuff to understand. Bad code and bad decisions snowball into bad projects
- crdoconnor 9y agoMy intuition tells me that good code is when I reach a localized minima balancing coupling, amount of code written, expressive density of the code, clarity of purpose and ability to fail quickly under invalid conditions. There are often times when I could make the code simpler but it would be longer and vice versa and my decision about which one to pick is purely personal.
- rimliu 9y agohttps://www.sandimetz.com/99bottles/ https://www.sandimetz.com/99bottles/ is all about that. It starts with a few different ways to solve the same problem and then goes into comparing them using chosen criteria. And then it goes on to implement the solution using TDD. Very underappreciated book, imho.
- dbcurtis 9y agoYes, simply optimizing for less state and fewer side-effects, and letting the chips fall where they may, is 80% of the benefit. Most of what I do is realtime and/or robotics. Basically, varitions on: power_on_self_test() while True: recover_from_everything_that_has_gone_wrong_so_far() If the only rule you enforce is making sure every piece of state has a damn good reason for existing life is improved. OK, on re-read this sounds like more like a rant, and less like a philosphy of life. Oh well.