Is app programming a sustainable career?
One must define what is meant by the term “app programming” before one can address the question of whether app programming is a sustainable career. For some, app programming is the programming of applications for smartphones or the Internet, as opposed to desktop computers. For others, an app is platform independent where a program is operating system (OS) specific. The issue is further complicated when considering that, to one person, “app” may be short for application, while to another, it may mean applet.
Programs and applications
When asked to explain the difference between a program and an application, the general consensus among IT specialists on LinkedIn® appears to be that “a program is any executable code that performs a function,” whereas “an application is a program that performs a function for the end user.”
Buzzle.com® suggests that application development is one of the three main branches of computer programming, with the other two being system programming and software testing. “Game designing, computer animation, website designing, etc. belong to the main category of application development,” it says, as opposed to system programming which is “aimed at bettering the internal code and the functioning of the operating system.”
Applications and applets
The Imperial College London defines an application as “a stand-alone program, normally launched from the command line, and which has unrestricted access to the host system,” in contrast to an applet, which “is run in the context of an applet viewer or web browser,” has limited access to the host system and “can normally not read or write files on the host system.”
Penn State University further states that an applet is subject to security restrictions that do not constrain applications, such as the inability to load or run programs on the user’s system, and being tied to communication with the server from which the applet was downloaded.
Apps in practice
In practice, what most people think of as an app is a small, task-specific program that runs either in a Web browser or on a mobile device, as in the case of iPhone® apps. Based on these definitions, as long as users have unmet needs and developers can think of new ways to use the variety of electronic devices on the market, app programming will have a future.
The proliferation of app stores — from the iPhone to the Mac App Store℠, the BlackBerry App World™, Ovi Store®, Google’s Android™ Market for mobiles and App Engine for Web applications, Microsoft’s Windows® Marketplace for Mobile and Samsung’s™ Application Store—has made entry into the marketplace easier for individual programmers and small independent software companies.
And so the question becomes not so much whether app programming is a sustainable career, but in which language, within which framework and for which platforms a developer chooses to create code and applications. Daryl Taft, in an article for eWeek.com (“Application Development: Top 10 Programming Languages to Keep You Employed”), advises budding programmers who are considering language selection to learn Java™, C#, C++, JavaScript, Visual Basic, PHP, Objective-C, Perl, Python or Ruby, with this cautionary advice: “However, picking the language that is right for you also has as much to do with what kind of development you want to do and who you might want to work for as it does with how much money you want to earn.”
All trademarks, registered trademarks, product names and company names or logos mentioned herein are the property of their respective owners. The use or display of any third party trademark, product name, company name or logo does not imply endorsement, sponsorship, affiliation or recommendation.



