And beyond this, solving the problem is just the baseline. Solving the problem well can take an immense amount of time, often producing solutions that appear overly simplistic in the end.
I recently watched a talk about ongoing Java language work (Project Valhalla). They’ve been working on this particular set of performance improvements for years without a lot to show for it. Apparently, they had some prototypes that worked well but were unwieldy to use. After a lot of refinement, they have a solution that seems completely obvious. It takes a lot of skill to come up with solutions like that, and this type of work would be unjustly punished by algorithms like this.
And beyond this, solving the problem is just the baseline. Solving the problem well can take an immense amount of time, often producing solutions that appear overly simplistic in the end.
I recently watched a talk about ongoing Java language work (Project Valhalla). They’ve been working on this particular set of performance improvements for years without a lot to show for it. Apparently, they had some prototypes that worked well but were unwieldy to use. After a lot of refinement, they have a solution that seems completely obvious. It takes a lot of skill to come up with solutions like that, and this type of work would be unjustly punished by algorithms like this.