[unrev-II] Experimental Zope Unrev-II Server (Was Re: Thoughts)

From: Paul Fernhout (pdfernhout@kurtz-fernhout.com)
Date: Sat Apr 29 2000 - 07:00:05 PDT

  • Next message: altintdev@webtv.net: "Re: [unrev-II] License Example"

    Eric Armstrong wrote:
    > * At yesterday's meeting, the thought surfaced that we need
    > to know what the other systems provide in the way of
    > evaluation capabilities, for comparison with SlashDot.
    > * Today, it occurred to me that, all things being equal,
    > we should chose the system that is most "hackable" -- that
    > is, the one with the most modular architecture and the
    > most reasonable language for hacking in.
    > * At the moment then, I'm inclined to rule out ArsDigita
    > (Tcl) and SlashDot (Perl + installation process).
    > * That leaves PHP/SlashDot and Zope. The questions as I
    > see them are:
    > * What kinds of evaluation mechanisms do they offer?
    > * How good a language is PHP for our purposes, vs.
    > Python?
    > * Since PHP/SlashDot uses the Apache Server and Zope
    > is a full server in its own right, how important is
    > it for us to hack the server? Can we be fully non-
    > denominational with respect to servers, or will we
    > need to make important hacks to the server to
    > implement the functionality we envision. (The former
    > argues for PHP/SlashDot. The latter for Zope.)

    Eric -

    Your comments above on "hackability" are great. I would definitely
    suggest Zope/Python over PHP because Python code is easier to maintain
    and Python and Zope already have a strong user bases. Any open source
    DKR work done in Zope or Python would have a large community of
    interested users.

    If you or others want to try out Zope, I sent up an experimental Zope
    system running Squishdot for the colloquium back in January.

    The Zope access information is:
      User: UnregisteredUser
      Password: unrevii

    I could also set up private experimental Zope accounts for people on
    request, because Zope has an easy to use hierachical security model.
    However, you can also easily install and test Zope out on your own Linux
    or NT box.

    Attached is the original announcement posted to the list. It's been
    costing me $50 a month to keep the server running, so if people want to
    try it, try it now before my accounting departmenet gets on my case! :-)

    Note: I still think Squeak http://www.squeak.org is a strong alternative
    to Zope/Python, but with different strengths and weaknesses.

    -Paul Fernhout
    Kurtz-Fernhout Software
    Developers of custom software and educational simulations
    Creators of the open source Garden with Insight(TM) garden simulator

    ================== Original Announcement ===================

    All -

    The specifications on OHS/DKR the DKR group have put together at:
    are really impressive. That document shows a lot of good work and great
    insight. The hardest part of a project is to get the specifications
    right, and that document looks like the best definition of a flexible
    information management / collaborative authoring environment I've seen
    in a long time.

    I've been thinking about how to implement that spec with Python/Zope.
    Zope is a web application server built on top of the Python programming
    language. Zope includes an object database and conduits to mySQL and
    other relational databases. Both Zope and Python are "open source"
    software. Zope is pretty cool in that you can edit all content through
    the web and even do simple OO programming that way.

    Using Zope and Squishdot, a Slashdot http://www.slashdot.org look-alike
    product, I have set up an experimental news site for the colloquium.
    Access information is at the end of this message.

    Beyond news, the site includes a poll and chatrooms. My major concern
    is that while Zope is fairly stable, the third-party Squishdot product
    is still in Alpha (and the author disclaims "don't bet your job on it").
    While I haven't seen any major problems with it, I wouldn't want Zope
    to look bad if Squishdot failed under heavy use.

    Zope/Squishdot/Python/etc. could be a next bootstrap level above the
    reliable Onelist mailing list -- because Zope is very malleable.

    Zope as is clearly is not a OHS/DKR in the complete Doug Englebart
    sense, far from it. Zope does not have the level of integration Doug
    would like to see (based on his writings). Zope is just a cut above many
    other systems easily available under open source licenses, and probably
    reliable enough (knock on simulated wood :-) that it could be made
    better. Zope has the core requisite of providing an "object database"
    coupled to a full featured OO programming language that can generate
    HTML and talk via sockets to other applications. I'm still not sure how
    reliable that entire system is, but so far I have not seen any problems.

    In addition, time spent learning to improve Zope and work with it is a
    (soon to be) readily marketable skill, because Zope is good enough "as
    is" for commercial work -- which all means a bigger potential audience
    of developers and users for anything done with it from day one.

    Obviously though, Zope lacks built in support for all the cool aspects
    that make OHS an integrated solution. And various Zope products compound
    the problem by creating yet more unintegrated systems. Ideas like those
    in William Kent's book "Data & Reality" tend to make me feel data
    representations must frequently change to accommodate new user needs --
    and that is something that Zope could do better (and also perhaps XML
    DTDs could do that better too for that matter).

    Yet, Zope is a starting place for a second level of bootstrapping a DKR
    past Onelist & email. It is a good one IMHO because it is relatively
    easily extendible and is already open source. And actually, it is the
    best I know of as a server. Feel free to point me to a better one.
    For me the only other major competition is Squeak Smalltalk
    http://www.squeak.org which has other strengths and weaknesses.
    I would also be interested in doing a DKR in Squeak is anyone out there
    is a Smalltalk developer. Python is just generally more accessible to
    Java/C++/Pascal/VB programmers because of the similar syntax, although
    Python lacks the level of integration with development tools found in
    Squeak/Smalltalk. Also, I could get Python/Zope on ISPs; I can't yet
    get Squeak. It is fairly easy to put a Squeak server on the net if
    someone has the hardware.

    The Zope security model is intended to address some of the issues that
    have come up with the colloquium and DKR web pages (delegation of
    modification privileges, undo, working in sessions invisible to others
    until committed). While this security model is not as good as the one in
    the spec the DKR team developed, it is serviceable for a start.

    For those seriously interested in working with Zope, you can download it
    for your own system (NT, Linux, Solaris) or I can set you up with an
    account on this server where you can experiment in creating content and
    using existing products. If you want to develop new Zope products using
    ZClasses, you will probably need to use a local copy of Zope.

    One final point. As Paul Everitt (the CEO of Digicool www.digicool.com/
    Zope's creator) pointed out, it might be a good idea to involve many
    Python developers using Zope/Python in creating a DKR/OHS system. The
    Python newsgroup is a very active one with many "think outside the box"
    people interested in open source development. There are dozens of Zope
    Products http://www.Zope.org/Products being distributed (for free)
    already, many under various open source license. There might be some
    serious interest among this user/developer community for participating
    with such development and improvements if they were done in Zope. Also,
    this doesn't have to be either or. Java VM Applets could talk to Zope
    server. And Zope can fairly easily talk to other systems in whatever
    language (locally or over the internet) through various adapter objects,
    which for example is how the mySQL database integration is done.

    I don't mean to step on the Java DKR effort. I know the DKR group was
    working together on it for quite a while. I have my own opinions about
    Java, but clearly the determination for the best language to use for
    something is based on many factors, including familiarity, sponsorship,
    and perceived growth. It is almost certain in any event that several
    Java VM applets or such would be needed even with some sort of Zope
    OHS/DKR, to implement things like screen sharing and many other
    collaborative tools. Since Doug has pointed out several times the need
    for evolution in DKR developments, I am making this site public even at
    the risk of causing some fragmentation in development efforts.

    The access information for the experimental Zope site is:
      User: UnregisteredUser
      Password: unrevii

    Again, I'm not sure how stable it is. Please let me know if you
    encounter any difficulties playing with it.

    It might be interesting to see if we could implement some of the
    concepts discussed here recently (like WebDAV & IBIS) as Zope products
    which could then be installed on this site.

    -Paul Fernhout
    Kurtz-Fernhout Software
    Developers of custom software and educational simulations
    Creators of the open source Garden with Insight(TM) garden simulator

    Accurate impartial advice on everything from laptops to table saws.

    Community email addresses:
      Post message: unrev-II@onelist.com
      Subscribe: unrev-II-subscribe@onelist.com
      Unsubscribe: unrev-II-unsubscribe@onelist.com
      List owner: unrev-II-owner@onelist.com

    Shortcut URL to this page:

    This archive was generated by hypermail 2b29 : Sat Apr 29 2000 - 07:04:25 PDT