Future Applications
The following text introduces the tutorialpro.org version of future web applications.
Executables Will Die, JavaScript Will Survive
Compiled executables (like those in C or Java) cannot run on different hardware.
Executables (EXE files, ActiveX and COM objects, DLL files) are components that prevent the development of applications running on the internet.
Future applications will not be able to use, or rely on, components installed on client computers.
Our recommendation:
Use only HTML, CSS, and JavaScript to write your future applications.
Ensure your future applications can run in any web browser.
Web Applications Will Become Internet Services
Past applications were large, created for specific purposes. Most of them will soon die because they cannot provide services that adapt to changing needs.
Applications should be flexible, universal, and able to adapt well to changing needs without being broken.
Applications should be scalable, supporting millions of requests per day.
Applications should be able to spread and move between multiple servers without being broken.
Applications should be able to work with other applications.
Applications should not contain a lot of code. Applications should be broken down into smaller services for easy creation and maintenance.
Applications are a series of internet services that return data to submitted internet requests.
Applications should request services through standard internet protocols without maintaining a permanent connection to the server.
Our recommendation:
Use an internet based on SOA (Service Oriented Architecture) to write your future applications.
Make your application services more universal, flexible, and capable of serving different types of requests.
Future Applications Will Be Easy to Create and Edit
Client and server will exchange data in an easy-to-understand manner.
Applications will not be coded if avoidable.
Applications will be created and modified by editing models rather than code.
Application descriptions will be human-readable.
Application descriptions will be self-descriptive.
Applications will be written by users, not programmers.
Our recommendation:
Use human-readable text files to describe services and provide services by executing these descriptions.
Use text files (like XML files) to describe applications.
Use text files (like XML files) for data exchange.
Use HTML, CSS, and JavaScript to execute applications.
Three Small Web Developers...
A long time ago, there were three small web developers creating a new web site.
- The first web developer used <AppML>.
- The second web developer used his favorite server-side programming language.
- The third used a professional enterprise web development framework.
The first web developer completed a demo in two days. After collaborating with users, a preliminary prototype was finished in a week. After two weeks of testing, a smart, fast, and easy-to-use website was ready for release.
Six months later, the second web developer was ready with his website. But the WWW had changed its demands, so his website was not satisfactory. This web developer could not make significant changes to his project because it contained too much code. So, he started development of version 2.
The third web developer never successfully completed his work. That professional web development framework was difficult to use, hard to understand, and nearly impossible to test.