Can you please tell something about yourself?
I'm a systems programmer by profession.
Started out as a math/physics major, got a B.S. in mathematics,
then spent a short stint as a programmer for Honeywell Aerospace
before heading to Stanford University to pursue a graduate degree
in Computer Science (CS) under many "golden age of CS" greats
and my idol for all time: Don
Knuth, master of all CS. After getting a Master's degree in
Computer Science in 1977, I went to work for the Stanford
Linear Accelerator Center (SLAC) as a systems programmer.
I worked there for 7 or 8 years and then tried the Silicon Valley
thing -- started my own small software company, AFH Systems Group,
tripped around the world on consulting assignments, etc.
In recent years I had a long-term consulting position at SLAC from which I just retired. I'm now trying to relax and enjoy the rest of my years on an early retirement pension.
Didn't you develop the first C compiler for an Intel processor? What is the story behind it?
No, I had a hand in the development of Intel's x86 development tools (PL/M compiler, C compiler, Fortran compiler, Pascal compiler, Assembler, linkers, loaders, and debuggers) and maintaining them for a number of years. At that time there were only a few primitive development environments for the 8086. This was hardly conducive to large-scale collaborative software development, so we desired to port the Intel development tools to the much friendlier VAX/VMS environment. No such port existed at the time, so SLAC entered into a technology exchange agreement with Intel to develop the necessary porting technology, and then use these porting tools to rehost the x86 tools to VAX/VMS.
To keep this long story short: I wrote a PL/M-VAX compiler so we could recompile Intel's tools for VAX/VMS. I also developed a remote debugger so a programmer or engineer could build an x86 application on VMS, then download it into one of the distributed 8086-based microcomputers and debug it line-by-line, with full symbolics, over the network from a comfortable VMS terminal. The cross debugger was dubbed MD86, but that's another long story...
The VMS-hosted x86 development tools were well-received by a number of Intel's major customers. In addition to my SLAC job, I began doing part-time consulting for Intel to port the x86 tools to other mini- and mainframe environments. Over the years, as Intel introduced the 80286 and i386 microprocessors, I worked on porting and maintaining these tools as well. It soon became too much work for one person; I left SLAC around 1985 and started my own small company, AFH Systems Group, to concentrate on developing and maintaining cross-development systems for microprocessors, primarily the Intel x86 architecture.
Then one day there was a shift in the tectonic forces between competing megacorporations, and Intel was suddenly no longer in the business of selling software development tools. With our major client gone, AFH Systems quickly lapsed into oblivion.
How did you get into developing Photoshop plugins?
After the demise of AFH Systems Group
in the mid 90s, I was looking for something fun and less stressful
to do with computers--something involving more of the right side
of the brain than the left. I took an on-line Photoshop class
from Harry St.Ours (aka KPT Saint) of the Corcoran Institute,
which included guest lectures by such early Photoshop luminaries
Krause and Deke
I was inspired by the plug-in filters available for Photoshop at that time, especially Kai's futuristic interfaces. I decided to try my own hand at developing plug-in filters, but found there was a long and steep learning curve to use the Adobe Photoshop SDK. Adobe's Filter Factory offered a much easier entry to plug-in development, but waslimited in what it could do. I began lurking in the Filter Factory Discussion Group (FFDG) mailing list, and saw that others were also frustrated by Filter Factory's limitations. Since I had already begun development of my own Filter Factory clone, I offered to combine forces with members of the FFDG, some of whom were also working on their own extensions, to build a "bigger & better" Filter Factory. Thus FilterMeister was born.
Screenshot of FilterMeister
Your FilterMeister plugin development tool has been available since 1997 now. Dozens of freeware and commercial plugins have been created with it. FilterMeister makes it possible for a lot of people who aren't professional programmers to produce plugins without much effort. Without FilterMeister a lot of cool plugins wouldn't be available. What motivated you to develop it?
As noted above, members of the FFDG had already exploited the constraints of Adobe's Filter Factory to a remarkable extent, but their creativity was now starting to be severely impacted by Filter Factory's restrictions.
My goal with FM is to lower the hurdles
required to enter the world of plug-in development. A filter writer
should be free to concentrate on the creative aspects of filter
development -- the algorithms and graphic user interfaces -- without
bogging down in the tedious and frustrating details of the Photoshop
SDK. I'll be happy when FM enables a filter developer to quickly
and simply encapsulate a special bit of magic (an algorithm, a
technique, any technical bit of "hocus pocus") into a beautiful
and functional Photoshop plug-in.
A secondary goal is to preserve some of the great community spirit of the former FFDG mailing list by promoting the new FilterMeister (FMML) mailing list, both for previous members of the FFDG and for all new FM users.
You are selling FilterMeister for $25, which is a bargain considering its value and mass of features. Did you never think of earning enough money with FilterMeister to get at least compensated for your invested time?
Yes, I dream about it sometimes. :-) But I realize that the market for FilterMeister (FM) is limited, and I'd rather have many satisfied users than only a few disgruntled ones. The $25 "special pre-release" price is designed to make FilterMeister affordable to as many avid users as possible. The entry price will increase when FilterMeister version 1.0 is officially released.
There are several distinct market segments for FM users -- casual enthusiasts and hobbyists; students and other academics; graphic artists who develop filters only for their own needs; and pros who develop commercially-viable filters, often for a vertical application such as image analysis, forensics, medical research, digital photography, etc. These "pros" can expect more reliable remuneration for their efforts, and at the same time they have more stringent requirements for optimization, robustness, security, and installation configurability. For this last group we may release a separate "Pro" version of FM, and ask a correspondingly higher price.
The FilterMeister logo
FilterMeister is still released as a beta version after seven years. Will we ever see a Version 1.0?
Yes, certainly. But the emphasis has been on getting the fundamentals right -- including a complete set of documentation -- before releasing 1.0 as a "finished" product.
Will there be a Mac version of FilterMeister?
Possibly. Apple's recent announcement that it is switching to the x86 hardware platform makes this quite a bit more likely. Porting FM to the Mac/PPC environment is a difficult challenge. Not only must FM be ported to run on a PPC under the Mac OS, but the built-in compiler must be retargeted to generate PPC machine code instead of x86 machine code. Porting FM to a Mac/x86 environment will still involve retargeting the GUI API, but the internal FM compiler will require little or no change.
You developed a few freeware plugins
with Filter Factory in the mid 90s that you still offer for download.
Didn't you want to create more plugins, for example, with your
own FilterMeister tool?
I did rebuild and enhance some of my early filters with FilterMeister, but never released them. I have realized I'm better as a meta-filter designer than as a filter designer per se. In other words, I'm better at writing the tools for other filter designers than I am at using these tools myself -- the latter requires a lot of visual creativity, which I'll leave to all the great filter designers out there.
A small part of Alex's big collection of garden gnomes
The logo of FilterMeister contains a garden gnome. Do you have a special affinity to garden gnomes?
Yes, I suppose I do have an affinity for garden gnomes. I was born in Germany, but moved to the US before I was a year old. So maybe I have a few lingering infant memories of garden gnomes, or maybe I just need a hobby for my old age. But the little critters do have a certain fascination for me. And I have amassed quite a collection of garden gnomes, many from the late 19th century in Thuringia and Bohemia.
These little fellows have some admirable qualities: They are very industrious and dependable, they go to work late at night, and work feverishly till dawn -- a bit like some programmers and graphic artists I know.
You are suffering from a chronic illness. What kind of illness is it and how does it impair your life?
suffered for many years from an autoimmune condition ("vasculitis")
in which by own immune system attacks my blood vessels and muscle
Secondary to this illness ("perivasculitis"),
I've had severe eye problems, and several eye surgeries to repair
cataracts and retinal tears. Unfortunately the operation left
me with gross geometric distortions, so the center of my visual
field in the left eye is as wavy as a fun-house mirror. Makes
it difficult to focus on tiny objects, and especially difficult
to stereoscopically use the left and right visual fields. Is a
visually impaired graphic artist an oxymoron? Well, maybe if I
stick to working with the underlying code I'll be okay!
No, I only wore the pirate's patch for a few weeks...
What are your plans for the future?
Now that I'm retired, I'll devote my free time to FM development, do some traveling with my life partner Beverly, and maybe finally organize my collection of garden gnomes into a virtual museum on the web. Not a bad prospect...
This interview was conducted by Harald Heim from The Plugin Site in June 2005.