• 0 Posts
  • 220 Comments
Joined 1 year ago
cake
Cake day: June 21st, 2023

help-circle







  • You don’t need to study axioms in order to accept them, but once you accept them, then you must accept any soundly derived conclusion from them. Belief doesn’t need to be logically consistent, but knowledge does.

    As for investing significant time and energy, I would say that that depends on things such as the length of the chain of reasoning or the difficulty/cost of testing a hypothesis or how closely observations match your intuition. Some knowledge is cheap to acquire, such as “the sun rises in the east”, because we can observe it directly and we can clearly identify the direction of east and the sun’s path in the sky is very stable from day to day.





  • Write comments that explain why the code isn’t obvious just by reading it. Why did you do things the long way? What did you need to work around? Why didn’t you do the thing that anyone reading the code would expect you to do?

    Also write comments that explain the purpose of the functions you use, in case the names of those functions don’t make it clear on their own.





  • The fact that the loop is doing “find first driver matching these strange criteria” seems most obviously obscured by the pattern of assigning a value, then killing the loop or not. This strikes me as the part that makes the algorithm tedious to test, since it forces us to use a collection to test the intricacies of the inner conditions.

    Once we isolate “find first driver matching condition” from computing the condition for each driver, I consider the rest a question of personal taste. Specification pattern, composition of filters, something like that. Whatever you find easier to follow.