Joao Pedrosa
Posts: 114
Nickname: dewd
Registered: Dec, 2005
|
|
Re: Programming with "Duh" Typing
|
Posted: Jul 9, 2007 8:46 PM
|
|
"In the end, maybe it does come down to personal preference after all. ;-) It would seem that my experimental coding style is a whiteboard style and that yours is a notebook style. That is, with a whiteboard, it's a lot easier to wipe out a large chunk of writing and redraw something different. I'd wager that you mull over a design in your mind longer than I do before putting it into code."
Same here. It's not always that I need to revert my hurried changes, but it does happen. With Revision Control Systems, it's quite easy to revert changes anyway. For example, I created a custom inheritance framework in JavaScript using the little OO library of someone else. I didn't like the result of it, even though it took a few iterations for me to decide on it. Then I reverted it all back once I decided I didn't like it and that it just couldn't be salvaged.
As Fred Brooks said, "Build one to throw away."
By incorporating that idea in programming with dynamic typed languages, one can keep on throwing away all the time and still have a working system to work with. :-)
I'm sure that it's easy to keep the things that matter working well enough even during the large refactorings. As long as one works with proper modularization, reusing, testing, eating own dogfood, the chaos ends up being productive. Dynamic typed language + modularization + components = rocks. :-)
Now if you have an explosion of non-modularized, non-componentized, non-tested, non-used, lines of code, maybe it would be better to have static typing in place to help with the mess. I think not everyone strives for the same patterns, so there's enough room for both approaches. Not to mention that by being pragmatic, one uses what is available as well.
|
|