I don't fight my language. Given a choice of a cute user interface or a robust app, I'll choose the robust app every time. My clients thank me for it. I plan for version 2 during initial design of version 1 by inserting hooks for the more challenging user requests, and features my experience indicates they'll want later. The truly unmaintainable apps I've seen involved unnormalized data.
Normalized data does well in integrated, multi-platform environments.
Be sure to devote enough time and attention to the data design. If necessary, hire a consultant. It's vital to follow the rules of normalization . We've all seen it. Good applications gone bad.