Form vs function
When having to choose between form and function, go with function. Find out what the core function of your design is first then add the form. By stressing form over function, designers will confuse the end user. Don't make user go through several steps to achieve what they want to do. Re-evaluate what the users are using your application or website for; it may be different than what you intended.
Once we determine what the main function of our application is, we can work on guiding the user to make for a more positive end user experience. Don't make users jump through several hoops to show off your design prowess. Minimize the number of steps that the user will have to go through. Now not all users will be using the app for the same reason but if we cover 80% of the users' reasons for using our application, we will have a successful app.
When our applications asks for permissions to access certain areas of their computer or smartphone, we are asking them for a favor. Don't bombard users with all the permissions at once, otherwise users will feel suspicious. Have the application ask for permissions as they are needed to slowly build a relationship with the user. To illustrate this, there is a term called the Benjamin Franklin effect. What happens is that when a user grants our app permission to something personal, the next time we ask, they are more likely to grant us permission again. Again, think of asking for personal information and permission as a journey to building a relationship and we, as designers, need to guide them in this journey to build a relationship
In building an app, consider what you want to be the core functions of the app. Make those core functions easy to get to by minimizing the steps the user has to take to get to that functionality. You may build bonus features that you feel users may want to use but don't obsess over it as much. In designing an app, use the 80% rule which means that if we cover 80% of the users and their needs, the users will have an overall positive experience. Concentrate more on reducing the number of steps for the core functions of the app.
Sometimes, the users our apps for different functionality that what we intended. A well known example of this is Instagram. The original Instagram app was intended to be a location sharing app to allow friends to share their location with each other with geolocation tagged pictures. Later, Instagram found that users were mainly using the app to share pictures. The designers then modified the app so sharing pictures was the main function of the app. They then designed the user interface with that in mind and made is simple to share photos. What this shows is that designers need to adapt to the users rather than the users adapting to the designers.
When designing an app, always keep in mind that function trumps form. Don't try to be clever and keep things simple. Part of keeping things simple is to keep things consistent. Always be aware of branding and what function you want to highlight. When you see users using some functions more than others, adapt the app to the users following the 80% rule and make those user functions simpler. By showing that the app is changing with the users' needs, we are building a relationship with the users and that is what app design is all about.