The 99% Rule

| 2 Comments

David Golden praised Tatsuhiko Miyagawa's excellent new cpanminus CPAN client in The power of not being all things to all people. You should consider using cpanminus.

Don't overlook something else insightful that David wrote:

It's a lot of work to be all things to all people and I keep wondering whether making things simpler and better for 99% of people would be a better choice.

The only reliable way I've ever seen to "make the easy things easy and the hard things possible" is to make the easy things the default without preventing customization of the hard things. That's a design principle for languages, APIs, and tools.

Figure out what's most common (though not necessarily what people think they want, but what they need). Optimize for that. Consider what they might need and don't prevent it.

That's not easy, and what people need will change over time, but if you want to solve problems well, you have to solve the right problems.

2 Comments

That's not easy, and what people need will change over time, but if you want to solve problems well, you have to solve the right problems.

That's the crux of the issue I think. cpanminus is here because although the canonical CPAN client is an awesome tool, the way modern Perl programmers work is different from the use cases that tool was originally created to solve. We live in a changing world and sometimes a different tool is the correct solution. Ideally we'd be able to keep our old and familiar tools bouncing around the Brownian motion inherent in open source development, keeping them forever fresh and relevant, but this is not always possible or desirable.

It's simple to keep things hard. It's hard to keep things simple. So developers often do the simple thing for them, but it's the hard thing for everyone else. It's a tough balance to keep.

Modern Perl: The Book

cover image for Modern Perl: the book

The best Perl Programmers read Modern Perl: The Book.

sponsored by the How to Make a Smoothie guide

Categories

Pages

About this Entry

This page contains a single entry by chromatic published on March 2, 2010 4:41 PM.

What's Wrong with Module::Install was the previous entry in this blog.

Configuration-Free CPAN Installations is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.


Powered by the Perl programming language

what is programming?