Home -> Consulting
Mi Jobs
C CGI libraries
Astro Images
Astro Links
Offsite Links
Project Blue Book SETI

Mendelssohn Club
Maintained by suitti@uitti.net, Stephen Uitti
Stephen provides consulting services to buisinesses and organizations. Services include Web Master, Apache installation and configuration, Web applications development, Web applications integration, Web design, Web performance tuning, and Web site cleanup. Reasonable rates, quick response. On site visits for the Detroit Michigan vicinity and beyond. Extensive knowledge of Unix servers, networking, and RDBMS systems. Can provide integration with most non-Unix systems. In the (unlikely) event that I don't know the answer, I know someone who does!

Send me email, or call (313) 389-5609.

Web Master

I provide Web Master services for Project Blue Book, a non profit SETI@Home club. This site features data derived daily from user statistics data published for clubs such as Project Blue Book. Data is added to a database, and historic data is charted. Even for sites without appliations ability, new content can be delivered daily giving a dynamic feel to a site.

Apache installation and configuration

I like to install the
Apache Web Server from source, rather than binary distribution. For some platforms such as Linux, one can use compiler options for the specific machine(s) to be used. A binary installation is likely compiled for the 80386 so that any x86 processor will run it. Further, I like to compile in static support for the modules that will be used all the time, leaving modules that are not currently in use as dynamically loadable modules. For some platforms, this yields a 5% improvement in performance. For some platforms, such as AIX, Sun SPARC, or Tru64, the native compiler can out perform the open source gcc C compiler.

Recently, Norton Healthcare made use of my installation services. Included in the plan were four sessions of overview for the permanant staff. Also, The Webalizer was installed for low overhead, quick glance summary statistics. A simple cron script ensures that the generated web pages are up to date for each server.

Web Applications Development

Numerous web based applications have been developed. Many for corportate intranet web servers. These have been implemented in C, Perl, sh, and Java, with Apache and Netscape Suitespot servers. Some applications operated under Apache and Netscape simultaneously. Some applications required SSL security. Many emited pages with embedded Javascript. Some applications were not CGI applications in themselves, but rather were called by server side include scripts. This last option allows a web designer considerable freedom in crafting a web site while accessing dynamic data easily.

One simple database backed application, keeps track of potato chips consumed at the office. It provides data entry, correction, and searching. Sounds frivolous? It is. It was written as a demo for a C language CGI library, soon to be released publicly. The library supports Oracle, Postgres, and msql, along with simple data password access to an ndbm or gdbm database.

Web Applications Integration

Why reinvent the wheel? Why buy a commercial product when one can get high grade applications for free or cheap via open source software? My customers loved The Webalizer. They still use Perlfect Search. There are many, many such applications available, covering most of the tasks that many sites need. In the old days, companies would required that vendors put the source code to their proprietary product in escrow, so that if the vendor closes up shop, the customer would not be left out in the cold. With open source, you have the source. You can cut your own CD archive. And, there are hundreds of thousands of people like myself who will support it, upgrade it, enhance it, integrated it, or do whatever it is you need.

Web Design

Most people access the net from home via fairly slow dialup. Often, 56K modems deliver less than 2,000 bytes per second. Therfore, my bias is towards web sites whose pages are small, load quickly, and display quickly.

I've used Dreamweaver, MS Front Page, and even converted word processor documents and spread sheets as HTML. Though these techniques can produce pages that almost do what you intend very quickly, they tend to produce huge pages that require long downloads and often considerable browser CPU time for display. Therefore, most of my web pages are created with a simple text editor, such as Emacs, notepad, or vi.

Oh, yes, I use meta tags when appropriate, so that search engines can be used to find content.

Web Performance Tuning

Everyone has access to resources to check web pages easily. I have the discipline to use them. I look for five stars. There are also simple tools like the Apache Benchmarking Tool (ab) that comes with an Apache source distribution. Simple tools like this produce the important answers quickly. For internet pages and some applications, ZDNet provides quick statistics.

Web Site Cleanup

Web servers and browsers provide excellent means to provide access to up date data and interactive applications. Just copy a file to the server and it's published. What could be easier?

For starters, without discipline, a web site quickly becomes disorganized and unmaintainable. Obsolete files clutter the web server and serve as a distraction from the task at hand. Worse, on site search engines may provide unintended access to incorrect, obsolete, or proprietary data. Automated tools provide the ability to identify unused and orphaned files. Lists of such files can be examined and the tree can be pruned.

Many graphics programs produce images that take more space than they need to. In these days of cheap disk space, one is tempted to say, "Who cares?". But these images take longer to download, and reduce the effective speed of your web site. Simple open source tools have been shown to reduce Photoshop and Paint Shop GIF images by an average of over 30% - without changing a single pixel. Why? These products do not seem to optimize the color palette very efficiently. Images that have only 16 distinct colors can be encoded using a color lookup table with just 16 entries, and each pixel can then be represented with just 4 bits. The GIF format will then happily encode two pixels per byte, instead of one byte per pixel. The LZW compression then makes them smaller still. My work at one company involved 1,204 images. New images were, on average, 69.6% of the original size, for a savings of 534,990 bytes. One overnight script run was required.

Sure, it's time to move to PNG images. Tests with many images show that PNG's compression is better, even after the above optimization. GIF supports images with up to only 256 colors. PNG supports 24 bit color images with lossless compression. Smaller, faster, cheaper, better! Jpeg is great for 24 bit color photos where a small amount of compression loss still provides acceptable visual performance.