Monolithic Web Pages

By Xah Lee. Date:

[The following is a message posted to comp.lang.lisp newsgroup as a feedback to a Lisp Implementation Article. This post discuss some bad aspects of long, monolithic web pages.]

On 2007-12-20, Daniel Weinreb wrote:

I have posted Version 3 of “Common Lisp Implementations: A Survey”. GCL (Gnu Common Lisp) is now included. There have also been many small corrections. Thanks to everyone who submitted corrections and comments. The paper is at: (Common Lisp Implementations: A Survey)

Hi Daniel,

Here's my little feedback:

★ Break the pages please!

For example, each CL implementation would be a h2 heading with links to its own page.

This will make reading much easier. For example, readers might want to compare 2 or more implementations by looking at your writings of them in parallel. Also, a single monolithic page is really a pain to scroll and getting a general feelings of the content.

Breaking pages will also help search engines (and readers) locate your site. For example, a monolithic page as you have… people might arrive by searching for Common Lisp Implementations. However, if you break it down, each implementation on a page, and a page on recommendation about why people should use lisp, then search engines will direct people to those particular pages depending on what they searched.

A a geek, you might think breaking the page is a pain, since monolithic is easier to maintain, search, print. Breaking the page will mean multiple pages, maintaining links, etc. But trust me, it's worth the effort if you care about your readers.

try reading this page: Tetris AI, by Colin Fahey, at

and see if you don't find monolithic page a pain when reading other's.

Monolithic page also tends to drop readers. i.e. when i read a page that's looong, i tend to skim and abort. If you have each on a page, people are able to choose to read sections of interest to them. (there is also a psychological factor going on here. Notice how your junk postal mail's advertisements always come in many separate colorful pamphlets and small papers, each sometimes just have one sentence? Because if a advertisement comes in a gloriously printed simple booklet, people see it and throws it away right away. But if each page comes as a page or notecard, it's slower to discard, and people tends to exam each before doing so.)

I used to have monolithic pages, but decided to change all few years ago.

★ Separate the non-main topics into their own page.

Of my writings over the past 7 or so years for my website, i find that people like pages to be focused. For example, i have a java tutorial. I used to mix up teaching with ranting. No, people don't like that. Not necessarily because they don't find the teaching good, nor because they find the ranting bad. But because of the unfocused or dual-purpose nature, it's harder to categorize it or make a impression. Similarly for my emacs pages. I made it now so that pages tend to be very focused on a particular technical topic, or if i want to rant or have writings on personal, or social subjects related to emacs, i put those each on a page by itself (and tries to focus on a particular subject as much as possible, with full examples, scenarios, etc.)

Basically, about 7 years writing on my website i find that, putting page into focused single topic is very important to get people to link/read it.

In this regard, i feel it is better to completely drop the lisp advocacy sections (the Paper,Success Stories, Textbooks, Resources, Beauty), or move them into a page dedicated to lisp advocacy.

★ Lastly, personally i'd prefer the lines be wrapped automatically at 70 char or so. Arguably, any reader can resize her window. But that's a extra step. Besides, these days people usually have lots of tabs. Resizing one into narrow strip means screwing up all others.

you can do this by using the following css code at top inside the head section, or many other ways:

<style type="text/css">p {width:70ex}</style>

Thanks. Great survey.