more on patterns

TeeJay on 2002-11-21T12:13:48

This blog piece on oreillynet is a pretty good intro to the whole concept of patterns, and it doesn't even mention Java or assume you've heard of, let alone read, the gang of four.

I am sure perl does already and can increasingly benefit from more formal patterns as well as the informal recipes available.

Also it would remove one of the sticks that critics use against the language about how informal it is. Increased use of patterns and modern OO techniques will mean that Perl offers both formal and informal development opportunities.


GoF isn't that good a patterns book

pdcawley on 2002-11-21T14:01:02

I've said this before, and I'll probably say it again. One of the big problems with the perception of Design Patterns is that the GoF book isn't actually that good. It presents a few patterns, and it links them together, a bit, but what it doesn't do is to present a coherent pattern language. And that's a big failing.

Compare the GoF's book with my favourite software patterns book, Kent Beck's Smalltalk Best Practice Patterns and you'll see what I mean. Kent's book presents an entire pattern language for 'tactical' programming. Kent's patterns deal with how to structure your methods, how to name things, when to use which Collection class, how to layout your code. Yes, he often states things that are 'obvious', and sometimes offers solutions you'll disagree with (he's fond of studlyCaps for naming, but that's the Smalltalk way), but each pattern offers well thought out solutions with good supporting material as to why.

Most importantly, Kent's patterns play very, very well with each other, they operate on a variety of scales, and reinforce each other, reading one pattern leads you on to other patterns and everything just flows. To get all Alexanderish on you, Kent's pattern language oozes the Quality Without a Name, I commend it to you all, unreservedly.

Re:GoF isn't that good a patterns book

TeeJay on 2002-11-21T14:42:05

Too many books not enough time or money...

I just got a good book on software project management.

I think I can still afford Managing Gigabytes, which will help me with my fuzzy content management and information architecture needs.

Now I have to pick one affordable Patterns book and an affordable database book.

If only I was working somewhere that paid enough for me to buy books and live within an hour of the office - right now I am stuffed.... I've even had to wait a month while time off I requested months ago gets put back again and again.

Re:GoF isn't that good a patterns book

ziggy on 2002-11-22T18:29:59

Too many books not enough time or money...

Two words for you: ABE Books. Dominus says this is the reason why the internet was invented in the first place: to consolidate hundreds (thousands?) of used book sellers and provide a unified storefront for used book buyers.

You should be able to find Kent Beck's book rather easily. They're not too hard to find. The 2nd Ed of Managing Gigabytes has been out for a few years, but it's a small market kind of text. I'm sure you can find it used, but it may take a few months to find a good copy at a price you're happy with.

I recently stocked up on some Smalltalk classics. I've had a (used, paperback) copy of Goldberg's Smalltalk 80: The Language for a couple of years now. There are two lesser known books in that series: Smalltalk 80: The Language and its Implementation and Smalltalk 80: The Interactive Programming Environment. I saw one of the other two pop up recently through ABE (or Powells; I'm not sure which) and got a few other used Smalltalk titles to go along with it. I think I got about 4 or 5 titles for the same price as 2 or 3 books at a good tech book store (with the requisite 10%-20% discount). (That's mostly because the rare Goldberg volume is still expensive, and it's only availble used.)

Re:GoF isn't that good a patterns book

jhi on 2002-11-21T21:03:02

I literally had to turn around the GoF book around in my hands a few times to see where is hidden the fabled tome of wisdom people talk in hushed reverential tones about... I reall did feel cheated out of my money.

Re:GoF isn't that good a patterns book

pdcawley on 2002-11-21T21:49:27

Yeah, far too many GoF patterns seem to be workarounds for insufficiently dynamic languages.

Re:GoF isn't that good a patterns book

ziggy on 2002-11-22T18:20:58

No need to mince words here, Piers. The GoF book is a set of hacks to make C++ slightly more like Smalltalk.

:-)

Re:GoF isn't that good a patterns book

pdcawley on 2002-11-22T21:57:19

Yeah, shame it's the one with the mindshare. Richard Gabriel's Patterns of Software is also work a look btw, especially as it's actually a set of essays rather than a directly 'do this then this' book of badly written recipes.

Re:GoF isn't that good a patterns book

ziggy on 2002-11-22T23:08:26

I just finished reading this a few weeks ago. PoS is a great book, although a bit oblique at times. (The discussion of Turkish Prayer Rugs was a long diversion that didn't seem to have a great payoff at the end.) I also liked the discussion about the rise and fall of Lucid. It helped bring some context to what he's said about "Worse is Better" and the like.

I really like the fact that Christopher Alexander wrote the forward, and talked about the timeless way of building, and how the hullabaloo about software patterns is focused on the first half of his career (work that he determined to be severely flawed...).