On Fri, Jun 18, 2010 at 2:55 PM, Ken Kixmoeller f/h <[email protected]> wrote: > Ted Roche wrote: >> I'm a fanatic for proper data design but > > will hold my peace unless asked. > > That is why I do it that way! It is by far the best solution I have seen > in (straining for credibility) 21+ years of doing this. >
Then you probably ought to stop right there (and stop reading this email). If the design sufficiently solves the business problem and doesn't lead to any horrific coding nightmares where you have to synchronize a bunch of unrelated children records in triggers every time any data is changed, you're probably doing okay. Every business problem has an optimal solution. An application tends to be built to solve a basketful of business problems, whose optimal solutions may be in conflict. It's the job of a good developer to thread the needle to find the solution that fixes the most problems, leaves the door open for future solutions, and doesn't block any of the problems that need solving. "Make the easy problems easy, the hard problems solvable, and the impossible improbable." That's all. How hard can that be? You could pull the MOC_type and MOC_medium into their own tables, if the business problem dictated. That allows you to extend the definitions if needed. Then, again, perhaps MOC_type should just be a binary value of Work? (Y/N). But the MOC_medium could be Twitter, pager, Sat phone, Google Voice, SIP number, etc... and having it in its own table gives you an instant source for the dropdown list... And contacts might be time-dependent: he's at work 9-5, while she works 10 PM - 6 PM, we're at home from 7 PM to 6 AM, but don't call after 9PM or you'll wake the kids. And on weekends, try me at the lake cottage, in the summer. I've written PIM and Contact Manager apps that supported full org-chart relationships, phone trees, multiple layers of work responsibilities and desk/workgroup/division/department/building phone groups... it hurts the brain to consider. It's pretty amazing, when you think of it: There are only entities of people, places, things, events, and the transactions between them. Who would imagine that millions of people would be employed each creating their own unique interpretations of these entity-manipulation systems? Couldn't someone just create the perfect one and then the rest of us could use that? But I wax philosophic. Must be Friday... -- Ted Roche Ted Roche & Associates, LLC http://www.tedroche.com _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/profox OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech Searchable Archive: http://leafe.com/archives/search/profox This message: http://leafe.com/archives/byMID/profox/[email protected] ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.

