> When you recreate someone’s creation, you learn their story: every piece of brilliance, tradeoff, and imperfection.
I vehemently disagree that this happens. What you see is the end result, and thinking and struggling through for each element is not present. It is like copying the Mona Lisa and claiming the relationship with the sitting model and her smell and feel and complaints about cramped neck is all in the copied painting.
(Please do not change the cursor, specially the size. There is a reason I changed it.)
I agree. In fact, it's even worse: often times you miss the tradeoffs.
With Software in particular, I often encounter designs that copy a pattern from another popular piece of software, but without critically thinking about what the pattern is for or if it's even appropriate for their system, or even worse, assuming that because it exists and is popular that it must be good, when in fact it's terrible.
If recreating someone else's creation truly learned us, I believe the world would be a tremendously better place.
I used to run a lunch study group where we took some old crusty load bearing software, read the documentation thoroughly, and then dissected it, reading source and comments and trying to distill what it achieved well separate from what it achieved in spite of itself.
We learned a lot.