Making something customizable vs. making it smart

On one end you have the polished experience that smartly behaves to give users what they want. On the other end you have a completely customizable experience, allowing you to define what you want. This is the classic iOS vs Android argument.

There are tradeoffs for each choice, so while some have said that exposing customizable features is lazy and irresponsible, I’d argue that it really depends on your audience. Raspberry Pi isn’t “smart” because it isn’t designed to serve a specific use case. That’s intentional, and it’s a model that works fantastic for it’s audience. 

Your application, whether it’s an email client, RSS reader, or mobile app, lies somewhere on this spectrum of smart vs customizable. Is your current position the result of accident or an intentional choice?