software spaghetti & stew

Thomas is following up on his posts about importance of UIs (and whatever and however that can be) here. My favourite quote from one of his customers:

"Putting a cool front end on an old process and system spaghetti doesn’t help."

I'm never asked what front-end "technology" we're using at thingamy, it's always "what programming language?". Common Lisp is the answer.

Common Lisp was not our first choice, but when we went with it it simply clicked. And for me, it's "philosophy" seeps through all the way to the user. One way or the other.

But not only there, more stuff seeps through:

The back-end, the database.

How you see the reality you're trying to model (that's what software is all about).

Then, the UI. But no UI can fully cover a messy base. I would say that a good UI is porous, simply enhancing a well concocted base.

So with thingamy we build from bottom using building blocks that hopefully fit and enhance each other, here's our stew-thinking:

One big chunk reality model that differs from "how it's done today" (which is already another model created in the days of pen and paper). We started over again. Object oriented, object driven processes, no hierarchies.

An object oriented database obviously.

All held together with Common Lisp befitting and complementing the two first ingredients.

With a nicely done and balanced stew we have to present the dish in a way that enhances it's underlying flavours. Ajaxy freshly cut herbs is popular these days and can be used, but one have to be careful not too take the focus away from the stew itself.

Still in the kitchen as we speak, tinkering with twists to the basics and cutting parsley with the other hand.

Sheamus, just now we compile to OS X and Windos to keep it simple (sometimes 3 builds a week!).

But we can, and will when required, compile to: FreeBSD, HP-UX, IBM AIX, Linux, Solaris, Tru64, Mac OS X, Windows XP, Windows 2000/XP/Server 2003 etc - 32 and 64 bit and ppc or intel or whatever when appliccable... you covered? ;)
(It's after all a server based system, just now plonked onto laptops to try, test and played with)