Post is excellent in dividing the effect and deduction into small steps which use very little technical complexity.
Part of the final steps take a bit bigger steps. The “true improvement” steps do infact take place and it is not obvious why they could not be enjoyed. Processing less subconcouisly would maybe make it slower but would make it more enjoyable.
Thanks for the feedback. The true improvement steps certainly can be enjoyed—in fact, that’s what I like about being a programmer! The effect of everything-feeling-like-a-tradeoff should be strongest when looking at the available solutions to well-known problems such as primality testing or sorting algorithms, where many people before us have already expended a lot of energy pushing the boundary outwards. History forgets the solutions that got dominated, and we are left with a trade-off solution set.
Your last sentence makes me think you read:
Throwing solutions out is easy (and is sometimes done subconsciously when you’re working in your domain of expertise …)
as referring to the moment that one discovers a new solution and throws out the ones that it dominates. I see why you read it that way. I’ll edit the wording to make it clear that I mean throwing out solutions that are just obviously very poor. (Initially I had another sentence here where I said that deliberately comparing these solutions to the good ones could help mitigate the everything-is-a-tradeoff feeling, but then I noticed that you’ve already said the same thing! Though I’ll note that you can still appreciate the gap between the bad ones and the good ones long after you’ve made your choice, which doesn’t result in slowness.)
Post is excellent in dividing the effect and deduction into small steps which use very little technical complexity.
Part of the final steps take a bit bigger steps. The “true improvement” steps do infact take place and it is not obvious why they could not be enjoyed. Processing less subconcouisly would maybe make it slower but would make it more enjoyable.
Thanks for the feedback. The true improvement steps certainly can be enjoyed—in fact, that’s what I like about being a programmer! The effect of everything-feeling-like-a-tradeoff should be strongest when looking at the available solutions to well-known problems such as primality testing or sorting algorithms, where many people before us have already expended a lot of energy pushing the boundary outwards. History forgets the solutions that got dominated, and we are left with a trade-off solution set.
Your last sentence makes me think you read:
as referring to the moment that one discovers a new solution and throws out the ones that it dominates. I see why you read it that way. I’ll edit the wording to make it clear that I mean throwing out solutions that are just obviously very poor. (Initially I had another sentence here where I said that deliberately comparing these solutions to the good ones could help mitigate the everything-is-a-tradeoff feeling, but then I noticed that you’ve already said the same thing! Though I’ll note that you can still appreciate the gap between the bad ones and the good ones long after you’ve made your choice, which doesn’t result in slowness.)