Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Back in the 90s there was a Perl programmer who thought as you are encouraging people to think now. Nice young kid, he set out to make useful applications in Perl. They solved real problems. They were easy to install. They were easy to customize. Those were his criteria, and by those criteria he succeeded brilliantly.

    The Perl community hated him. For years afterwards his name has been vilified. We've complained horribly about the bad impression he gave Perl. We still complain about that.

    Why? Because Matt Wright didn't understand security. He didn't design his code for reuse. He didn't follow basic best practices. And many beginning programmers used him as a model for how they should program. Every one of those criticisms is valid.

    Now go look at some of those PHP applications out there. Examine them. You'll find that Matt Wright's spirit lives on in PHP, in spades. Similarly look at how Rails handles databases. If you care about database design, that's not the way to do it.

    Then go read Worse is Better [dreamsongs.com] and see the parallels. Characteristics which make software worse from one perspective often make it better from another. In particular maintaining programming ideals around areas like security, good design, code reuse and the like often get in the way of making software that will become popular.

    What are our values? How much are we willing to bend in the name of popularity?
    • The trick is, how do you make code easy to install while remaining sane and modular? I think we can do better than throwing out modularity and backsliding to single file installs.
      • We can make it more sane and modular than single file installs, but not without making the install process more complicated than a single file install is.

        That said, we've gone a long ways towards making things simpler. Just compare how difficult it is to get a Perl library installed versus installing a useful Java library. We can make it simpler still, but Perl already has a pretty good story to tell.

        However it is never going to be as simple as a single file install. It just ain't going to happen unless