Difference between Website and Web Application

This is totally personal and subjective, but let's say that a website is defined by its content, while a web application is defined by its interaction with the user. That is, a website can plausibly consist of a static content repository that's dealt out to all visitors, while a web application depends on interaction and requires programmatic user input and data processing.

For example, a news site would be a "website", but a spreadsheet or a collaborative calendar would be web "applications". The news site shows essentially the same information to all visitors, while the calendar processes individual data.

Practically, most websites with quickly changing content will also rely on a sophisticated programmatic (and/or database) backend, but at least in principle they're only defined by their output. The web application on the other hand is essentially a program that runs remotely, and it depends fundamentally on a processing and a data storage backend.

What is software?

The main component of an information system is software. Simply put: Software is the set of instructions that tell the hardware what to do. Software is created through the process of programming (we will cover the creation of software in more detail in chapter 10). Without software, the hardware would not be functional.

Application software is, essentially, software that allows the user to accomplish some goal or purpose. For example, if you have to write a paper, you might use the application-software program Microsoft Word. If you want to listen to music, you might use iTunes. To surf the web, you might use Internet Explorer or Firefox. Even a computer game could be considered application software.

Languages with different paradigm

"Structured Programming": C, maybe Fortran if you're going to work with numerics

Generic Programming & OO: C++

Script Language: Python, Ruby or Perl; Matlab if you want numerics

Heavy Object Oriented with VM: C#, Java or Smalltalk

Functional Programming: Ocaml, Haskell, Scala

Machine Programming: i686 Assembly

Logic Declarative Programming: Prolog

Database Querying Language: SQL