DreamWeaver, PHP, MySQL and Flash for more than five years.
Internet projects we've worked on include:
- Architect/project leader for Sony's eMarker project
We designed the object-oriented software architecture for this application so that two separate and unruly
development groups, one in San Francisco and one in Seattle could independently
develop Flash, HTML, EJB, Oracle applications that came together with minimal
integration effort. (Sony eMarker; Spring
- Summer 2000) The best part was that this was a real technical challenge --
a very complex, hip project. The worst part was that the guys in Seattle were
total spoiled brats who were unable to meet the deadlines they set. We did stay friends, though
I'd have really liked it if their moms had agreed to spank them for me.
- Designed second-stage architecture and wrote functional specification
for integrated Internet-based film production/costing application.
(Zoomedia; Winter 1999 - Spring 2000)
- Designed/implemented the documentation of a complex middleware
interface for the database-connectivity wizards for this product. (Centura;
Winter 1997 - Fall 1998)
- Participated in technical design of UI for EON,
eStamp's Web-based postage stamp generator, in technical
design and specification of the eStamp architecture and in
technical design and specification of the eStamp API.
- Documented Visibroker for Java and Visibroker for C++, Borland's
CORBA implementations. Emily spent about two years at Borland/Inprise/Borland.
She reports that, "For my last six months there, I found myself the only technical writer
on the project. Talk about a way cool API, and developers who knew their
- Documentation/architectural design of an HTML/XML-based middleware
API/product called AT&T AnyPage API.
- photographer's database-based website (work in progress)
- Coastside Film Society website
Information about monthly events on the Coastside Film Society's website is fully automated. Entry of film information into the database triggers update of all relevant pages.
The Film Society
membership form, like several I have implemented, automatically updates an email mailing list and MySQL database without manual intervention:
- Creativend.com Emily programmed this site in PHP and MySQL so that the artist
could update her own pages by herself. She can change the menus and the work samples displayed by making simple changes to the contents of the site database.
- Armadillo Associates Articles database
These pages in PHP display content, including images, entered by unskilled data entry personnel without using HTML. Headers, footers, menus, labels update automatically.
- Currently bashing out design/implementation of Mark
Devlin's website. Mark is a talented but extremely "self-involved"
(he calls himself this!) graphics designer. He wants to do the graphical
design himself, which is fine, and he wants to do the coding
of the website as well, but can't actually do this all that well. We
act as technical consultants, when Mark is willing to listen.
Most applications Armadillo Associates works on interface with backend data structured in some way or other.
Some of our more interesting projects have included:
- XML - Armadillo's experience with XML/XSL dates back to around 1997:
- We use XML to easily update dynamic pages on my websites. (For example: http://www.armadillosoft.com/cmc/readevents.php3 . Note: This website is no longer being updated, but it was used monthly to announce events.)
- Did a great deal of hand-coding in XML on AT&T's AnyPage project.
- Actually, most of the Java frameworks and SDKs we work
with involve XML.
- For example:
Armadillians did a great deal of hand-coding in XML on the AnyPage project.
Many of our documentation projects lately have involved at least some
use of XML. And, we use XML to easily update dynamic pages on our
- SQL and other database stuff
- The eMarker project we architected for Sony
required a large, complex, and very dynamic Oracle (SQL) database. As
architect on that project, we worked closely with our highly qualified
DBA to ensure that the database would meet our needs. We may not always spout
syntactically-correct SQL off the top of our heads but we know what a
good database design looks like/works like.
- We use MySQL as the backend database to our website applications.
For example, the Internet-based group scheduling application we are currently developing is written in PHP
that interfaces to a backend MySQL database.
- For many years, we maintained the member database of the Coastside Mothers' Club.
Designed the upgrade to a CD publishing system that had to convert terabytes of SGML
information into HTML for publication every three months.
(The upgrade was necessary because the system that existed was unable to process through the data fast enough ...) The backend
database was Sybase.
Nearly every page on this site uses PHP or will in the near future.
Forms and email
We started by implementing our
email page in PHP because Web-based email makes it possible for users to send
email without ever leaving their browsers. And, because it was fun to learn.
Consistent page formatting
Next, we implemented our
Robots Lessons in PHP; it makes sense to implement a series of pages that require a similar look
using this tool.
We now use PHP to create most of the headers and footers for many of the currently-updated pages on
Browser-independent XML output
Then, we used PHP to display our XML-based
CMC events pages. Don't let the file
extension confuse you. We needed PHP4 for this. Many thanks to our friendly ISP, fastwebserver, for so
promptly upgrading us to a PHP 4 server!
One of the coolest tricks we do with PHP is to implement what we call liquid menus.
We have just one PHP program that displays all the general-purpose context-menus in a number of
our directory hierarchies. Basically, all this PHP program needs is a text
file that lists what the prompts for the menu items should be.
When we use this program, when one of our clients requests an addition or a change to a menu, all we do is:
- Upload the new/changed page (the page to be displayed when the new/changed menu item is clicked)
- Add the new menu item to the text file that contains the menu entries (or, change the existing word) and
upload the changed file
Our liquid-menu generating PHP is used in the menus on these sites:
We ought to figure out how to distribute this to the masses.
Too bad PHP is a bit slow. We have begun to implement our
list of science museums as a MySQL database hooked to a PHP front end, but don't hold your breath.