What is a Web Application?

Web applications are widely used, however, I think most of us do not recognize them even when we are using them.

A web application runs in a web browser. It is just like a program that runs on your computer or an app that runs on your phone. The difference is a web app runs in a browser so there is nothing to install, just point your browser to the web application and you are off and running.

There are several types of web applications. The nice thing about a web application is all you need is a modern browser and the address of the app and you are off and running. 

I ‘ll explain what a web application is, what are the advantages and disadvantages, and what is required to build and run a browser-based application. I will also cover who creates a browser-based application.

More Information On Web Apps

A web application is a software package that was created to perform a task or a group of tasks for an Internet user. This is an overly simplistic and broad definition.

When I think of a web application I think of a banking website. You are able to log in and manage your banking accounts, apply for loans, etc. Another example might be purchasing tickets for a concert using a browser-based application – a website that sells tickets, such as Ticketmaster.

Types of Web Applications

  • Applications that help us do things – When I think of web applications that help me do something, the first thing that comes to mind is a mortgage calculator like the one : Online Mortgage Calculator [martasset.com/mortgage/mortgage-calculator]. Google docs is an example of a suite of applications that help us do things such as create text documents or spreadsheets.
  • Applications that aid us in doing business – Registering for college online is a web app that helps us with a business transaction. The banking example I mentioned above is another example.
  • Applications that help us run our businesses – Recently I spoke with the owner of a million-dollar business. He was using a PHP web application to run his business. The application was run from a server that was public-facing so it was accessible from inside the business and outside. Great concept.

What Goes Into Creating a Web Application

This part gets a little technical, it’s okay if you do not understand some of this. In a nutshell, an Internet programmer creates browser-based applications.

In more detail, an Internet programmer such as a PHP programmer creates web applications. He or she would use a JavaScript library such as jQuery, to create Ajax routines to make the web application interactive. Add to this some Cascading Style Sheets (CSS) to make the application mobile responsive and it will run on any device that has a modern browser. The application will also need a database and a hosting platform.

A web app can be as interactive as a computer or phone application.

Multiple Layers of Technology

  • HTML – This is the bone structure of each web page. HTML is the foundation or starting point.
  • CSS – Cascading Style Sheets is what gives your website it’s look and style. Think design – things like defining color, location, font, etc.
  • JavaScript – JavaScript gives the web app its interactivity. JavaScript runs in the web browser. Each web browser has it’s own JavaScript interpreter. Since each browser uses a slightly different interpreter, JavaScript is quirky. To resolve this issue a number of JavaScript libraries have been created.
  • Server-side programming language – There is a number of programming languages that are in use today. I am a freelance PHP developer so I use PHP. There are others such as ASP.NET (C# or Visual Basic), Java, Python, and Ruby. 
  • Data engine – MySql is very mature, is very feature-rich, and is the most widely used data engine on the Web. Microsoft has its’ data engines, however, for web work, I like to stick with MySql.
  • Linux – Is very popular and is used on desktop computers as well as on web servers. Linux is the most popular web server operating system. Microsoft has web servers also. For web work, I like to stick with Linux web servers.

For building browser-based applications I like to use Open Source products. That is HTML, CSS, JavaScript, PHP, MySql, Linux, and Apache or NGINX.

Private Intranet or Public Internet

Some browser-based applications are run on a private network that is called an Intranet. These networks are not reachable from the outside or what they call non-routable – they are private.

The Internet itself is routable. Some of these apps are hosted on the Internet which means they are accessible by everyone on the internet.

Each configuration has its pros and cons.

The Internet is a hostile place. If there is no need to make your web application accessible via the Internet, then running it on a private network would make more sense.

As businesses increasingly allow their workers to work remotely, making their application public is probably worth the risk.

I recommend you consider which configuration you need before launching your web application.

What are the Advantages

The main advantage is the browser-based application runs in a browser and therefore does not need to be installed. A phone app needs to be installed as does the software that runs on your computer.

For example, say you work for a company that has 600 employees and each has a Windows computer that they use daily. In the old days, we would build an application that would require it to be installed on every computer. Installation is difficult and time-consuming.

And this is a reoccurring process. Periodically, those desktop applications will require updates that will need to be installed on each computer as well.

In contrast to a computer or phone application, the browser-based application does not require installation. It runs in a browser that is already installed on your device. All modern devices have a browser.

To utilize the web app, all you need to do is point your browser to the web application. Simple!

What Are The Disadvantages

I cannot think of any disadvantage to building and running web apps. There are a couple of areas of concern and one is security. The developers need to be security conscious when creating the application to ensure it does not get hacked, especially if it is publicly facing.

If I were to state a disadvantage that would be building web applications requires an extensive skill set given the layers of technology that must come together when building and running a web app.

I think the benefits of utilizing a web application far outweigh the disadvantages.

What is the Difference Between a Website and Web Application?

The main difference is a web application is interactive and helps one do things. A website, on the other hand, is a collection of content.

I keep bring up your bank’s browser-based application that helps you bank online. This is a classic web application.

The website you are currently on is a website. This website is a collection of articles (content).

Conclusion

Web applications run in a browser making them available to any device that runs a modern web browser. A web server is needed to run a web app. A web programmer is the one who creates and upgrades the browser-based application. These applications can run on a private intranet or the public Internet. The advantage of a browser-based application is it does not need to be installed on every device that will be running it and there are no upgrades to be installed on your device either.

The only concern I have when it comes to web apps is security. The Internet is a hostile place.