> > The most intuitive approach to database applications would be: > > > > http://en.wikipedia.org/wiki/Naked_objects > > http://www.nakedobjects.org/ > > > > [...] > > > > Unfortunately, there's no Python framework (yet?) that implements > > this design. > > It could be a blessing in disguise. Too often people encumber simple > concepts with frameworks.
The point is that frameworks (for this kind of application) (should) allow people who are not computer scientists but domain specialists to implement useful applications. Which makes sense since especially in the domain of typical "business" applications, since it's much easier to teach a reasonably computer-literate domain specialist a programming language that's user-friendly such as Python and a user-friendly framework, instead of teaching a software developer the knowledge of the application domain. So the computer scientist(s) designs and implement the framework, and the domain specialist(s) implements the domain-specific application logic. The "naked objects" concept makes this especially intuitive since all the domain-specific application logic is in the "business objects". And since you don't need to implement anything else besides these to get a functional application. Unfortunately, the developer of the naked objects framework has chosen a language that is pretty bad in terms of "usability" for domain specialists; Java. And it sucks for GUIs, too. C# isn't much better, expecially since it's limited to a pathologic non-operating system. Python could demonstrate the interest of this concept much better than the existing Java and C# implementations, not only because it's much better suited to non-computer scientists, but also because it's more cross-platform than C# and better for GUIs than Java. Another important aspect of "naked objects" is about reducing the amount of code that needs to get written to implement a given functionality. Python is definitely more efficient here than Java and C#. In short; Python would be the perfect choice of implementation language for such a ("naked objects") framework. Unfortunately with all that hype about "web applications", there is little focus today on (frameworks for) applications that are actually useful for end-users who have to get real work done with the computer. Sincerely, Wolfgang -- https://mail.python.org/mailman/listinfo/python-list