Being at the receiving end of enquiries for iOS and Android development has made me realise how many people and companies don’t really know what they are getting into. Some haven’t a clue, not even a hunch, how much effort is involved. Most see a set of screens as something simple. They don’t realise the complexity of what goes on underneath and the consequent communication with other systems and platforms. They don’t realise there are ‘quick and dirty’ ways of doing things and slower and more future proof ways of implementing things, both of which are valid depending on the business context. They don’t think about edge error scenarios, user experience, measuring through analytics and other things like localisation and even the complexities of time. In some cases, there’s no thought as to whether the project is technically feasible.
Ordinarily, this isn’t a problem because many of these things are taken care of by the developer. However, these types of people/companies also tend to not know how to choose a developer. All they think about is cost or daily rates. which gravitates them to developers who don’t know or don’t take care in what they are doing. Not knowing what factors are important and wanting implementation at the lowest cost is obviously a recipe for a failed project.