As of December 2020,
I am retired from hands-on software development, program and project management,
and managing software professionals, but I remain available for half-day and full-day consultations in areas where I am expert, including:
During my career in software:
- User Experience (UX)
- Overall database design
- Internationalization and localization ("i18n & l10n")
- Scoping software projects and defining participant roles
- I led the pioneering PC-based 3D architectural modeling at MegaCADD.
- I worked extensively in telephony, including some of the earliest systems that allowed someone to rent a phone
when they rented a car (1988); then at Active Voice I led a small interdisciplinary team that integrated voice messaging with email and fax (c. 1993)
and with PC-based customer-relations tools (c. 1994); and led a much larger interdisciplinary team that built a 60-phone-line, fault-tolerant
PC-based voice mail system (incorporating all of these earlier integrations).
- I served as Director of (Software) Development in the late 1990s for the legendary Saltmine Creative
(later Saltmine). I managed a group there which at times grew as large as 42 full-time employees, and I also
led projects such as the Microsoft Troubleshooters and the first playable online version of Wizards of the Coast's Magic the Gathering.
- I spent about half of my career as an independent, contracting and consulting at a variety of companies including several of my former employers.
Several times I filled in "acting" roles at director level in both development and QA (test). Clients included Microsoft;
the 2002 Commonwealth Games in Manchester, England;
and Tableau Software. In the early 2010s I built
a builders' "take-off" tool for the Builders' Exchange of Washington that pushes HTML Canvas to its limits;
I believe the only other people who have done anything of the sort with Canvas were building games. In particular,
the "magnifier" in the members-only take-off mode remains the most sophisticated tool of its type on the Internet, allowing precise selection
of a point in an image whose size greatly includes that of the screen; the zoom feature, also, creates a considerably better zooming experience than
most of the major map navigation systems on the web. I implemented both singlehandedly.
- Over this span of time I became pretty expert on internationalization and
localization of software. This was a big area of focus at Active Voice:
internationalizing a "voice snippet" telephone interface is
a specialty unto itself. Outside of Active Voice, I internationalized the code
base of Tableau Software's flagship
product in its early days. On contract at Microsoft in 2005, I extensively interviewed
members of the "Dr. International" team and wrote or rewrote
most of the Microsoft SDK's conceptual documents and API references
(Win32 PSDK for C++ and .NET Framework) on internationalization and on typography.
I've written numerous public-facing tech-related articles, think-pieces, etc.
Most of these date from the 1990s and early 2000s and are hopelessly outdated, referring to long-resolved controversies in software development,
expressing the project-management methodology of a long-gone organization, or
giving advice that was accurate in 2003 but which would be misleading today. However,
I remain particuarly proud of my still-relevant self-published 2002 article The
Interview Brainteaser and Its Discontents, discussing the use and (more commonly) abuse of brain teasers as job interview questions.
Two recent articles (December 2020): UX: Some thoughts on User Experience and
Pair Programming and Code Review.
Of mainly historical interest: a paper on technical aspects of Internationalization and Localization (2001) and
a bit of a think piece on XML (2001).