YAWPS is the earliest CMS – content management system using html or the web. Webapp adopted the concept and extended to a better configuration system and the concept is worth analysing. It is a good example to provide simple enough understanding to learn the basic structure of any web application.
Any web application is basically separated into a structure which is made up of configuration, organizing, presentation and data managing.
Free mind is the tool I used to analyse YAWPS and Webapp and it is a good free program.
Both CMS starts with index.cgi which is supported by lots of libraries functions such as login or authenticate, getting articles, links, downloads, and/or comments. A separate theme.pl provide webmaster to have the same content but different appearance or presentation. A configuration file control all the modules or functions in terms of where they can be retrieved.
These two CMS are simple enough because they do not use any database system. Simple flat files or text files are being used for all configuration and all different data contents. The theme of the system can easily be configurated by any webmaster. If you know this system well, you can add a lot more functions into it or extend the capabilities of the system as well as modify it to have better security control.
The part that I used most is the authentication. After authentication, I can control who can access which applications or modules that is designed for the specific user. Keeping the theme for each user allows consistency of the website.
The main difference between YAWPS and WEBAPP is the way they dispatch the modules or making calls to other functions. YAWPS calls different modules according to the module program installed in the system. WEBAPP calls different modules using the action parameter. Different modules will be called and integrated into index.cgi as this main webpage is based on the theme.pl designed for the kind of user access the website. Although the ways to implement call and run are different in both system, YAWPS remains the fundamental principle or choice to creating calls in any web application so that you still can use the same way of call like YAWPS to WEBAPP. Just make sure you can keep the theme of the system to present your application with its relevant data.
These two CMS are good learning systems and they are modifiable. A challenge for anyone who can integrate or modify them to use a database system such as MYSQL.