Part of the point of A Pattern Language is that it wasn't revolutionary. The premise is that people have been building buildings for thousands of years, and certain common patterns appear without anyone calling them out specifically. So, Alexander set out to compile a list of all those patterns, and hypothesize about the problems they solve and why that particular solution is preferable to the alternatives. To someone who is trying to make an artistic statement with their buildings, A Pattern Language might be uninteresting, since his advice is essentially the architectural equivalent of…
It sounds like you and your friends run a very nice online neighborhood, that's terrific and I don't mean to detract from that. I'm pointing out the enormous difference in bandwidth between online and in-person interaction. It's difficult even to estimate the orders of magnitude! Online interaction can be a healthy adjunct to a healthy social life. It's when online interaction replaces in-person interaction that we evidently get a mental health crisis. > what's your definition of a meaningful social space? Thanks for asking. I would start with Christopher Alexander's "Pattern Language"…
> The problem Alexander is trying to solve is: > How can you distribute responsibility for design through all levels of a large hierarchy, while still maintaining consistency and harmony of overall design? > The pattern language does not tell you how to design anything > It helps you decide what should be designed > You get to make up whatever patterns you think will lead to good designs I'm not sure I completely agree with this. I agree Alexander was trying to establish a vocabulary for communicating common ideas, and I agree that his collection of patterns wasn't meant to be the one…
It's been a while since I read the GoF but my recollection is that it was fairly language agnostic and also quite focussed on problems that arise when building the UI monoliths of the time. While it was an attempt to capture something fundamental it ended up, in many cases, capturing something that is more reflective of the period, including things that have to do with languages of the period, the types of applications, and the prevalence of OO. In contrast, Pattern Language, which I've also read a long time ago, naturally benefits from a broader perspective because while humans have been…
In the last year I've learned a little bit about expert performance from the book "Peak" and also the Coursera course "Learning how to learn". Experts learn to think and act more efficiently by forming "chunks" - associations between different concepts that are recalled together and can be handled as a larger unit (which reduces the amount a person needs to keep in working memory). I think this really has a lot in common with "design patterns", which are basically "chunks" of design expertise that have been written down and can be recalled by name and shared between people. (Also, if you…
"I've had this conversation with architects and city planners and they all say this." Now you are having a conversation with one who isn't. The analogy between architectural patterns and software patterns is more akin to the way in which software patterns are not relevant to an application programmer in regards to the structure of black boxes such as third party libraries or the OS kernel. Architectural design depends on OPM (other people's money) to execute. Urban planning not writing a web app. It's maintaining legacy spaghetti code in within an institution with entrenched interests.…
A Pattern Language is often a required text for at least one studio course in US architectural schools. There are, however, practical issues with Alexander's approach at a professional level. Some are perhaps subtle to a layperson - most architectural projects are typically driven by the client's commercial concerns, e.g. a firehouse apparatus bay is designed for trucks not human habitation and a restaurant is designed to turn over customers not cause them to linger for six hours. On the other hand, some are obvious - planners do not have the ability to limit existing communities to a few…
For me it's not even a programming book... which is what I felt the people who have answered have artificially limited themselves to. For me, it's: http://www.amazon.co.uk/dp/0195019199 Pattern Language It's about architecture, buildings, towns. How to make them work, to serve all the needs of them, and how to allow them to grow. What is important to me and influenced me heavily is the thinking behind it. All parts of a large system in harmony, well-separated concerns, and working together to achieve a common goal. In architecture (computer as well as construction), there is also…
Sorry, Christopher Alexander, who wrote the book called "A Pattern Language" (and several others) which was the origin of the inspiration for design patterns in coding. He also later wrote a foreword for a book by Richard P. Gabriel, "Patterns of Software", with this gem of a quote: (the book itself I really recommend for anyone interested in design patterns) ... In my life as an architect, I find that the single thing which inhibits young professionals, new students most severely, is their acceptance of standards that are too low. If I ask a student whether her design is as good as…
Make internet a basic utility, paid through taxes, that requires no activation. I've never had to explicitly pay for water or have it turned on/off when I switch apartments, it would be amazing for internet to be the same. See Pattern Language/Christopher Alexander for ideas on how to design the physical spaces to work for the people who will be using them, including random passersby. Put cars lowest on the priority list. To me it feels like you should only need a car to travel between neighborhoods, though there would need to be a solution for elderly/less mobile folks. Build the city…