We've been writing software to streamline our work life since we sat down at a keyboard. That led to some serious business applications in C before we got into text and image processing tools. But these days we're writing Web applications with MySQL databases. Here's a list representing a few of the applications we've built.
XBOOK -- Our venerable checkbook program with income tax reports recast as a PHP application using MySQL tables. It was first written in dBASE II, ported to C as a DECUS public domain application, modified to run under PC-DOS and finally converted to the current PHP version. See XBOOK.
My Library Catalog -- A book catalog application using PHP as the front end to a MySQL database with various reports and search functions. See My Library Catalog.
Ceelo -- A one-page PHP application (like our Beebe Machine for procrastinators) that lets you play cee-lo the dice game. We explained the whole thing in an article for Photo Corners. Or you can just play Ceelo.
Betsy -- A Perl application to read vendor feeds and maintain a MySQL database of product information while creating HTML fragments to include on product pages.
Magoo -- An HTML front-end providing various arguments to a Perl application that processes a directory of images into several sizes of thumbnails, building carrier pages for each of them and index pages for all of them.
Picture of the Day -- The Photo of the Day application includes a set of Perl scripts to handle entry, display, judging and maintenance for a photo contest with daily and monthly winners.
Groceries -- This is an assisted-shopping application designed for someone who is homebound and relies on a friend or relative to do their grocery shopping for them. An online shopping form in big type can be filled in on a mobile phone as the person making the order goes through the pantry just as easily as if they were sitting at a computer. It sends a formatted list by email of only the selected items to both the designated shopper and the person making the order. The designated shopper also receives a text message alerting them that an order has been placed so last minute additions are easy to manage even at the store.
Bookmark Buttons -- This HTML/CSS solution turns the small text of bookmark lists into large, colorful, animated buttons that make it easy for the visually-impaired to find what they're looking for. No more scrolling and sliding and slipping off long lists of small words. Just hit your spot.
We've written a number of utilities (some of them just magical one-liners to put out fires) for Unix systems but we've also written full-blown applications that run as crons to maintain data for Web sites. Where human input is desired, we write Web applications, as above. And we're happy to craft solutions on the command line in Terminal but that isn't reflected here.
Betsy -- A Perl program to read various vendor feeds, update MySQL databases wit the data and create Web page fragments from it as well.
Barney -- A command line Perl tool to create an XML feed of camera reviews from a MySQL database following the Product Review Feed Specification available from Google. Uses a shell script.
Bang -- A Perl application to help analyze the vendor feed data.
Bonami -- A Perl maintenance script to delete files and directories of a certain age.
Image Caching Utilities -- A suite of image caching utilites to employ various servers for images.
Swiffer -- Swiffer processes directories of PNG files into a set of SWF files that can be displayed by a Flash loader file to illustrate lens properties.
Beebo Machine -- A simple PHP application using a text database to help procrastinators do what they do best. See the Beebo Machine.
fixperms -- A Perl program with a shell script that uses the Unix find command to recursively set folder permissions that are not 775 to 775 and file permissions that are not 664 to 664. As currently configured, they also both change any file or folder that is not a member of webusers to that group.
Our Mac OS software taps primarily into AppleScript and Perl, building complete apps in Xcode. We also did extensive EasyScript programming with OneClick on OS 9.
Cambi -- An OS X application using AppleScript and Perl components to resize images with optional overlays and HTML output. See Cambi's predecessor.
Custom CMS -- The custom content management system we wrote for Photo Corners uses artificial intelligence to build and update sophisticated HTML pages from simple text-based documents. Written in AppleScript and Perl.
Style -- Various iterations of this Perl script to apply a publication style to contributor text, including AP style. See an example.
Gifone -- An OS X application using AppleScript and Perl components to combine a set of images into an animated GIF with options to set the duration each image is displayed and how many times the set loops. It's a more efficient way to make an animated GIF.
Gallery Creator -- An AppleScript/Perl application to build AJAX photo galleries.
Copyrighter Pro -- An AppleScript/Perl application to write copyright information to several tags in the Exif header of various file types.See Copyrighter Pro.
Exif Contextual Menu Service -- An AppleScript/Perl application to write copyright information to Exif tags of various image file types. See OS X Contextual Menu Service.
Photo Time Machine -- An AppleScript/Perl application to adjust capture time tags in the Exif header of various image file types. See Photo Time Machine.
Keyboard Maestro Application Palettes -- Application-specifica palettes of keyboard macros to mark up plain text files without having to remember coding conventions for either a custom markup language or HTML. We've written about our image ingestion script, for example.
OneClick Palettes -- OneClick was a scripting application that hosted scripts in buttons on palettes associated with various applications. We wrote several of these including:
- OscarPal -- A palette to facilitate standard screenplay formatting in QuarkXPress
- QuarkPal -- Provides common editing and formatting functions for staff writers using QuarkXPress
- HTMLpalPro -- Extends any text editor into an HTML markup editor
- TimerPalPro -- Time various jobs with split times and a job database
- F&Rpal -- Does a global search and replace across multiple files from the Finder
Our business applications were written for the DEC Rainbow running MS-DOS using the C language. We also modified a PC Xbase library to run on the Rainbow for many of these applications. Some of these began life as dBASE II applications and one of them was even written in Turbo Pascal.
Complete documentation was written and printed from QuarkXPress for each of these applications.
Adman -- A commercial advertising application to schedule and bill advertising.
Class -- A classified advertising application to schedule and bill classified advertising.
Ledger -- An accounts receivable program to enter payments and produce accounting reports.
Layout -- A charting application written in C to show page imposition on press signatures for book and magazine publishing.
Statistical Review -- Four data entry modules written in C to gather financial information and format it for output on an MCS typesetter.
Stats -- An electronic version of a databases of financial information (premiums and losses for insurance companies) with various reports. Ran on MS-DOS, PC-DOS.