Mobile App Development by RMS

The essential message we wish to convey to future clients and friends is this

Our mobile app development company develops software applications for smart phones, ipads and other mobile devices. If you need to develop one we would love the opportunity to show you what we can do. See below for general guidelines in the Mobile App world or see our specialty pages on apps for different devices by clicking on one of the elements given a few lines above.

A Compelling Marketing Reason to consider Mobile Apps Development

The popularity of smartphones and tablet devices is staggering. It seems as if Mobile app programming has become a dominant force in the programming world almost overnight. Amazing as it may seem there are more users of third party mobile applications than there are desktop computers. App development companies are popping up every day. It is a whole new world.

In Egypt, where RMS does all of its Mobile Application Development , even the poorest people in the most remote provinces have cell phones and a growing percentage of these are smart phones. Moreover they are almost always near at hand. According to a Strategy Analytics estimate there were a billion smartphones in existence in October 2012 and that the number will double by 2015. Moreover Strategy Analytics Executive Director Neil Mawston maintains that "Smartphone penetration is still relatively low" when the potential in China, India and Africa is considered.

According to this article the number of mobiles in use is expected to reach 10 billion in 2016 – more than one per person (!)– and according to IHS iSuppli Wireless Communications Market Tracker Report smartphones will represent 67.4% of the total cellphone market in that not-so-far-off year.

Estimates like those above (which are not quite in sync - 2 billion in 2015, 6.7 billion in 2016?) do not have to be taken as gospel in order to realize that something new is truly taking place. In return for a relatively small investment a mobile app developer in, say, Ridley Park, PA (my home town) will have the ability to market directly to most of the people in the world. It does not take much imagination to reflect on the rise and fall of businesses and even languages in such a world.

Two approaches to Mobile App Development (and a compromise)

Having started in 1984, RMS has seen quite a bit of change as hardware grew ever more powerful and programming effort shifted from desktop to the web. Now, in some ways it is "déjà vu all over again" with the mobile app development world itself split between "native apps" that are much like desktop programs running on the device itself and a mobile web app developed to run on a browser. There are also hybrid apps that combine both approaches.

Native Apps

A native app is one in which the program runs on the device (although it may access remote data). As with desktop programs these tend to have superior performance to a web app, a fact that leads to our recommendation in the last two requirements of the following paragraph.

RMS recommends developing a native app if at least one of the following requirements, in decreasing order of importance, applies:

  • The app is needed for off line use (That is, without an internet connection)
  • The app needs to use device specific hardware (microphone, GPS, camera, etc..)
  • The app needs to be displayed full-screen
  • The application is Graphics intensive
  • High performance is important

  • The last two items are of course questions of degree and if there is flexibility our clients may still wish to develop a mobile web app if other considerations are more important.

    RMS develops native apps for all mainstream mobile devices. Our mobile app developers have expertise in the following areas:

  • Application programming for mobile devices
  • Porting of existing mobile app to another platform
  • Creation of mobile apps as add-on to existing web / desktop apps
  • Click on the links at the bottom of this page for information on specific technologies.
  • Mobile Web Apps

    A Web App is just a web page or a series of them and these days run on HTML5, a version of the same HTML that has powered web pages for more than adecade. This version was developed with the needs of mobile devices in mind. A primary reason to develop your app in this way is simply cost. It is easy to do and will come naturally to any developer already familiar with developing web pages for full size computers.

    By analogy with web programming designed for use on the desktop we can say that another strong reason to choose a web app over a native app is platform independence. (This is generally true but in our experience the code must be tweaked here and there to make the program display properly on, say, a blackberry as well as an iPhone.)

    Low cost of development combined with platform independence! What then are the disadvantages of this approach? One important limitation is imposed by not having access to basic capabilities of the device such as the camera, contacts, calendar, push notifications and the like. (As seen below this can be addressed by the hybrid approach.)

    But we are still stuck with inferior performance as compared to a native app and this is not solved by the hybrid option. In case this makes the web alternative seem too bleak it is important to stress that modern technology advances all the time. Style sheets made with CSS3, developed with mobile devices in mind, as well as with the use of HTML5 help to make the display more competitive in quality with native apps and care taken with the way in which JavaScript is used can make all but the most demanding apps seem responsive enough.

    A Compromise: Hybrid Web Apps

    A hybrid app is one that, like a web app, is developed using web technologies (HTML5, Css, Javascript etc…) but is run on the device by a software container. This "container" is a native app that gives the hybrid app access to the capabilities of the device. These containers (or "wrappers" ) can be easily generated by using software from commercial vendors.

    Thus the Hybrid Web App overcomes some of the limitations of the pure web app and enables the app to receive notifications, make use of calendars and contacts and supports gestures such as the pinch and spread. These are significant advantages that make a web approach more practical. But as of today the buyer should be aware that no browser in a mobile device gives full support to HTML5 and the Hybrid still shares the performance disadvantages of a pure web app. All these issues can be discussed with your RMS programmers when it comes time to develop a new app.

    Summary on what approach to use

    Briefly put, choose to go native if you want high performance, don't mind writing different apps for different operating systems, and can afford it. Choose Web if platform independence is the objective, high performance is not required and you want to get it done fast and cheap. Choose Hybrid if the advantages of the Web approach appeal to you but you need to access the hardware functionality of the device.