Hacker News new | ask | show | jobs
by gerbilly 2378 days ago
> If there is one correct way, then software writers are fungible

I don't believe that follows.

For example, there is one 'correct way' to unscramble a rubiks cube, but humans unscramble them in a much more roundabout manner.

Just because there is one correct way to do it doesn't imply that all rubiks cube solvers are fungible.

This is because of the very high cognitive load of finding the correct way.

Math, especially number theory, is full of conjectures that are easy to state but take hundreds of years to resolve, and at it's base computer science is math.

1 comments

> For example, there is one 'correct way' to unscramble a rubiks cube

Thats not true from a mechanical standpoint. From start, rotate an edge 180degrees. Now you can turn it right 180 or left 180.

Making 2 coins show the same face (when they differ) doesnt have one correct algorithm, in the same vein. Developers necessarily interact with apis at this level and generalize from these choices.

The integrity of my rubik's cube analogy isn't critical to my argument, but...

Even allowing for equivalent rotations as you mention, the method humans use to unscramble a rubik's cube is far far from optimal because we can't grok a scrambled rubik's cube then just execute the optimal solution.

Also this is just pedantry because WLOG you could just name those equivalent 180 rotations as a single operation anyway.

> you could just name those equivalent 180 rotations as a single operation anyway.

That isnt true insofar as there are decisions that are based on arbitrary perception and categorization. What you could do is irrelevant because that is an assumption to create a generalization. GL with whatever.