Hi all, Thanks all for the great feedback you sended to me for my previous questions! Now, I've some other questions to ask, hope I don't offend somebody with these. Since I'm new in all these stuff, I'll ask you the experienced gourus for reliable information about these. I must write a sort of presentation for convincing people that Zope can help us in a great way. So I need some pro & cons of Zope and other sort alike applications. Is somebody willing to help me a little bit with this? I hope so. Thanks already for reading this part. Ok, I'll ask some questions which I think I need for situating and explaning Zope (to people who know about this stuff and to people who don't know anything about it, so it's for a broad audience) Yesterday, I've seen a demo of Lotus Notes, quiet impressive too. Most people have seen this demo too. So I should make a comparison between these two and also a little bit with other same alike applications. I know Zope is Open Source and free. Offcourse this is a great benefit, but I need also some info on usage by experts on the web, usage by people who just want to put an article on the web (no experience however). 1. Other available applications? I know of ColdFusion, Lotus Notes (it's web & database part), ... 2. Why using Zope above the other? Pro's & Con's of these applications and Zope. 3. Looking at Lotus Notes, they don't need an external database. Can Zope's database be also used like the one in Lotus Notes? (ie. Storing records, etc..) How can this be done. Is this database capable of storing large data amounts? Huge pictures? 4. If you need to make a knowledge base from start. Should we better use a database like Oracle, SyBase, PostgreSQL, ... or use the Zope database? 5. The search in Lotus Notes is fast... How fast can Zope search? Other information is surely welcome, because I want to give a good presentation on this subject. Kind Regards, Tom.
hi tom,
Yesterday, I've seen a demo of Lotus Notes, quiet impressive too. Most people have seen this demo too. So I should make a comparison between these two and also a little bit with other same alike applications.
if you must. they really are designed to do different things. zope as far as i have seen has no built in workflow, calendaring, messaging, etc. features.
I know Zope is Open Source and free. Offcourse this is a great benefit, but I need also some info on usage by experts on the web, usage by people who just want to put an article on the web (no experience however). the open source part is a benefit any former lotus notes developer will come to love. we used to do lotus notes development until we had the people at IBM tell us that in order to accept our bugs reports we would have to get a service contract with them. since lotus notes is far from open source you are at the mercy of their release schedule when it comes to thinks like bugs fixes --- and believe me lotus notes has lots of project deadline endangering bugs!
2. Why using Zope above the other? Pro's & Con's of these applications and Zope.
biggest pro: you don't have to put up with lotus script! python is soooo much nicer to work with than lotus script. i'm sure some people will tell you don't worry about lotus script -- you can program with C via the API but that may not be a fun road to travel. (it wasn't for us). let me put it to you this way if anybody here dares says: "zope sucks!" or "perl rules" i threaten him with a new assignment involving lotus script .... ;-)
3. Looking at Lotus Notes, they don't need an external database. Can Zope's database be also used like the one in Lotus Notes? (ie. Storing records, etc..) How can this be done. Is this database capable of storing large data amounts? Huge pictures?
the lotus notes database is not a relational database (neither is zope) so if you want to do anything requiring a lot of data you should hook up a DB via the ODBC interface. we have manipulating data in databases via zope to be alot easier than it is with notes and lotus script.
4. If you need to make a knowledge base from start. Should we better use a database like Oracle, SyBase, PostgreSQL, ... or use the Zope database?
yes!
Other information is surely welcome, because I want to give a good presentation on this subject.
notes is such a complex monster that one work around follows another. maybe their are other people on this list who found lotus notes developer friendly but that was not our experience. i would imagine that a knowledge base is a lot easier and faster to develop and program with zope and python. regards, webman --------------------------------------------------------------------------- webman | _ beehive GmbH | ASCII ribbon campaign ( ) berlin, Germany | - against HTML email X http://www.beehive.de | & vcards / \
Tom Deprez wrote: Okay, since you ask for it later on, I'll go try answer these questions. [snip intro]
Yesterday, I've seen a demo of Lotus Notes, quiet impressive too. Most people have seen this demo too. So I should make a comparison between these two and also a little bit with other same alike applications.
Okay -- I don't know the first thing about Lotus Notes, one of the reasons I didn't respond initially. Before Zope, I don't have any experience with web application servers; I rolled into Zope from the Python community. The other reason is that I expected someone from Digital Creations to pop in and say something. They definitely know much more about Zope than I do.
I know Zope is Open Source and free. Offcourse this is a great benefit, but I need also some info on usage by experts on the web, usage by people who just want to put an article on the web (no experience however).
1. Other available applications? I know of ColdFusion, Lotus Notes (it's web & database part), ...
Can't answer this one.
2. Why using Zope above the other? Pro's & Con's of these applications and Zope.
I can only give you some pros of Zope: * Acquisition + object publishing makes for a very powerful combo. It's rather hard to get the zen of initially, but it's truly very powerful. You can define standards for a site, which then can be overridden if necessary. You can set up basic functionality which then gets acquired by the system. You can publish any object in Python. Zope offers a lot of functionality, and at the same time it's a very open system; you can extend Zope. * management from the web. This is extremely useful! * Flexible and powerful security infrastructure. * Python is one of the best programming languages I know. Definitely much superior to the application specific scripting languages I've seen. Don't underestimate this -- kludging around scripting language quirks is a major pain. * Active and informed user community. * the Digital Creations people are very nice guys. :) Cons of Zope: * 'getting' Zope can take a while. Zope's design is based on some basic principles. These basic principles are explained in the Zope documentation, too (though perhaps some improvements can be made here). Even though you read it and understand what it says, it still takes a while before you realize fully what the implications and possibilities of these design principles are. Zope exploits the power of these principles in many different ways so it can take a while before you become familiar with it. * DTML, though quite nice, can get a bit 'perl'ish in its usage in places. There tend to be too many ways to write the same basic things in places. Also expressions that use the underscore to get to the local namespace can look awful: <!--#var "_.getitem(_['sequence-item']).title"--> instead of something like: <!--#var sequence_item.title--> There are reasons for this, and DTML itself is still very powerful, but it can get complicated. Note that most DTML is not as horrible as this example. :)
3. Looking at Lotus Notes, they don't need an external database. Can Zope's database be also used like the one in Lotus Notes? (ie. Storing records, etc..) How can this be done. Is this database capable of storing large data amounts? Huge pictures?
Yes, you can store huge amounts of data in the Zope database. I don't have much personal experience with it (though i've stored files and pictures), but Digital Creations does. Personal experience shows that this Zope database is pretty resistant to corruption too. A while back Zope suddenly started behaving oddly. I went to the server and found the hard drive Zope was installed on was full (not Zope's fault). With ZTables (a non open source Zope product) you can do more relational database stuff inside the Zope database; I don't yet have enough experience with it to give solid commentary, but from what I've seen it certainly is very nice.
4. If you need to make a knowledge base from start. Should we better use a database like Oracle, SyBase, PostgreSQL, ... or use the Zope database?
I'm discounting ZTables for a moment. It depends on how the data is structured. If your data is structured as a relational database, by all means use an outside relational database. Zope has Z SQL methods which makes relational database integration with Zope quite easy. You just write SQL on the web. If your data has a more complex structure and consists of objects pointing to each other and such, the Zope database is a good fit. I don't have much experience with this, but basically it comes down to writing some Python classes, inherit some Zope magic into them, and they're part of the Zope object database.
5. The search in Lotus Notes is fast... How fast can Zope search?
Depends on what you're searching for? Zope can be as fast as a relational database it is coupled with. Zope can find web published objects in its own hierarchy quickly, of course. I believe Paul Everitt reported that searching through large amounts of data in the object database was fast, too.
Other information is surely welcome, because I want to give a good presentation on this subject.
Okay, I hope this was useful. Now the rest of you all -- help him! Regards, Martijn
Tom Deprez wrote:
Yesterday, I've seen a demo of Lotus Notes, quiet impressive too. Most people have seen this demo too. So I should make a comparison between these two and also a little bit with other same alike applications.
I have a bit of experience with notes. Rob Page here has a LOT of experience (he's a certified Notes instructor from a previous life). Notes certainly makes for an impressive demo :^)
I know Zope is Open Source and free. Offcourse this is a great benefit, but I need also some info on usage by experts on the web, usage by people who just want to put an article on the web (no experience however).
1. Other available applications? I know of ColdFusion, Lotus Notes (it's web & database part), ...
Since we're entering the portal toolkit arena, some things like Portera are good things to compare to. We are often compared against Vignette StoryServer (for publishing) and Frontier.
2. Why using Zope above the other? Pro's & Con's of these applications and Zope.
3. Looking at Lotus Notes, they don't need an external database. Can Zope's database be also used like the one in Lotus Notes? (ie. Storing records, etc..) How can this be done. Is this database capable of storing large data amounts? Huge pictures?
Martijn partially answered this. Notes has an object database that is very neat...until you want to do something different. Its concept of objects being instances of forms, with both the forms and the filled-in-forms being stored in the database, is quite neat. Also, designing the app and storing the app in the database is really useful for deployment. Its views mechanism is quite impressive as well. Probably the biggest thing that people think of on Notes' database is replication. These folks have been doing it for a _long_ time and certainly have designed through most conceivable requirements. Having RSA as a key approach with access control on everything makes for a pretty coherent security model, though not extensible. Notes is pretty awful at being a "data" database rather than a document database. Having hundreds of thousands of things in a Notes database, last time I looked, was frighteningly slow. Notes is a _huge_ application, taking up significant resources. I imagine a Zope binary distribution could fit on a floppy if we tried. Let's see, Notes shares the same strength/weakness as ColdFusion, Frontier, et al. in that it has a sophisticated design environment based as a thick client (the Notes client). The only people that can "program" are people that have forked over the dough for the Notes client and installed the monster. The idea of lightweight programming through the web (e.g. DTML scripting) is completely foreing to them. This is one of the focal points of our "unleashing potential" story. Last time we tried to do an app (a customer management system) I wound up getting pretty shocked at its feeble object orientation. I longed to hook it up to DTML...which we did via ODBC. In fact, using our Network Client, we hooked our Linux Zope web server up to an NT Notes database. I'd say DTML and LotusScript are equally frightening. I'd say that Zope's use of Python and C as extension languages profoundly beats Notes' use of C/C++/Java for extensions. And of course in Zope you can actually look at the source code (cause it is Open Source) and understand it (cause it is Python). Really, changing Zope is mind-numbingly easy -- even _I_ could do it and I'm not much of a programmer.
4. If you need to make a knowledge base from start. Should we better use a database like Oracle, SyBase, PostgreSQL, ... or use the Zope database?
Until the Catalog lands, our searchability story is poor. Fortunately the Catalog, when paired with Z Classes and Property Sheets, is turning out to be something that I think surpasses Notes' forms and searches. This will be shown and LinuxExpo and released thereafter. It will hopefully appear on zope.org before then. And yes, it will be below the line.
5. The search in Lotus Notes is fast... How fast can Zope search?
Notes uses Verity for its search engine. They've had Verity integrated for as long as I can remember (certainly before 1993). Without the Catalog, Zope searches currently are a grep style "traverse everything on every request". With the Catalog, you should expect full-text/fielded searches on a 100,000 object Zope system to take about 0.2-0.8 seconds (rough guess, lots of variables involved). The Catalog is based on Z Tables (a currently "above the line" piece of software). If you want to see Z Tables in action, join the Zope Documentation Project and write a bunch of docs, then index it :^) Hope this helps. --Paul
Paul Everitt wrote: [snippity snap]
Until the Catalog lands, our searchability story is poor. Fortunately the Catalog, when paired with Z Classes and Property Sheets, is turning out to be something that I think surpasses Notes' forms and searches. This will be shown and LinuxExpo and released thereafter. It will hopefully appear on zope.org before then. And yes, it will be below the line.
[more snipses]
Without the Catalog, Zope searches currently are a grep style "traverse everything on every request". With the Catalog, you should expect full-text/fielded searches on a 100,000 object Zope system to take about 0.2-0.8 seconds (rough guess, lots of variables involved).
The Catalog is based on Z Tables (a currently "above the line" piece of software). If you want to see Z Tables in action, join the Zope Documentation Project and write a bunch of docs, then index it :^)
Hey, so this means [snip obvious deduction about Z Tables and LinuxExpo date]! The catalog sounds interesting. Anyway, do join the ZDP! Get to work with marvellous Z Tables. Get the Zen of them! Write documentation on the Zen you got! Join the zdp@zope.org mailing list today! Go to http://zdp.zope.org for more information. Thanks for the ad for the ZDP, Paul. ;) Regards, Martijn
participants (4)
-
Martijn Faassen -
Paul Everitt -
Tom Deprez -
webman