Just another Perl shrine | |
PerlMonks |
Re: Death and Return of TIMTOWTDIby jepri (Parson) |
on Jun 02, 2004 at 05:48 UTC ( [id://359193]=note: print w/replies, xml ) | Need Help?? |
Shades of Paul Graham here, but it is appropriate. I've never seen TIMTOWTDI as being interpreted as "let's write the same code over and over". I've always seen it as a way to reduce the endless debates over whether OO is better than procedural is worse than functional style. It calms people down and lets everyone get on with the job, rather than spending all our time bickering over whose paradigm is the best. Not all code is equal, and some of it is worse than others. That link is a good example because the poster is spending hir time improving code rather that rewriting it in a different way. Apprectice joiners practise making furniture. Apprectice potters practise making pots. Neither of these people try to sell their work as master-class. Apprentice programmers practise writing code, then upload it to the web and complain that people are overlooking their natural genius by recommending a solution that is already on CPAN.
If somebody thinks they want to try something that is already on CPAN, why not let them? We don't stop them. We can't stop them, as much as we might like to.
Similar, kind-of to why there are several Linux Distros There are multiple (GNU)Linux Distros because they fill different needs. Each has a different sort of community revolving around it. But mostly, it's a waste of everyone's time. The time to duplicate work is when the current project is beyond hope of repair. Even an unresponsive maintainer is a poor reason to duplicate code. You'd be better forking hir code and improving it. Mainly, duplicating code is the mark of people who can't understand the current code base, or why it does what it does. Rather than extending or modifying the current code base, they build their own, which will invariably aim to 'be better', and is almost always worse. For the clearest example of this, look at the state of window managers for X-Windows. There are like, 30 window managers. All of them do exactly the same thing. All of them were written to 'correct the problrm with XXX window manager'. None of them have any more functionality than early nineties window managers, and the entire field has stagnated. From my browsing through CPAN, it seems that templating toolkits are approaching the same fate - everyone writes their own, and there's a few on CPAN already. All it needs is for a few more people to upload their own special and better template toolkit and we'll have 30 indistinguishable toolkits and no advances in that field either. And since perl wasn't around in the 1970's I suspect you are referring to algorthms from then. So what? Most communications devices rely on algorthms that are 100's of years old. If you can improve them, I'll laud you as a hero. If you just reimplement the same thing and clutter CPAN, I'll complain. Update: For an even clearer example of everyone rewriting the same thing over and over like Sisyphus, check out the number of 'portals' and content management systems. Please, stop writing more portals.
In Section
Meditations
|
|