My current OO project began as a dark secret -- one that I would reveal when the time was right, when enough of my own personal time had been invested that my employer would find deploying it attractive (cheap).  Then a discussion about the product it was meant to replace came about and I revealed what I had been writing, with little fanfare.  Then, a high profile meeting was called where I was brought in to discuss what I could do with this enhanced bit of code to a handful of executives.  My secret was officially out.  Unfortunately, my new audience doesn't know anything about or have any professional interest in the meaning of object oriented programming... but that's ok... for now.

What did come out of the meeting was that my other big secret intention of using Flex for the front end would not happen.  The VPs want this software to integrate directly into our existing front office application, which is ColdFusion powered but procedural to the core.  At first, this bugged me deeply, but with more thought it became clear that very little has to change.

I'll continue to proceed with the OO nature of the development.  I had planned to expose CFCs as services for the Flex layer, and I can continue to do that as intended with slight modifications to provide integration with the existing CF app instead.  This allows me to keep my model purely OO, separating my business logic into its own layer, and then instead of creating a new UI layer, simply adding on to an existing one.  No big deal at all, right?  Right?  God, I hope not!