Events,  Rostrum,  Speeches,  Technology,  தமிழ்

Mobile Apps Technology

தமிழ் கணிமை தொழில்நுட்ப அமைப்பான உத்தமம், இன்று முதல் செல்பேசிக் கணிமை 2016 என்ற பெயரில் இருநாள் பயிலரங்கம் ஒன்றை நடத்துகிறார்கள். இன்று மதியம் என்னை “குறுச்செயலிகள் உருவாக்க தொழில்நுட்பம்” (Mobile Apps Development Technology) என்ற தலைப்பில் பேச அழைத்தார்கள்.

In my talk I covered on 3 areas – The Opportunity that Mobile Apps presents, Platform Decisions that you have on how to develop a Mobile App and lastly covered case studies of design decisions we made while developing apps for our clients.

Opportunity: Mobile Apps download have grown from 24.9 Billion in 2011 to 309.6 Billion in 2016; Percentage of Free Apps have grown 88.4% to 93% not huge. The important thing to notice is the massive growth in terms of numbers of Paid Apps download – from 2.9 Billion to 21.7 Billion, nearly 8 fold in five years, I don’t know any other opportunity in software industry that has seen this hyper growth.

Decisions: The first thing you need to decide when you begin to develop a mobile app is the platform you are going to use for development. There are hundreds of choices but I covered on the four major options in my opinion.

  1. Native Apps – You use Apple iOS SDK XCode and Swift (or) Android Studio and Android SDK from Google (or) Microsoft Windows 10 SDK for Universal Apps (UWP). In my firm, this is our preferred choice most of the time due to it’s unique ability to offer the best user experience and the best performance.
  2. Xamarin – This is a 3rd party paid offering that allows you to develop Android, iOS and Windows Apps from a common C# code base. You still need to do UI views seperately for each platform for getting the best experience. This offers performance that are closest to natively build apps.
  3. Facebook React Native – This use a declarative programming model adopted widely in Facebook, that uses Javascript to develop apps. You can embed Native code for UI views and controls, offering best of both worlds.
  4. Apache Cordova – This was formally called as Phonegap, that uses HTML5, CSS and Javascript wrapped inside a webview control. I am not a fan of this model because of its performance and poor user experience compared to other available options.

If you attempt to build all the modules ourselves that are required today in a mobile app, you risk the same fact that happened to a Sanyas who took to raising a cat.  Instead you need to follow the model pioneered by Car manufacturers. A typical car has thousands of components, most of them manufactured by suppliers with the car company designing, assembling, marketing and selling them. For Mobile Apps, there is a new concept called MBaas (Mobile Backend as a service). In our experience we have found out this to be an ideal approach for achieving quick Go To Market that’s needed in Mobile Apps space.

Case Studies: I talked of the following  mobile apps we developed for our clients.

  1. Tortoise (Code name) App – This was for a startup that connects students with teachers in their area. The app required a Real time messaging module, we used API. For their onetime payment and recurring subscriptions we went native with iTunes In-app Purchase.
  2. Connect Chat (Code name) App – This was a startup based in Bangalore & Singapore who were developing a unique chat app. Apart from their USP, it had the usual post text/image/video/voice features. Instead of building everything ourselves, we aggressive went with integrating various MBaas solutions out there. For collobration between us, customer and their branding we used Microsoft Office 365 and Github for source code management. For Hosting the backend we went with Microsoft Azure and had all the data reside in Facebook Parse service, which saved us tons of time in designing, installing, configuring a SQL DB. Digits API for user verification through SMS. Twilio API for messaging, video and voice communication.
  3. DailyThanthi App – This was a complex app, but to highlight one area which we developed in 2014 was an unified notification backend using Amazon Simple Notification Service (SNS).


You can view the presentation below or download from here.

After my talk I got a chance to listen to Aazhi Senthinathan and N.Chokkan (என்.சொக்கன்).


Senthil talked on how you can use Music, Arts and other interest areas to teach kids Tamil typing and Tamil in general. He mentioned the opportunity that’s in front of mobile app developers to develop games that are specific to Tamil Culture and Indian Culture. Indians spend good money on two categories – Education, Mind & Body (Self Improvement, Health, Food, Dress); this is true for books and it’s true for mobile apps. Hollywood producers have realised the importance of dubbing their movies to at least the 3 main Indian languages (Hindi, Tamil, Telugu) to tap the Indian market and make big monies; it’s time our local firms (not only in movies) learn the importance of localization. You need to think globalization and not restrict to localization alone.


N.Chokkan was brilliant. He outlined 24 points that every app creator has to think through. He started by talking on how you need to adapt for each screen (திரைக்கேற்ற சிந்தனை), then went on listing 100 different ideas for apps that you can build around திருக்குறள், most of them you can adapt to any other major literary work in the world. He talked of importance of partnership (partnership with technologist, developers, UI designers), promotion, competition study, market place study, funding, iteration, user experience, focusing on one single app and much more.