Baldwin Computer Science

  1. WEB hosting
  2. Web design and Implementation
  3. Software development
  4. Linux Distributions
  5. Complete Systems
  1. Pay Bill
  2. Help Desk
WEB pages
  1. Bill Baldwin
  2. W. Allan Baldwin
  1. About us
  2. History
  3. Past Projects
  4. Resume
  5. Careers
  6. Contact Us

WEB design

As Baldwin Computer Science has hosted many, and designed and developed most of them, expertise in the area of WEB development for Apache in a Linux environment.

My first sites were not really more than hobby sites, and were very ad hoc. The primary example of a site from this era is my personal site,

My early sites, such as were developed using frames, as that was the technology I saw at the time. I quickly saw a problem. First, there was always talk of browsers the don't support frames, although I didn't see any. Second, once a page starts to load, it doesn't take that much more time to load the entire page as one frame. Also, the formatting of the frame cuts the screen real estate, which makes viewing the frame difficult. Also, I noticed that there are very few sites, at least now, that use frames, probably for the same reasons I don't any more.

This does not mean that frames don't have their place. I've seen frames used to communicate between Javascript and a server. I've seen some sites that use frames to replace the WEB site with some foreign site, for example,, which will at times direct the user to a business WEB site, with a frame reminding the user that they came to the site through careerbuilder.

Then, I was asked to do a business site. While I had some input into the design of this site, my primary purpose was to implement someone else's design. They did not want to use cookies to mark the WEB sites visited, so I developed some technology which would allow me to keep track of the user. This involved adding a "?" and a 64 bit number after the URL. The number pointed to a WEB page, and a history that was kept on the server disk.

I developed several WEB site using this technology. The original site is not available, as the creator decided not to go through with the WEB commerce that the site called for. One of these sites are, for example, The site is viewed as a finite state engine. Each time the user clicks a link, this is a transition from one state to the next.

The problems with this approach is, first, the disk has a tendency to collect the trace of old sessions. This is solved by running a disk cleanup daemon. Check every five minutes, and free any site that hasn't had activity in the last hour. A second problem is that it is difficult to tell what's going on. That is, the URL for one page looks so much like the URL for another that I cannot tell which is which. Thirdly, since there is (sometimes) a trace of the activity on the disk, indicated in the URL, it is somewhat dangerous to bookmark the pages. That is, a page may be bookmarked, and it will work for a few minutes, but if the user waits, after a time the bookmark will return a bad state error.

Later, I decided to re-due my photo album. The problem was that the thumbnails were formatted with a table, and therefore at a fixed width. Sometimes the browser window might be much larger than this, sometimes much smaller. Thus, to see all the photos, one needed to scroll both horizontally and vertically.

For several years I thought about adding a CGI program which would process the input, and regenerate the tables to whatever width the browser happens to be. In addition, I added the condition that the URL's of the photos had to remain the same, as someone may have set a bookmark or a link at any given page. This technology did not change the formatting methods used; the photos were still formatted with tables, but now the tables were regenerated with each page access.

I have reason to believe there might be problems with running this on some browsers. Not all browsers, particularly Internet Explorer, follow the standards. I might fix this is someone complains, but not yet.

Finally, this site represents the latest technology I've used. I had seen references to people denouncing the use of tables for formatting, so I decide to try something different. Therefore, I wanted to try to do the formatting without using tables.

I have been impressed that the use of Cascading Style Sheets (CSS) brings HTML back to its roots as a markup language. That is, a markup language allows the user to mark the beginning and ending points of the various parts of the document, then the viewer can choose to display the page however the viewer decides to display the items.

(I should point out that the usage of HTML changed this. That is, when it was used to display documents for colleges and university [its original purpose] it really didn't make any difference where line break were, what fonts were used, etc. However, when Internet began being used as a business tool, businesses wanted their WEB site to look the same to every user. Therefore, people began using tables to format data rather than to mark tabular data.)

Year ago, in the early 1990's, there was an organization, W3C, which develops the standards for protocols for the World Wide Web. This is where the standard for HTML, XML, CSS, etc. are discussed by professionals (anyone can join the discussion) and the standards are arrived at.

The problem is that some companies, in particular, Microsoft, chooses to ignore the standards. (Some browser are just not up to date, but with Microsoft there is little doubt but what the standards are ignored.) This is common of monopolies. IBM did this in the early 1970's when they ignored the ASCII character encoding standard in favor of their own EBCDIC encoding.

Therefore, I developed this WEB site using firefox 3.0, which conforms to the latest standards. As soon as I decided to show it to someone else, there were problems because they used firefox 2.0 and Internet Explorer. Firefox 2.0 doesn't support the latest standard, and Internet Explorer doesn't support any standard. Therefore, I had to re-due the WEB site for old browsers, for Internet Explorer, and for browsers that don't support graphics. All WEB pages on this site work with firefox 3.0, but might not work with firefox 2.0 and Internet Explorer.

This required a CGI program. Actually, a very short one which takes a look at the browser as sends the appropriate information to the browser. I had intended to keep some statistics, so I added a section to the CGI program which keeps the statistics.

This technology looks nice, but there is a problem because of having to have four version of some of the pages. (Fortunately, when only documents are displayed, each of the browsers uses the same technology, so I can just have one version of most pages.)

I also have to look forward to the future. I see many WEB sets now that have some form of motion pictures on them. I need to look forward to this. I see one problem in that there are still some people who have dial-up lines. These people will never be able to receive real time video on a timely basis. Therefore, it would be necessary to test the speed of the line, and supply the video only if the line is fast enough to support it.

©2008, Baldwin Computer Science

About us | Legal | Careers | Contact us |  Home4