Wednesday, December 7, 2011

Bugs are like prime numbers...

"Bugs are like prime numbers. You can never really find the last one. But after the first billion or so, they start to thin out a little bit..." - Brian Foote

Tuesday, December 6, 2011

STIC submission deadlines coming soon

The Smalltalk Industry Conference 2012 is coming up March 19-21, and submission deadlines are coming up sooner.

This year there are two parts to the conference, so there could be some confusion.

- Smalltalk Industry Conference: This is the traditional Smalltalk Solutions program. To submit, you just need summary information for the talk. The presentations are, at least sometimes, recorded, but there aren't published papers. The deadline for those submissions is VERY SOON - December 15th. Call for participation is here.

- Smalltalk Directions: This is the academic part of the conference, new this year. It accepts academic papers, which will be refereed and a selection of which will be submitted to the Journal of Object Technology. The deadline for those submissions is January 6th, 2012. The call for participation is here.

Monday, December 5, 2011

Some nice words for Smalltalk

As part of a comment on an earlier post, Bob Calco writes some nice things about Smalltalk...
Now I'm getting into Smalltalk 'for real' and finding that the OO-ness of it is not even the main thing I find compelling: it's the live-ness of it. It's just easier to think about the abstractions 'in the present' as it were. 
I think Smalltalk takes the idea of live objects to such a level of sophistication that most people can't quite grok the Platonic Forms of domain modelling that swirl around the mind of an accomplished Smalltalk developer. 
and also
But folks who have come to think OO is more buzzword than reality could not possibly have tried Smalltalk, not 'for real,' let alone tried to get good at it. It's not just a language or even a platform but a way of thinking about reduction of a problem to its essence, as this article makes clear. 
I did leave out the bit in the middle where he has some thoughts for improvements like pattern matching, but they're at the bottom of the article. For myself I've never quite seen pattern matching as an especially valuable feature. To my mind the biggest gain is that it's a terse way of extracting out elements of a list -either a variable size list of arguments, or if you're in a language where linked lists are the primary data structure, being passed a list and automatically having it expressed as two variables represent first and rest. Other than that it just seems like syntactic sugar for a case statement. But maybe I'm missing something.

Friday, December 2, 2011

Dave Ungar on Massive Parallelism

Another one of the Microsoft Channel 9 videos from the Splash conference. This features Dave Ungar talking about Self and his current work with massive parallelism, using Smalltalk and C++, and how we can get our answers much much faster if we're not quite so hung up on them having to be exactly right...

Thursday, December 1, 2011

Inheritance hierarchies

In an IRC discussion the comment came up that "deep hierarchies mean you're doing good OO.. um... right?"

That put me in mind of one of my favourite comments on the subject, from Richard Gabriel's 1996 book "Patterns of Software" (in PDF). In the first chapter (Reuse versus Compression) he talks about inheritance not as code re-use, but as code compression. You can express a lot very succinctly by sharing code that way, but you're tightly coupling those things together. Whether that's worthwhile or not depends on the circumstances.