Given the recent astronomical rise in interest in learning coding, as well as the ever so often application developer that makes a windfall (Think: Flappy Bird), we begin to hear of more and more people with the interest in writing their own mobile applications. At Early Coders Academy, we have often been asked the following questions regarding mobile application development:
“Hi, do you offer mobile application development courses for beginners?”
“Hi, i’m interested in learning IOS/Android application development, and I’ve no programming background”
“Hi, why does your school teach web application development, and why not mobile application development?”
Do you offer mobile application development courses for beginners? I’m interested in learning IOS/Android application development, but I’ve no programming background.
So when we speak of difficulty, it doesn’t mean that our team is incapable of teaching mobile application development. In fact, our team is very capable to do so, check out our credentials here. 😉 By difficulty, we mean that mobile application development is not just about learning programming. It is about learning and understanding a whole ecosystem.
Let’s think about such an analogy: A soldier is trained to fire a M16 rifle, but does that make him war-ready? We can safely say no to this, because of the very reason that he is not acclimated to the conditions of war by not undergoing jungle warfare training and the likes.
It is exactly the same for programming. Just learning a language is NOT enough for one to venture into mobile application development given the very many different pillars of knowledge in the technological ecosystem that is required, i.e. Security, Networking, Algorithms, UI/UX design, Data management, Server-side programming.
Critics may then say: “Oh, are you sure that it is really so tough to learn programming? XXX school is teaching Android AppInventor in Singapore, to teach kids of 12 years how to create android apps?! 😠”.
Our reply to this question is: “Are you sure you wish to let these guys teach your kids programming?”.
But jokes aside, the reason why we are against teaching Android AppInventor for “Android application development” is because it’s a misnomer to say that Android AppInventor allows you to develop Android applications! The “applications” that are developed with AppInventor are ugly, unusable, and are unable to save data to the cloud, and all these are the minimum requirements for a big hit application by today’s standards!
On this topic of experience, it was mentioned above that Security, Networking, Algorithms, UI/UX design, Data management, Server-side programming are all prerequisites to mobile application development. All these prerequisites are pillars of knowledge that are picked up over long years of exposure and practice to developers.
We’ve never heard of a developer that has managed to learn all these prerequisites in a year or less. If you are such a person, or know such a person, do send him our way, and we will hire him with a fat salary 😂! It is virtually impossible for you to create a big hit mobile application similar to Uber, Facebook, AirBnB, Instagram and the likes, without at least a good 3 years of programming experience (unless you are a computer genius, but even then, you’d need at least a good 2 years).
Time for a shameless plug! Here at Early Coders Academy, we take a ground-up approach to learning application development, and eventually mobile application development. This is the preferred, and most recommended way of preparing yourself for the mobile application development ecosystem. What does it mean when we say “ground-up approach”. It basically means that we equip our students with UI/UX design, networking, and computational thinking skills, that are all essential to the learning of mobile application development (see the pillars above). Students learn the basics of programming, and the web application development ecosystem, which will eventually aid the transition to learning more advanced mobile application development related stuffs.
Our take: Never ever trust a course that advertises, or tries to sell you the idea that you can create a big hit application by just taking a “5 day course”. This reality check is tough (we know), but a big-hit will never happen with anything less than at least 2 years practice.
Security is one of the biggest, and most overlooked pillar in the whole mobile application development paradigm. You’ll be surprised that some of the more popular applications that you use, ignore security. This does not mean that you can ignore security, as there are serious repercussions to end-users, as well as you the developer.
There are lawsuits that can take a developer to task for negligence of the Personal Data Protection Act (PDPA). And this is why security is so very very important. As a user of an application, of course you wouldn’t wish for a stalker to be able to easily find you anywhere you are, due to security loopholes in the way an application developer manages GPS positioning in the phone.
So if anybody tells you otherwise about security, just drop the conversation with that person. Seriously. It’s not a conversation worth continuing.
The above succinctly explains why beginners should not take up mobile application development courses recklessly, and the next part details the actions that should be taken if one is serious in learning mobile application development.
Why does your school teach Web Application development for beginners, and not mobile application development for beginners?
The reason for this is simple. Web Application development is the foundation of Mobile Application development in terms of technical knowledge. Also, if you have ever wondered how mobile applications like Instagram or Facebook have taken off to such successes, please remember the fact that these companies started off with the creation of Web Applications.
But why Web Applications?
There are a multitude of reasons why one should start with the creation of a web application. Ease and speed of prototyping is one of the main reasons why we should develop web applications for most product ideas. This will aid an individual to more easily pivot their product should market requirements change.
Subsequently, the knowledge gleaned from the web application development process, will serve well to aid the transition to learning mobile application development. We can’t further stress the importance of this point, as mobile application development is very much dependent on web technologies, without which, mobile applications are essentially useless.
Of course these reasons are hardly comprehensive, and should you have any queries, drop us a mail at [email protected] and we will be glad to respond to your enquiries.
Mobile application development is a tough business. If anybody says otherwise, he/she really has no idea what he/she is talking about. We come from years of experience to write this article, to let you know that mobile application development is not all a bed of roses. The media has glorified the business of mobile application development to an extent that many of us are lured into the mindset: “oh let’s just make a big-hit and i can quit studies/work”. Please. The tough tough truth of the matter is, it isn’t easy.
Of course at Early Coders Academy, our aim isn’t to dismiss mobile application development. We aim to accelerate the learning of the students under us, to aid them in achieving their goals of perhaps, creating the next big-hit application? Find out more about us below!
On this note:
If you have any questions regarding programming, be sure to email us your questions at [email protected]! We’d be more than happy to break it down for you.
Written by Ian Lam, Early Coders Academy