Good product design puts the needs of the end user ahead of the preferences of the developer.
Obliging all users who don’t share your personal casing strategy to rename/resave all the pre-existing patterns and rename every pattern they import is not my idea of a user-friendly design; it adds friction to every interaction.
The PB on my desktop has 183 patterns loaded at the moment; if I want to use a snippet from someone else’s pattern I have to remember not only its name, but also who wrote it and what their casing style is (if they are even consistent in their naming). If I guess wrong, I have to scroll through the other half of the list looking for something familiar. More friction.
Want to get someone else to change the display? The conversation goes like this:
- “Put on the one called ‘xorcery’.”
- “I can’t find it?!?”
- “Try it with a lowercase ‘x’.”
- “What do you mean?”
- “Just keep scrolling; there’s more patterns after ‘Z’.”
- “Why?”
- “Don’t ask, just scroll.”
Where it’s desirable to sort important items to the top of the list, there are plenty of widely-used naming schemes, like using digits or punctuation characters (00README.TXT
or !ReadMe.txt
), that don’t rely on something as personal and ephemeral as capitalization.
I wouldn’t advocate for making case (in)sensitivity configurable; settings are not a substitute for thoughtful design.
And as for resistance to change, there didn’t seem to be any uproar when the sort order in Firestorm was changed; one request and it was done.