Hello fellow developers, my name is Thato Banda. I am a Junior Mobile Applications Developer at Geekulcha, student in Information Technology(Technical Applications) at the Tshwane University of Technology. An aspiring Applications developer.

Being a Mobile Apps Developer is one of the greeniest job titles in the 4th Industrial Revolution with more organizations looking into embracing mobility for enterprise solutions.


In 2017, I learned these lessons about mobile apps development:

Design patterns
I had to understand the key role design patterns plays in developing a well-designed application. Design choices may affect the quality of your application so as a developer the design decision you take, will have a significant impact on the application's end-product.

Three most common Design Patterns used: MVC (Model View Controller), MVP (Model View Presenter) and MVV (Model-View-View Model)
Mobile Applications Platforms

Native Apps
I have only developed apps for this type of framework. Here, apps are developed for a single mobile operating system exclusively, App built for systems like iOS, Android, Windows phone, Symbian, Blackberry cannot be used on a platform other than their own.

Hybrid Apps
Apps that are built for all platforms together with Angular, React Native, Ionic etc.

Databases (Firebase)
The basic idea behind creating database is to store data systematically and fetch data when required, the most common one I have worked with in 2017 is, Firebase. It is a database backend for all applications platforms which is mostly favoured because of its features like speed, storage, analytics, authentication, real-time database etc.

Material Design
It is a comprehensive guide for visual, motion, and interaction design across platforms and devices. It provides elements such us themes, widgets and new API’s for custom animations and shadows. Since I have started working with it I have realized that it gives you a space for creativity and innovation in your application.

The prestigious MTN App of the Year Awards challenge has played a fundamental role in elevating local developers and unearthing exciting new innovations in the South African app development market.

These were the Top 3 apps in South Africa as by the MTN App Awards 2017, where Geekulcha sponsored the Best Breakthrough category winner:

Hey Jude: Best South African App, a real human assistant app that lives on your smartphone

Zulzi: Best Breakthrough, An on-demand delivery platform for anything around the consumer’s area.

Shyft: the overall winner of this year’s MTN Business App of the Year, an app that was created for Standard Bank with the aim of completely transforming customer experienceShyft: the overall winner of this year’s MTN Business App of the Year, an app that was created for Standard Bank with the aim of completely transforming customer experience

As app developers we need to be data-centric. We need to build apps that are centred around a database. An application that is based on a structured, consistent information such as you find in a database, JSON or XML file. We can find such applications running in small desktop database systems like Microsoft Access or FileMaker all the way to huge systems running on database management systems like Oracle or MySQL. If data is stored in a database, the app becomes more efficient and faster to use because you retrieve data only by a single query.

Growing dependency over smartphones has increased opportunities to develop mobile apps for various applications to users. Mobile Apps in 2018 will include more of cloud technologies. Cloud computing has finally found its place within mobile apps.

In 2018 I see developers being busy with developing with the following:

Developing apps that have AR (Augmented Reality) and VR (Virtual Reality). Apps that will revolutionize the gaming and entertaining industry.

More of Google’s accelerated mobile pages apps that enable an isolated search index for mobile app pages, which aids the mobile apps to load faster and minimize bounce rate in vast number.

Instant apps which does not require the use to download it first, but can just try it on play store and only download if they feel the need to do so.
Lazy loading apps that will speed up the performance of mobile apps when app is syndicated through the web.

Mobile apps have taken over the world, they are now used for everywhere to make people’s lives easier. In 2019 South Africa will be having their National elections.

We have apps that are used to make the election period more efficient such:

Voter App: you can get election results, check your registration details, find your voting station, apply for a special vote, share key election moments, get answers to frequent questions and keep up to date via social media.

IXSA - a game app which introduces first-time voters to the electoral process in a fun, interactive and innovative way.

With the rise of implementing the concept of IOT, not only is this future inevitably coming but growing faster than you might think in Iot.When coming to app development I see more things getting connected, more of IOT apps that bring about change and saves a lot of time for the people. IOT has opened a gateway of opportunities that can make a difference in our routine. While there is a lot to be tapped on it with app development, it remains on top of the list when we count the mobile development trends.
According to my observations, the rise of AI and bots is slowly making its way into important apps that are going to add quality to mobile app development. For example, we already have Facebook that offers contextual content to end users, Ask Siri which tells you what you need to know. When these two are combined they will provide users with a more intelligent capability in mobile apps appeasing users a peace of mind knowing that they do not need to download too many apps for a specific task thus they are going to save some space.

It is very much important to choose the right development tools for building your mobile app. Here are the 5 tools mobile developers can use in 2018:

A tool mostly used to build native apps that allows you to do performance testing store deployment and monitoring.

It allows developers to create apps with fewer lines of coding. It mainly helps the development process when the application reacts with the web service.

Adobe PhoneGap
PhoneGap takes your code and converts it into a cross platform app using its cloud based API's.It is an open source for building cross platform app which integrates with Git to simplify your build and deployment pipeline.

Sencha Ext Js
Ext JS is a popular JavaScript framework from Sencha that allows developers to develop cross platform apps offering many UI widgets such as menus, list, panels so developers do not have to rebuild their own.

An HTML5 framework that is widely used to develop hybrid apps using web technologies like CSS, HTML5 and SASS. It offers great tools and services to build highly interactive apps. It comes with several default CSS components and other JavaScript components.

My message to other developers is, when developing an app make sure you choose an ideal mobile app development solution to create a high-quality mobile app for your needs and users. One last thing they must do is to connect the app with the value it will provide to users. They always must bear in mind that your mobile app does not have to be "out of this world " to fulfil its purpose. It must be clear to users because ultimately you want your target audience to download it.

In Conclusion,2018 will be a year of rapid business growth for us developers, designers and business organizations with billions of dollars and billions of mobile app downloads at stake. The future for mobile apps certainly looks bright and challenging with enticing and innovative possibilities.