The 2 to the Nth feature
Overheard at work today regarding the number of mail accounts on our system:
We’ve got more email groups [eg. [email protected]] than we do user accounts [eg. [email protected]], by a factor of more than 2 to 1.
Bit of a lesson in that statement for software developers, I think. If you’ve got N users on your system, those N users can form ~2^N groups. For example, a system containing 50 users can form ~1,120,000,000,000,000 groups for a total of ~1,120,000,000,000,050 different entities in the system. If your feature set, interface, and performance metrics only cater to the 50 users, you’re ignoring most of the possible entities. In developing software, build features for groups and watch your garden grow.
Note: this also easily applies to mp3 players (N songs, 2^N playlists), weblog software (N posts, 2^N “categories”), and newsreaders (N feeds, 2^N feed collections and/or N posts, 2^N post collections).
Another note: thanks to Stephen, Simon, and Graham for correcting my poor back-of-the-envelope math. It’s 2^N, not N^2.
Stay Connected