- Related Sites
Click here for info on other work,
awards received and my resume.
Some of the software below is now obsolete as new technologies have emerged. Some of the links below no longer work. I will update this page in the future.
| Cofax - Content Management and Publishing for News Media Sites
Cofax is a web-based text and multimedia publication system. It was designed to simplify the presentation of newspapers on the Web and to expedite real-time Web publication. It was designed originally at Knight Ridder to serve the content for several of its newspapers, including its largest, the Philadelphia Inquirer and Philadelphia Daily News. Cofax was the tool it used to manage and build numerous web sites across its network for two years. Cofax source code and technologies continue to be an integral part of KR Digitals's current SDP content management system. Currently, Cofax is used across the world as an open source, scalable and powerful content management solution provided by numerous independent solution providers. Click here for the Cofax web site.
|FolderWatcher runs as as a Unix Daemon or Windows NT service and watches a specified folder for new incoming files or folders. As new files or folders appear inside the folder, it uses dynamically loaded handler classes to take action on those files and folders. This is often used to create ftp drop folders where whenever new files come in, they are given to a processing program. This can also be used for content replication across mirrorred servers. When one or more files in a watched folder change, the handler class called can automatically copy them over to the mirror servers. (Source code and instructions on installing it as a WinNT service provided.)|
|SendMail Java Class (can also be used as an ASP Server Object to send mail from .ASP pages.) This object is used to send mail from Java programs. It is a fast, lightweight class, ideal for web applications. (download precompiled class files & view installation instructions on how to install this as an ASP server object) (view source tryit.java - a program to test the class) (view source SendMail.java) (view source SendMailCouldNotDeliverException.java) (view source SendMailResponseException.java) (view javadoc generated for the class & the index) (view source tryit.asp a VBScript ASP that uses this as a ASP component to send mail from a web page.)|
| include_url.java This program
overcomes a limitation of the .shtml
|Date_Time.pm Object oriented Date & Time functions package for Perl 5.002 and above. (view source test_Date_Time that shows hos to use it.) (run test_Date_Time as a CGI) 1996/May/28|
| Numbers as Words Object
oriented Perl package
|Visual J++ Macros to Comment-Out & Uncomment
Blocks of Java Code With these macros written for MS Visual Studio '97, you can
select a block of Java, Visual Basic, C++, or HTML code and automatically comment it out.
Then, you can select code again, and choose uncomment to remove the comment marks. Since
Java does not support conditional compilation, this is quite useful when developing Java
programs. For Java files, these macros place (or remove) a
| Make your Unix based web server case
insensitive about URLs like NT Many sites use a mixture of naming conventions
especially when many people work on the site. Also, when people upload files to the unix
servers from PCs or MACs, the case may vary depending on program used to transfer, it's
configuration, and the file name itself. Also, if your unix server shares a disk with an
NT server using Samba or NFS, and you want to make it searchable using MS Index Server or
NT based search program, this ensures that URLs will always work. It makes it easier for
you to give out your urls without saying "with an uppercase P and a lowercase
u". If NT web servers do not care about case in URLs, why should unix ? (view source make-dbm-of-urls in Perl) (view source not_found.cgi in Perl) This should be implemented as
server API for efficiency. Also, you will need to edit these programs to suit folder names
on your system.
Also, note the smart "not found" error handler page. When a page is not found on your server, it displays a message depending on how the was referred to the page. If you had a bad link, it says to. If someone else had a bad link, it asks you to contact them, not you. If they came from a bookmark or typed it in, then it tells them to check. 1996/Sep/22
| Plus/Minus or Expand/Collapse demo
|Find out what web server software a web site is running. (view source wserver.cgi) 1996/May|
|Introduction to ASP A simple server-side VBScript demo using Active Server Pages (.asp) I wrote this as a demonstration and introductory tutorial to ASP a few days after Microsoft announced this technology. (run Random Colors) (source code included in page)|
|MS Internet Explorer Favorites on a web page This is useful when I'm in another office in the building from where (for security) I don't allow connections to my workstation. So I point to my departmental web server which shows me my MSIE bookmarks. (view source favorites.pl)|
|Image Width & Height Determination Functions
gifsize by me and jpgsize by Stuart Curtis Lathrop are Perl scripts to return an img src tag containing the width and height of a gif image. The subroutine is part of a package that is used by my other programs to automatically include gif sizes in the automatically posted newspapers, rotating advertisements from the ad server, etc. 1994/Oct
|Splits a big file into smaller files This is a useful Perl script when you need to transport a large file to another location and you don't know what tools or operating systems you will have available at the other end. Also, it is useful to transport something in smaller pieces over a slow modem connection that often gets disconnected. (view split.pl source and documentaion) 1994/Aug|
| Advertisement Click Through and Logging
A Perl script to log each click on an advertisement on a page. The logs are later analysed by Ad-Master to find the click/view ratio for a page. (view source go-to-ad) Original: 1995/Dec. Updated: 1996/Jun
| Ad Rotation
Note: This system is now on its way out and is being replaced by a SQL server based ad management system.
This (old system) can be used in any .shtml or .asp page. The source code of the rotate_ads programs can be easily incorporated into your cgi scripts and server APIs so that they can share the the ad rotation system with the .shtml/.asp pages.
.shtml/.asp syntax for rotating one ad picked from .data file placed in folders folder1, folder2, folder3 and folder4 (each folder contains 1 .data file):
| Netscape Communications
Technical Support Note 20021
When someone points their web browser to a directory on your server that does not have an index file, the person sees a list of files in that directory. The Netscape Communications and Commerce Servers (upto release 1.13) did not have an inbuilt feature to customize this. This program written for Netscape made it possible. You can extend this to specify which domain gets to see what type of files in your directories. (view source index.cgi) (read reply from Netscape Technical Support) (local copy of the note) 1996/Feb
| The first solution to
multiple default documents with Microsoft IIS This was a common request from many
ISPs and users who wanted to migrate sites from Unix to NT and wanted to have different
default documents for different clients on the same physical server. For a long time, this
program was the only solution available and was listed on the ASP Developers ASP and IIS
Here is a program to enable your MicroSoft Internet Information Server to recognise more than one default document. For example, it can look for index.html first, if it does not find that in the directory, it looks for default.htm, if even that is not found, it can look for an index.shtml server parsed document and so on. This was accomplished using Server-Side VBScript .ASP program. I was writing an ISAPI version, but the beta version of Microsoft's upcoming IIS 4.0 has this built in. (view source default-index.asp)
| toHex.java A
function in Java to convert integers (type