The Code Server could determine what sort of information its clients required based on a set of rules they supplied. These could be very diverse - for example:
VERSION:
- certain users might want a specific version of
a program, as opposed to the latest update
- users could enable the 'professional version'
rule by paying money
DEVELOPER:
- a certain software developer could be selected
for (or against!)
HARDWARE:
- display adapter
- hard disk size
- amount of RAM
- speed of computer
SOFTWARE:
- certain programs with known conflicts might be
avoided
- the CS would know which OS to supply modules for
LANGUAGE
- could have different modules for different languages
- if the French and English versions were wanted,
only the modules not common to both would be extra downloads
These rules would be saved by the Code Server, and the rules from various clients would be compiled to create a new set of rules that the Code Server would use when asking other Code Servers for modules. If a Code Server had requests for 20 different versions of the same module, it might ask another CS for an intermediate/original source/encrypted/parse tree form of that module, which could then be compiled/interpreted to distribute to its clients.
The Code Server could also make use of the fuzzy logic employed by all the major search engines of today, essentially mapping modules to URL's. This may help to recover some of the huge investment in search technology.
Email - Main - Code Server Overview - Network Implementation - Windows Implementation - FAQ - Glossary