I l@ve RuBoard |
Think of the CGI script feedback.py and the GUI program FormEditor.py as two different ways of manipulating a common dataset (the pickled instances on disk). When should you use a web-based interface, and when should you use a GUI? The choice should be based on a couple of factors:
How easy is it to implement the needed functionality in a given framework?
What software can you require the user to install in order to access or modify the data?
The web frontend is therefore well suited to cases where the complexity of the data manipulation requirements is low and where it's more important that users be able to "work the program" than that the program be full-featured. Building a "real" program on top of a GUI toolkit, on the other hand, allows maximum flexibility, at the cost of having to teach the user how to use it and/or installing specific programs. One reason for Python's success among experienced programmers is that Python allows them to design programs based on such reasoned bases, as opposed to forcing them to use one type of programming framework just because it's what the language designer had in mind. It's also possible to develop full-featured applications that happen to use web browsers as their GUI. Zope is a framework for writing such applications, and is available free from Digital Creations under an Open Source license. If you're interested in developing full-fledged web-based applications, give Zope a look (see Appendix A, for more details).
I l@ve RuBoard |