Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The building analogy doesn't work, software is not a building. There are essentially templates for buildings, there is no template for software.

Maybe software is more like a city. Maybe buildings are more like patterns, data structures, etc.



The concept of "pattern" in software is based on Christopher Alexander's concept of "pattern" in architecture, which was introduced to the software community[1] by the same Richard Gabriel the article quotes (though the modern idea of software pattern is quite different, focusing only on details rather than multiple levels of patterns which combine to form a coherent whole).

[1]: https://www.dreamsongs.com/Files/PatternsOfSoftware.pdf


Without being too reductionist, I don't think 'pattern' means that to people using the word 'pattern'. Architects didn't invent 'patterns' and the word's regular English meaning is going to be how 99% of programmers interpret it, and it fits with how it's used today.

EDIT: although thanks for reply, it is interesting to know that bit of history / link with architecture.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: