What is a web application?
To truly understand what a web application is (or isn't), you must start by contrasting it with a basic website. A web app can itself be a website, or just part of a website. However, the difference between a web application and typical website is very significant. You're probably familiar with a basic web page. Web pages started out as a static, efficient way to present basic information. Basic web pages are still good at what they do, and for someone who needs a no-frills site to promote a plumbing company or their love for model airplanes, a basic web page is more than adequate.
However, web applications go beyond that, allowing you to interact over the Internet. An example of this would be Google. The Google website itself is simple, but the web application is terribly complex. Ultimately, you view information on Google, but you also interact with Google to search for whatever keywords you'd like. So, web applications provide a way to interact. When you use them, you probably don't even notice you're using a web application, but you're certainly using it to interact.
Facebook is a good example. Facebook does more than display information, it allows users to interact - even with each other. Ebay allows you to browse for items to purchase, on a site where someone used eBay's web application to post their items in the first place. Each of these sites provides a very different service, but all contain a lot of software on the backend.
An example of how complex a web app can be behind the scenes would be one of Geisel Software's sites, DVDCorral.com. DVD Corral is an online DVD library where users can track their DVD collections. On the website, there is a page for each of the nearly a million DVDs in the DVDCorral.com database. We didn't hire a million monkeys to type in all that information for those million pages, so how does this work? Each DVD on the site gets their own page featuring all the information related to that DVD. However, whenever you request that page by clicking on a link or image, the web application code searches through the database, finds the item you need, and populates that single page all the information related to that query. In other words, there are 1 million pages in a single document, but the web application part only brings up what you're looking for at the time.
The analogy of an iceberg works perfectly in the web application model. Only 8 percent of an iceberg is above the surface, while the bulk of the iceberg, 92 percent worth, is underneath water where you can't see it. With web apps, when you visit a website, you won't see it, but there are a few pages worth of HTML that make up each page. With Google, that little white page with a single search bar is most likely backed by millions of lines of code and algorithms for completing your search. Just like Mr. Rogers taught us, it's what's on the inside that counts!
Web application vs. mobile application
Now you're probably asking, how does a web application relate to a mobile application? The backend of a web application can be quite extensive. Imagine a site like eBay and the huge database they have backing all the items available on their site. That database is part of the web application. Now, let's say we're going to create a mobile app for eBay. The mobile app would need the information from the web database, so the web application serves as the database for the mobile app as well.
The mobile app receives its data about items and pricing from the web app, and presents the information on your iPhone or Android device in a mobile-friendly format. So in other words, the web app and the mobile app can interact, but they aren't two different types of the same thing. So, when you surf the Internet today, think about those web apps. Now that you know what web apps are, you'll be surprised at how many sites use them!
Other articles in this section
Machine learning (ML) systems analyze tremendous amounts of data to identify hidden patterns and make predictions based on those patterns. This requires a very high level of parallel processing.
5 Tips for Combatting Developer Burnout!
Do you remember when you first learned to code? It was fun, magical even, and you were obsessed.
Your organization has a new project, and you need help from a custom software development company. Your search returns hundreds of possible candidates and you have no idea where to start.
Brian is a life-long software developer who loves to help others succeed. A frequent source for media outlets, such as BBC, Entrepreneur and Bloomberg, Brian also frequently speaks at universities, conferences and the like. His new book, "Unravelling the Internet of Things" will be available soon on Amazon.com.