Simplicity: operation should be simple. Users should not have to set up networks, properties, or profiles beforehand. Users should not be presented with complex, unnecessary dialogs that require them to enter details about anything more complicated than a WEP key. Also, we decided that profiles aren't very user-friendly, and therefore we actively try to avoid profiles.
Example: there aren't any profile wizards, or anything resembling profiles. This is by design.
Visual Clarity: user interface elements of NetworkManager (for example, the panel applet) should be simply laid out and should not show any settings other than those an average user would need on a daily basis. If the user isn't going to click on it at least every other day, it shouldn't be immediately visible in the menu. They only add to clutter and confuse the average user.
Example: infrequently used settings and options are not shown in the NetworkManager panel applet.
Automation: operation should be as automatic as possible. By default, everything should "Just Work" with as little interaction as possible. Everything that can be done automatically or detected automatically, should be. NetworkManager should not be doing things users don't expect.
Example: automatically connecting to the last-used wireless network or the fastest available network type.
Control: just because it's not directly shown in the user interface doesn't mean it can't or shouldn't be done. Options that most people don't use on a daily basis shouldn't be shown to users every day. But they should still be accessible to use.
Example: WEP key indexes don't show up when clicking on a WEP-enabled network the first time. But you can still change the index from nm-connection-editor.
NetworkManager is distributed under the GNU General Public License v.2, and is Copyright © 2004-2012 by the NetworkManager project.