Nearly all software applications have been restricted for use by a person who is at the computer where the software is installed with a monitor and keyboard and maybe a mouse until after the year 1994 or so. Then, during the 2000s, new consumer facing software in mobile devices and on the web became major categories of software. Many people now use mobile and web applications exclusively.
Web Applications are Born
The World Wide Web (www) became widely accessible in 1993, when the Mosaic web browser became available. In 1995, web applications became the most popular use of the internet (Maddux, 1997). However, most initial web applications served static documents or pages and were less interactive than they are now. The web server software operated on a computer that was often hundreds or thousands of miles from the user. This is what makes web applications different than personal computer applications or mobile applications.
In 1998, what is considered the first mobile app, Snake, a built-in game on the Nokia 6110 phone become popular (metteo, 2019). Soon after, mobile apps would begin their dominance.
Mobile Apps are Born
Steve Jobs announced the Apple App store that opened in 2008 with 500 apps available to choose from (Strain, 2015). This was significant in a couple of ways. First, it allowed consumers to purchase apps of their choice for their mobile devices for the first time. Second, it triggered a figurative explosion in the number of apps later to be available because the Apple App store welcomed external programmers to create mobile applications for profit. This created a powerful crowdsourcing influence that gave mobile devices a bigger app selection than personal computers.
Programming Languages
Web and Mobile Apps gave rise to new programming languages and software development methods for developing these special apps.
A Web App Problem
A problem was, for the web page to be more interactive, it had to communicate to the web server miles away to receive updates to the webpage in response to user clicks, even for insignificant changes like highlighting selected items. This made the web page's response slow.
Javascript to the Rescue
Javascript was created to fulfill this type of web application need (DeGroat, 2019). HTML is not a programming language but is more of a page format language. With the invention of JavaScript (not related to Java), this programming language could be added to the HTML of the web page. When a JavaScript function was called due to whatever trigger, like a click on an object, the function would execute and perform the change on the web page right in the user's browser, without consulting the server.
A Mobile App Problem
Normally, when programming a normal computer application, the programmer can develop it on the same operating system where it is intended to run. This allows the programmer a full-sized keyboard and screen to type with and also aids with convenient testing of the program. But, who wants to type lots of code with the tiny phone keyboard?
Simulation to the Rescue
Simulation is the answer. On a Windows OS or Mac OS, I can program an iPhone app comfortably, compile it for whichever mobile device, and run it on the simulator. The image of the iPhone with the app shows on the big monitor. I can see how it will look on the iPhone and I can operate the simulated iPhone and app with the mouse. Then I can switch the simulation to an iPad, or to a different-sized iPhone to see how the app fits on each device.
Databases
Databases are used heavily for web applications. It is a rare or overly simple web application that does not. Even blogs need a database to track posts, authors, comments, likes, views, dates, and other things. Web servers may have their database on the same server, a local server in the same data center, or in a remote cloud server.
Mobile App Databases
Most mobile apps also use databases. Some apps have a small database on the mobile device. Most popular apps use a database in a cloud server. Does your mobile app offer purchases in the app? It uses a cloud database. Does your mobile app allow you to compete against or with other players? Then it accesses a cloud database. If your app requires a wireless connection to use then it is using a database in the cloud.
Software Always Needs Hardware
Despite the differences in the various categories of applications, they have similar hardware requirements. They all need at least one CPU, and they all need RAM. They all need some input and output interfaces. They all run on computers. (Modern phones are computers too.)
References
DeGroat, T.J. (2019). The History of JavaScript: Everything You Need to Know. SpringBoard. https://www.springboard.com/blog/data-science/history-of-javascript/.
Maddux, C. D., & Johnson, D. L. (1997). The World Wide Web: History, Cultural Context, and a Manual for Developers of Educational Information-Based Web Sites. Educational Technology, 37(5), 5–12. http://www.jstor.org/stable/44428413.
Matteo.m. (2019). Snake Through the Ages. Nokia. https://community.phones.nokia.com/discussion/44549/snake-through-the-ages.
Strain, M. (2015). 1983 to Today: A History of Mobile Apps. The Guardian. https://www.theguardian.com/media-network/2015/feb/13/history-mobile-apps-future-interactive-timeline.
Comments
Post a Comment