|When I was a boy of fourteen, my father was so ignorant I could hardly stand to have the old man around. But when I got to be twenty-one, I was astonished at how much he had learned in seven years. - Mark Twain|
Designs and Databases . .The new Friends and Partners World Wide Web site, announced on February 4, 1998, represents a dramatic change in how we are generating and maintaining Friends and Partners. Because we know the design and technology used is of interest to a few visitors, we offer the following as an explanation into our motivation for making the changes and to help you better understand how the new system works.
First, a few words about the design.
We have tried to utilize a very simple, non-obtrusive design, our motivation being to keep the pages simple, quick-loading, and as "non-annoying" as possible :-). We try to minimize the number of graphics used; where we do use them we work to ensure that they are re-usable across many pages, and that the ones which are loaded infrequently are of very small size. The result, we hope, will be pages which load quickly and with a minimal number of http connections required. We want the user's experience of browsing F&P to be quick, easy, and 'quiet'.
The new server features small pictures that appear on most of the Friends and Partners pages. The children represented in these pictures function as guides for the server (the pictures drawn on the page will normally correlate with the subject matter of that page). They are meant to add a touch of the friendly spirit which we try to reflect on the F&P pages. These pictures are very small and should generally load very quickly. The selection of a picture for a page is generated at random at the time the page is requested (each page has assigned to it a number of these pictures which are considered appropriate for that page).
Our design reflects our belief that this site is not as much about "Russia" as it is about US, Russian exchange. Of course, much of the content of the server currently deals with Russia (we really need to add more content about the US!) but F&P is created and maintained by friends from Russia, the US, and other countries -- and we hope that its designed appearance will grow to better reflect its multi-cultural roots.
To some we are afraid the appearance of F&P will be too quiet (maybe boring!) - but as long as we meet our objective of providing a quick, easy, comfortable experience for visitors, we will hope that quiet is ok!
We have added in a rather unique feature so that users can change much of the appearance, layout and design of this site - tailoring F&P's appearance to their own preferences. Because the entire site is generated from a database (there is no static html here) it was relatively simple for us to create a capability that we call "personalities." We maintain a separate web accessible database called "personalities" in which we can represent all kinds of information about different personalities. A personality definition includes basic orientation of the page, colors for background, various text components, and even some control over typeface. If you haven't had a chance to explore this personality feature, we hope you will do so. There are links on every page to several "personalities" that we are suggesting at any time. Choosing one of these personalities will change the entire look of the site for the duration of your visit.
Soon, users will be able to design their own personality with the ability to completely tailor the appearance of their site to their own preferences.
We implemented this feature partly because it was simple to do (given the database method of generating the web pages) but, moreso, because preferences vary greatly from individual to individual for what will be most comfortable and attractive.
The entire F&P server is dynamically generated from a series of databases. We are very excited about this new approach of generating F&P, believing it makes the project much more manageable and more scaleable. We should be able to not only do a better job of maintaining the existing site but should be able to offer new services easily -- since maintenance of the site should require much less of our time.
The database system is comprised of about twelve individual database files (originating, interestingly, on a Macintosh server running Claris FileMaker Pro software). We've developed a mechanism for converting this database into a UNIX-based database (for any technical readers, we are using Berkley DB on Sun Sparc Stations) and the web pages are actually generated directly from this very quick database. The reason for the two-platform approach (Macintosh and UNIX) is that the Mac platform gives us a much better environment for data maintenance but also for "changing our mind" about new services and new structure for the overall database system; the unix system gives us speed and flexibility for interfacing with the Web and with our own server software. The key is in the interface between these two systems. We've been working on that for almost one year now.
What does the database allow us to do?
First, with a special "server" program we developed (which interfaces with the database) all requests for pages on Friends and Partners are funneled through the server and the pages dynamically constructed. This gives us opportunity to offer such features as dynamic content (such as random selection of pictures, quotes, different personalities for design and appearance, dynamic selection of news items for a given page), but it also permits us to detect the platform, browser, language, and if Russian language, the Russian character set encoding preferences of the user. We currently handle five classes of browsers (enhanced (Netscape/MIE 3+), text with graphics (Netscape/MIE 2+), Web TV, CyberDog (for some Mac users), and text only. This means that we can offer high end features for our interface (such as tables, colored backgrounds, etc.,) but still offer good service to those using older browsers or a text-only interface.
From the very beginnings of Friends and Partners it has been very important for us that everyone who wishes to visit and participate is able to do so using whatever equipment, software, etc., that is available to them.
Second, the database makes it much easier for us to maintain links to resources all over the Internet dealing with the subject matter of interest to the F&P community. For example, it is very simple for us now to run our entire database through a program which checks the validity of links that we point to. If a given link moves, we can very simply change the address in our database. If the link goes away, we can easily disable reference to that link and effectively make it disappear from the F&P site.
Also, and perhaps more important for our own needs, it makes it very simple for us to add links to new resources on the Internet. The problem we have had since the earliest days of Friends and Partners has been learning of new resources and then having to find on our server where those should be added. It is now very simple for us to add a new record to the database, to "attach" it to the pages where it belongs and even assign a prioritization code if applicable. We then know that the next time that page is requested, the new link will appear appropriately.
It also makes it very simple for us to reorganize the site. If certain pages get too long and need to be broken into separate pages, it is very simple now for us to reorganize.
All of this, of course, is overkill for most sites, but as F&P continues to grow, it becomes more important that we have a manageable system for maintaining, organizing, and changing our site.
The database also permits us to easily accommodate multiple languages. For each record we maintain certain fields in English and Russian (and we could easily add additional languages). When a user requests a page in the Russian language, we simply construct that page using fields with that content. Also, the server software that we have developed allows the user to change the character set encoding for any page request. While we maintain all of our information using the KOI8-R encoding, we can dynamically convert that encoding to any other (including a transliterated encoding for those users without Cyrillic fonts). The combination of the database and the server software makes it possible for us to handle most requests with relative ease.
Finally, the database makes it possible for us to offer a simple but powerful searching mechanism so that users can search across the entire F&P site. Most of us do not wish to browse through long lists but instead use available searching tools. The database makes it possible for us to provide this functionality.
Our ability to randomize certain components of our pages (such as graphics, quotes, news stories, etc.) will hopefully make the F&P pages more dynamic and more interesting. We are particularly interested in utilizing the new 'news' feature by which we can advertise new features of our site, draw attention to important news stories, etc.. We simply add the items to our news database, categorize them appropriately, and then let the server deliver these small items to the user in the area opposite the navigation section of the pages.
One item we've tried to add throughout the Friends and Partners system is a more context-sensitive navigation system. Visitors to F&P will notice the navigation part of their screen changes as they go through the system. The idea is to help the user better find his/her way around what has become a large and complex site -- by giving them certain cues on each page about their current location.
A few final words about some technical details that may be of interest to some . . .
We know it interests some people to know what sort of hardware/software we use. The F&P teams (in Russia and US) are primarily Macintosh users and also very devoted to Sun (Solaris) hardware for providing our services. However, we are learning more about the Windows platform now and are trying to ensure that our services work well on that platform -- it certainly accounts for most of the accesses of the F&P site.
All of the software and tools that we use for our system were either developed in the public domain or have been developed in-house. We do not use any proprietary software products (other than the FileMaker database) because we wish to be able to share our system with F&P sites around the world without concern for site licenses or purchasing commercial software. We believe strongly in the shared and open model of development which has proven so powerful and popular on the Internet and wish to continue using this and contributing where possible.
As mentioned previously, the ultimate home of the database of the F&P system is a powerful Macintosh server running the latest version of the FileMaker Pro software. However, the information from the database system is maintained in a different format, Berkeley DB, on Sun workstations (a Sparc server 10 in Knoxville, a Sparc server 5 in Pushchino). (we are desperately needing to upgrade these servers!) We have developed something like a database manager for Berkeley DB which works with our system and we interface to this with Perl-based software.
Because of the high cost of running Perl scripts for generating each of the F&P pages, we have just developed a "Perl server" (TCP/IP based) which runs continually on our server in Knoxville and Pushchino. The request for "pages" go through a very small and fast (C-based) CGI program which simply connects to the Perl server, sends certain information about the request, and then receives the html to return to the user. We've noticed that this process speeds up the serving of pages to users anywhere from three to twenty times the speed of our previous procedure (which involved "firing off" a Perl CGI script for every page). On average, page requests are satisfied in about 8/100 of a CPU second - slower than standard httpd requests but certainly much faster than perl-based CGI scripts.
Well, we could write lots more about how all the various components of F&P work and about the different software that is used to keep the server functioning but we hope this gives you an idea of the basic mechanics of our server. We also hope that this document has helped you better understand some of the design characteristics (and our motivations) behind the design of Friends and Partners.
Please don't hesitate to let us know if you have any questions, comments, or suggestions. Thank you for your interest in Friends and Partners.
write to us
with your comments and suggestions.