Developers already have a difficult time with device manufacturers pushing their own development environments to reach consumers. Do developers specialise in one or two, or should they work across all of them?
Not to mention how back-end and front-end programming techniques and requirements are changing, as a result of a multi-device landscape. Do developers need to become design experts now too, in order to keep up?
“The mission of the front-end developer is to make sure that a user experiences an aesthetically-pleasing User Interface, that is easy to navigate and informative. However, coming back to the surge of multi-device use, this is becoming an increasing challenge for front-end developers, as the variety of development languages, screen sizes and resolutions makes their job more difficult,” Richard Firth, Chairman and CEO of MIP Holdings.
Not only do developers need to ensure that the “site” they are developing displays correctly in disparate operating systems (cross-platform), but they need to be concerned that it is compatible with different devices (cross-device), which needs careful planning on the side of the developer. Developers also need to consider that there are development environments and languages specific to each device.
“Remember, back-end development is the hardcore bits and bytes. It is basically the business logic side of things, converting business requirements into a system or application that is usable, including architecture, database and performance,” explains Firth. “There is a difference in how Web services interact with the business logic and data based on their back-end, but there is also a definite split between front- and back-end development. In fact, only 5% of the development effort goes into the front-end or ‘APP’, yet this is where the user experience happens.”
He adds that front-end programming is mostly about design, and logic-heavy programmers aren’t necessary to get this piece of the architecture working. The developer needs to have less programming skills and more UX/UI (user interface) design, usability and business specific experience to get an app to work. Firth says that MIP is finding a clear distinction between these skill sets. “The general market has confused these skills to be the same, and the massive attention shift to the front end has played havoc on the availability of programming resources.”
“I feel that there is a bubble that will soon burst in the technology arena as investors find that there is no easy route to money in the pure app game. Because of hefty salary offers for app developers, we have seen a flurry of hardcore developers move to where the money is. This can only be short lived as the economics are not making sense any more. In 2013 there was an average of 650+ new apps a day being published on the Apple iStore. Most of these apps are backed by private equity, angels, extended family or loans from banking institutions. The scary statistic is that 90% of apps published on the iStore earn less than $10 or R100 a month for their owners! No one can live on the commercials of these numbers. It is just a matter of time before the true developers will go back to their roots in hardcore logic programming and leaving the traditional ‘web site’ or User Interface designers to build the apps.”
Another looming change that Firth believes will take place is the rise of the “Super” app. @KPCB (Kleiner Perkins Caufield Byers), the internet trends company, defines the super app as the rise of the invisible app. “There are too many apps wanting to interface with the consumer. How many notifications can a mobile device user consume in a day?” Firth asks.
“Every single app development shop is strategising how their app interacts with the end user for the app to remain relevant in the consumer’s day-to-day use of the mobile device. In the future, these apps will interface via web services to existing apps, giving them breadth of function, but not constantly being in the face of the consumer. Why do I need to go to a weather app when any app can interface with a weather app and display local conditions for the week? Only if I want to know another location’s weather then maybe I will need to go into the app.”
Firth explains that the conflict between back- and front-end development may well be resolved through HTML5, the World Wide Web’s single development code base or methodology for front ends. The latest version boasts a new and efficient way of handling rich media elements, such as audio and video files. Furthermore, it introduces mark-up and application programming interfaces (APIs) for complex Web applications. For these reasons, HTML5 is a great contender for cross-platform mobile applications and many of its features have been created to run on low-powered devices such as Smartphones and tablets.
“After all is said and done we may just be entering the age of less apps and more focused useful functionality with apps communicating with each other,” Firth concludes.