RailsConf 09: Robert Martin, "What Killed Smalltalk Could Kill Ruby, Too"
railsconf.blip.tv
railsconf.blip.tv
http://gilesbowkett.blogspot.com/2009/05/what-killed-smallta...
and a response that isn't so ranty ( and addresses other parts ) at:
http://www.cincomsmalltalk.com/blog/blogView?showComments=tr...
Interesting claim.
Question: Have you actually tried programming the way he sugegsts? Have you used it "in anger"? Have you worked in a team that has ubiquitous, all-encompassing, tests?
I ask because I'm interested. I've started recently, as an experiment, to run in that very, very small circle, and after an initial experience of paralysing culture shock I'm starting to run really, really fast.
I'm finding it liberating.
As to your questions:
"Have you tried it?": It depends. Test driven design states that you need to develop code and tests in tandem. I rarely do that. But note I also rarely program in dynamically typed languages. I develop the type in tandem with the program, and that constitutes a verifiable test as well, albeit a different one. Correctness is usually backed up by either a) machine-verifiable proof or b) Black-box test suites.
"Have you used it an anger?" I can't answer this. I rarely program when I am angered. I don't become desperate when I write code.
"Have you worked on a team with ubiquitous, all-encompassing, tests?" Yes. The team did not do TDD though. All tests were black-box.
Here is another experiment: Read Benjamin C. Pierce: TAPL and ATTAPL. Understand them. Learn Haskell. Learn QuickCheck. You will probably find that TDD is something which is much more needed in the dynamic language setting.
Also referenced from http://news.ycombinator.com/item?id=597314
For some reason I can't make it play beyond about the 41 minute mark. Can anyone else?
http://blip.tv/file/2089545?filename=RailsConf-RailsConf09Ro...
From memory,
It was insular - people created and staying in their bubble and didn't interact with messy other code.
It was too easy to make a mess, and continue to work with it until suddenly the code become too fragile to change.
Proponents thought their world was somehow better, and didn't play nice. So others didn't play nice in return.
One big one that really needs the video to support it - it will come to be believed that professional programming will be based entirely and exclusively around "proper" TDD.
There are more. I'll see what I can do. Do you have any video capability? It's also on YouTube.
I'm sure you have your reasons, but I'd love to know them. I've just provided a service in response to someone, why down-mod me?
Talk about shooting the messenger.
This isn't a complaint, I'm simply confused. I don't much care about the karma, but I worry that sometimes people down-mod something because they don't agree with it, rather than because it's of negative value.
I would recommend downloading it and playing it at double speed.
Skip straight to 05:30. It starts with something completely unrelated and, to me, uninteresting.
This link works beyond the 41 minute mark:
http://blip.tv/file/2089545?filename=RailsConf-RailsConf09Ro...
It would seem to me that doing so would seriously interfere with workflow.