himalia.net | community blogs

Sunday, May 06, 2007

Name and conquer


This is a very famous principle in maths.

I think Donald Knuth was the one who first propose it in Mathematical Writing, but I am not completely sure.

 

For example: v = c + u(ci − cj + 1)

Should be v = c + ku, where k = ci − cj + 1,

If you're going to do a lot of formula manipulation in which (ci − cj +1) remains as a unit.

 

I still remember it from time to time, but never with maths involved ;)

 

Some time ago, I remembered it when I started with my investigation about user interface modeling techniques and I found the Hypermedia methods. Nobody knows about Hypermedia and I think the name has a lot to do with it. When you say "Hypermedia" people think in everything but formal models for the web. Well, this is the reason why they renamed it as Web Engineering some years ago...

 

However, some time ago I remembered this quote again while watching the Dave Astels techtalk about BDD (Behaviour-Driven Development). He was promoting the TDD (Test-Driven Development) philosophy, that says: "write the test before the code". He was the one who wrote the book about TDD that won the Jolt Award, but... he said, "actually, people wasn't using it"...  Why? When you have a very strong deadline you just write the code and then the test (but only if you have enough time, don't you?). 

 

But then, something came to his mind...

 

If you rename test as specification everything makes sense: "write the specification before the code". It sounds far better! Specification is a fist-step task in software development and everybody knows it. Everybody understand the Waterfall method. The good thing now, is that the specification can be tested automatically, because, at the end... it is a test.

 

Sometimes, the psychological influence of renaming things are amazing. This principle is not new but sometimes you can think it is only related with branding or marketing areas. However, it is true also in maths and software development techniques, unnamed or bad-named things can destroy everything you have done.

 

BTW, the Google techtalk isn't good enough to recommend it, but it has very funny final Kent Beck's quote:

 

"I always thought Smalltalk would beat Java, I  just didn't know it would be called 'Ruby' when it did." 

- Kent Beck

Labels: , ,


Comments: Post a Comment
Links to this post:

Create a Link


<< Home