Craftsmanship vs. Abstraction

(karim.cloud)

3 points | by k_shehadeh 3 hours ago

1 comments

  • itay-maman 2 hours ago
    One point in the post resonates strongly with me:

    > "While there is often a component of logic involved [in applying discoveries, patterns, and abstractions from the past] the balance frequently shifts away from pure science and toward something closer to art"

    I'd argue that software has a unique structural property here: it's recursive. You write a function that uses other functions, which use other functions. You're always simultaneously using an abstraction and creating one.

    Contrast this with physical structures like buildings: floors contain flats, flats contain rooms—each level is fundamentally different. A flat cannot contain a flat. The skills for designing each level are distinct.

    In software, that divide is much smaller. The same patterns of thought apply whether you're writing a utility function or architecting a system. Maybe this is why the "art vs. science" tension feels different in our field.