[lug] can't make this stuff up, folks...

Kenneth D Weinert kenw at quarter-flash.com
Sat Oct 17 09:37:54 MDT 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tkil wrote:
>>>>>> "David" == David L Anselmi <anselmi at anselmi.us> writes:
> 
> David> I see a lot of "why use a library that I can write myself"
> David> coding.  I don't know whether good libraries are that hard to
> David> come by. 
> 
> I wrote a blurb on this topic a few years ago...
> 
>   http://www.perlmonks.org/index.pl/?node_id=359220

>   Finally, I find that there are many modules on CPAN that are right
>   at the boundary where "work required to understand the interface" is
>   just about equal to "work required to replicate their functionality
>   'by hand'".
> 
>   What tends to happen is that it is easier to open-code a solution
>   that handles 90-95% of the cases; it's those last few percentages
>   that require ugly special code, pleas to Seekers of Perl Wisdom, and
>   responses to "use CPAN" and/or "let's make that a module".
> 
>   The latter, however, eventually grows enough hair that when the next
>   novice comes along, looking to solve the first 90% of their problem,
>   says "wow, that module's too complex, I can just solve it with my
>   own code like so..."
> 
> The last three paragraphs are the core of my theory on lack of library
> use.

I would heartily agree this statement.  Even, at times, when the first
90% is hard to write on your own the existing library(ies) are on that
boundary where, if you write it yourself you at least understand it,
it's not going to take any more real time to just do it than to try to
understand why someone wrote the way they did and how they could ever
think that way in the first place.

I find myself in that situation at work - I do sort of niche stuff and
there aren't a lot of existing libraries that do what I need to. The
company bought what's probably the best library, but I find myself on an
hourly basis trying to figure out why in the hell someone would make 3
left turns to go around the block to get next door.

Maybe there's a good reason for it and that will all become clear once I
understand it better - but I don't think that's the case.

Even if it is the case - as tkil said that's the place where most
programmers, given the chance, will reimplement rather than slog through
someone else's code/documentation to make sense of something that's seen
as difficult to use.

- --
Ken

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkrZ5NIACgkQH0OpnUzq8fBp3wCguwELLCmblevsdt8lm6gicODX
pRYAnArS7ju1Mikb6ecZ4c0D/TQryo4G
=E5xi
-----END PGP SIGNATURE-----



More information about the LUG mailing list