Does this site look plain?

This site uses advanced css techniques

I've been using the PostScript imaging language for more than ten years and am quite comfortable with solving problems with this technology. I have grown to "think" in terms of the PostScript stack, which makes hand coding almost second nature.

PostScript Generation

For many years I have been creating PostScript output by hand or by translation, and these are a few of the many projects I've worked on using this fine display language.

My Business Logo
[SJF Logo] The three-red-bricks logo found at the top of all of my web pages is actually my business logo that I created by hand about ten years ago. I'm not terribly graphically inclined, so I wanted something simple that could be easily represented in Encapsulated PostScript. It's turned out to be a great design element for my web site — quite a very happy accident.
PostScript Forms
[IRS Form W-2] A customer in the payroll business prints thousands of Federal Forms W-2 in January of every year, and I have written the PostScript software that their proprietary payroll system uses to print the forms. Their software outputs the per-W2 data in the form of PostScript variables, and the UNIX lp spooler system intercepts this and overlays the overall form structure around it. This has been in use since 1997, and it's worked flawlessly.
The PostScript source code for the 1997 Form W2 is in the file w2-1997-ps.txt, and clicking on the W2 logo above brings up a sample output form (though rendered at lower resolution for web presentation). Each possible fill-in form box has a red overlay that labels what goes there, and it was the programmer's "cheat sheet". Real output always in black only with employee data.

PostScript Interpreter Support

For many years I was responsible for integration and maintenance of the PostScript clone interpreter found in the VSI-FAX UNIX facsimile system. We licensed the excellent PowerPage interpreter from Pipeline Associates (since bought by Electronics for Imaging), and I became proficient in tracking down compatibility problems when customers presented documents that would not image correctly.

In most cases we found that the customer's output was taking liberties with PostScript by relying on undefined behavior or accidents of a particular implementation: we typically were able to find a way to work around these issues in our own code. Now and then I found a real bug in the interpreter, which was always fed back to the vendor.

Porting the software to the AT&T 3B2 platform was quite a task, because char variables were signed by default, and there was no way to disable this as was the case on other platforms. A very strong background in the C langugage made it possible to understand these sign-extensions issues and fix them.

I've also done very substantial work with GhostScript, having written a driver for a color printer using it and porting it to an embedded environment.