Zope X3 3.0.0 Released 229
tj8 writes "The Zope 3 development team has announced Zope X3 3.0.0 final. After almost three years of development it has finally arrived!"
"An idealist is one who, on noticing that a rose smells better than a cabbage, concludes that it will also make better soup." - H.L. Mencken
There we go again... (Score:3, Informative)
Another X-Prize contender ?
DukeNukem 3 beta release ?
A new competitor to the Roomba, but this time with shotguns ?
oh well, maybe Zope is an open source application server for building content management systems, intranets, portals, and custom applications. The Zope community consists of hundreds of companies and thousands of developers all over the world, working on building the platform and Zope applications. Zope is written in Python, a highly-productive, object-oriented scripting language. ?
Re:There we go again... (Score:2, Insightful)
Honestly, can someone explain when one needs a framework like zope ? I have done some DB-based websites, but always felt like learning a complete framework was
a) r
Re:There we go again... (Score:5, Informative)
They also usually have versioning, workflow (ie, changes needing to be approved before they're published), notifications, and other stuff.
If you've got three pages you probably don't need a CMS.
They definitely do add a fair amount of overhead, but if your site has a significant amount of content, and / or you have a lot of people looking after the content, a CMS is the way to go. If you don't use a ready made one, you're eventually going to implement your own one way or another anyway - so sometimes it's easier to start with one from the outset.
Zope however, is not a CMS, it's a Python based application server - it's just that most of the time that people use Zope, it's to run a CMS on top (or in the case of Plone, walk or crawl a CMS on top)
And maintainable designs (Score:4, Interesting)
A friend is doing lots of stuff with Zope and Plone. Besides the CMS, it is damn cool to watch reams of Python being generated directly from the UML model of the site (he's working towards round-trip). It looks like a great way to build complex sites and impose sanity controls on other people playing in your pond.
Xix.
Re:There we go again... (Score:2)
Re:There we go again... (Score:5, Informative)
Frameworks provide a way to save time in development and maintenance of medium-to-large projects by providing facilitis that programmers will find useful.
Zope's acquisition feature is very handy for me to write templated websites whle keeping my application logic separate from my HTML.
When I have non-programmers editing the HTML (which I do) this is really handy.
Zope gives me a web interface to use to get to all this code. This means my non-programmer has an easier time of it.
Re:There we go again... (Score:2)
IMO, s/medium-to-large/large.
Frameworks are a dime a dozen and they come and go by the dozens every day, so only very large projects that can commit to a framework, maintain it, and train their employees in it should actually use it. Otherwise, the employees will just sit like a deer-in-the-headlights and use the framework in such a half-ass manner that it would have been better to just use mod_perl.
Re:There we go again... (Score:3, Insightful)
The "training of employees" things only applies to companies where they have not hired peopel with specific skills.
Even then Zope is not that hard to learn, although the documentation is the worst I have ever encountered for such a serious project.
Re:There we go again... (Score:3, Funny)
DukeNukem 3 beta release ?
Can't be, they only took 3 years to release it.
Re:There we go again... (Score:2, Interesting)
Some things have to be assumed for the /. audience, though. I think a real geek should know what Zope is... Zope is to dynamic web sites what Apache is to static ones...
Re:There we go again... (Score:2)
I know you are kidding but it's kind of a profound question. "What could zope be?".
It could be web server, it could be a ftp server, it could be a CMS system, it could be an object oriented database. It is and could be all of those things.
What it hasn't been so far is some sort of a J2EE like framework for python. That's what it should be IMHO. If zope took that role on it could be an answer to everybody who does not like java or at least prefers python to java.
Re:There we go again... (Score:2)
1) Object relational layer.
2) Transaction control.
3) Ability to call code in another container i.e some sort of a naming service.
4) SOAP and CORBA support (at least SOAP).
Re:There we go again... (Score:2)
Do you have a link? I am not able to find anything that would let me publish a zope object as a SOAP call.
Supposedly zope3 has better authentication but I haven't looked at it.
PHP Alternative (Score:3, Informative)
If you're looking for a PHP alternative, Drupal is as close as it gets. (www.drupal.org)
Re:PHP Alternative (Score:5, Insightful)
If you ever want to clarify a term, don't use the word "framework".
Re:Would this be better? (Score:2)
Re:PHP Alternative (Score:4, Informative)
Drupal is a CMS, Zope is an Application Server. Drupal depends on an external web server, Zope is one. Zope is much lower-level than Drupal. You could compare Drupal with Plone fairly, though.
There is no real PHP counterpart to Zope because PHP was designed for the web and for tight apache integration (this second part is more recently changing). Python has no builtin "web application" features, so Zope provides them (along with Quixote, Webware, Nevow, etc.) PHP does a lot more for you in the language proper, but is much less object-oriented (yes, I know PHP has object-orientation, but it's nothing like Zope/Webware style object publishing).
But at the root, Drupal IS a CMS and zope is something you might use to build one. They're not similar in any way I can think of beyond that. I've worked with both, but correct me if I'm wrong?
Re:PHP Alternative (Score:2)
Re:PHP Alternative (Score:2)
Slashdot == Freshmeat. Yawn... (Score:4, Funny)
Re:Slashdot == Freshmeat. Yawn... (Score:2)
After many days of waiting, ispel-fo 0.2.18 was released. I'm sure everyone will want to download this, as it's an exciting new release. Gentoo users can type emerge ispel-fo to install it.
Re:Slashdot == Freshmeat. Yawn... (Score:2)
Re:Slashdot == Freshmeat. Yawn... (Score:2)
.
And for the uninformed... (Score:5, Informative)
You'd think story mods would put stuff like this in the stories. With over 800,000 registered users, the odds are pretty damn good not all of us know what the heck [latest software project] is.
I'm not even going to attempt to translate that bit into real English (you know, instead of buzzword-speak), but at least *try* to describe what the software does, guys...
p
Re:And for the uninformed... (Score:2)
isn't it enough that he has to work on a sunday
poor guy
just chill michael.
have some more 420!
Amen, brother. (Score:2, Funny)
The news media is particularly careful to always title things, "Palestinian leader Yasser Arafat", as if there were anyone left who didn't know who he was. The guy can generate 35 press releases in one day, and he'll be mentioned that way in every one, just in case Otzi thaws out, turns on the radio, and needs to know who they're talking about.
When a story like this comes up, I have to hit the page just to figure out whether I care abo
Re:And for the uninformed... (Score:2)
A three second search for zope on Google will give you all the answers you need or a helpful poster will karmawhore for you if you are to lazy or inept to do it yourself. But don't have the editors waste the time of all the real nerds who act
Re:And for the uninformed... (Score:2)
You guys are right, the audience has changed.
*wink*
Re:And for the uninformed... (Score:2)
p
Re:And for the uninformed... (Score:2)
Re:And for the uninformed... (Score:3, Insightful)
Whether I know what it is is irrelevant. If it isn't common knowledge,
Re:And for the uninformed... (Score:2)
The Zope site explains things, well, about as well as can be hoped for to someone who isn't entirely sure what "web application server" and "transactional object database" mean (or are good for). For which you are to be commended.
p
I don't know what it is... (Score:5, Funny)
Re:I don't know what it is... (Score:2, Informative)
Re:I don't know what it is... (Score:2, Informative)
Still, a hell of a lot better than PHP Nuke :)
Re:I don't know what it is... (Score:2)
Best Links (Score:5, Insightful)
Best deals: The Internet Yee-haw, I'm gonna buy me this "Innernet" thing fer real cheap!
Best deals: Announcements For when you need a cheap talking head to run your press conferences?
Best deals: Developers Because we all know Slashdot is doing its best to put all the programmers whose jobs have been outsourced to India back to work. Or is Slashdot now working to find those companies better deals than their American developer staffs...? The mind boggles.
Slashdot ought to re-title the "Related Links" section to "text-based ads that might be marginally related to the topic, but we doubt it."
p
Has anyone here compared seaside and zope (Score:3, Interesting)
Re:Has anyone here compared seaside and zope (Score:3, Informative)
Zope (and Plone which sits on top of Zope) is great - but it is targeted at non-technical users (once it is set up).
Seaside is a new paradigm.
-Mark
Re:Has anyone here compared seaside and zope (Score:3, Informative)
Seaside, in some ways is similar to Zope. Both are web application frameworks written in a dynamic OOP language. Zope does a little more, IMHO, though Seaside is catching up. I mean that in a good way- Zope has a lot of bloat and a fair bit of kudgey hackery, and where Seaside is adding similar functionality it is usually in
ruby alternative (Score:5, Informative)
ruby on rails [rubyonrails.org]. very nice web framework
Re:ruby alternative (Score:2)
Can't hardly wait for Plone 3. (Score:3)
On Zope (Score:5, Interesting)
It's basically a prototype of what application servers and databases are going to look like in 5 to 10 years.
From having worked with Zope I can say the power of this tool simply is breathtaking. Technology wise it's way beyond anything else I've seen, including J2EE and the bazillion other Appservers that come with it and other to-date solutions like the ones based on
It's downsides were the lack of consitent documentation for some parts, slow extra basic components (called "Products") and a lack of filtering in the Zope community. Like top grade Zope solutions right next to crappy beta level coding experiments. Lot of this has improved throughout the last 2 years though. Still missing is a larger support by ISPs running Zope on their servers.
Bottom line:
If anyone wants to build a special application with lot of custom server side programming, Zope is the powertool of choice. Technology wise it beats any other solution hands down. Think "The Linux of Application Servers".
Re:On Zope (Score:4, Interesting)
My company implemented our own solution using mod_perl and Oracle. (The application is about 300,000 lines of object oriented Perl, and no it doesn't look like line noise, programmers are thwacked soundly for writing bad code).
Perl object classes are declared for each database table within the application. Scripts parse the SQL schema and insert what 'data members' (columns) belong to each object and sets up a hash that contains all the deletion rules (when is a record safe_to_delete, etc.), and a description of the length of each table field, etc.
An XS backend (C code glued to perl) seralises and desiralises the object for each Apache request, once the object is ready to be written, the XS backend splits out the data and writes it into the table used by the object (using insert, delete, or update as appropriate).
The result? A wicked fast application server environment that is very close to a 'rapid application development environment'.
Example?
Let's say a programmer wants to create a new 'Company' object.
my $new_company = fqdbcn('Company')->new;
("fqdbcn" here means turn Company into a fully qualified database class name for the current application)
The programmer wants to set some fields and write the new object to the database:
$new_company->set(
name => 'ABC Company, Inc.'
active => 1,
accounting_id => 'ABC001',
);
$new_company->write;
The programmer later wants to load the object back up to update the Company record since they're changing their name.
He has three choices (that come to mind) to load the object back in so he can update it:
choice 1 (by id):
my $company = fqdbcn('Company')->load(id => whatever_the_id_was);
choice 2 (by accounting_id):
my $company = fqdbcn('Company')->find(where => { accounting_id => 'ABC001' })->fetch;
choice three (by name):
my $company = fqdbcn('Company')->find(where => { name => 'ABC Company, Inc.' })->fetch;
He can then update it like so:
$company->set(name => 'ABC Conglomo Co, Inc.');
$company->write;
What if the programmer wants to delete a company object he has?
$company->delete;
$company->write;
The advantage of our homegrown system is that we can use the application as an object oriented system, or we can pull data using SQL for reporting using the rdbms (Oracle).
We're working on converting our framework to Postgre because $16,000 a year for Oracle is just way too freaking much for a 10 employee company (some would say too much for any company).
I could go on, but suffice it to say that things like Zope are where Applications are going. After working with our homegrown framework (and all of it's iterations) for the past 5 years or so I can say without a doubt that once you adopt an object based model for writing applications you will never want to go back.
Re:On Zope (Score:2)
The biggest number of lines any one file usually has is 5,000 or so. Most are around 2,000.
Re:On Zope (Score:2)
Re:On Zope (Score:2)
What is lacking? Fine grained trasaction control, object relational layer (some people have data in relational databases), automagic SOAP publishing of objects, cross container communications (RMI at least) etc.
I would love it if zope at least had SOAP support but all they have is XML-RPC.
Re:On Zope (Score:2)
Re:On Zope (Score:2)
Re:On Zope (Score:2)
Re:On Zope (Score:2)
Maybe the people who need it use something else. It's much easier then hacking zope.
"Cross Container communications: I have no clue what you are talking about."
In J2EE you can run many containers on many computers and the framework allows you to distribute your beans as you see fit. When you call a bean you can find it whether it's on the same machine or not.
OK we need some input from the Zope heads (Score:5, Interesting)
Is it compiled into native code? I know this is more a Python thing but even mentioning an application server built in a scripting language will have me ridiculed out the door.
Any performance indications or comparissons? Anyone port Petshop and compare it against JBoss or Geronimo perchance?
What advantages does Zope offer me over a J2EE server?
Re:OK we need some input from the Zope heads (Score:5, Informative)
Most that I can think of. It even comes with it's own webserver, so you can spare yourself the Apache installation. Good for testing out of the box.
Is it compiled into native code? I know this is more a Python thing but even mentioning an application server built in a scripting language will have me ridiculed out the door.
1st of all: Python isn't any more a "scripting language" (whatever that is) than Java (which you mention for comparsion in another place)). But to answer your question: Performance critical parts are written in C (and iirc a little in C++), the rest is Python.
Any performance indications or comparissons? Anyone port Petshop and compare it against JBoss or Geronimo perchance?
Compared to other solutions that have the DB totally seperated it is generally considered slower when used with no second thought on optimization. Which imho is the whole point of Zope, as it makes building data driven networked applications nearly as simple as clicking together a website in dreamweaver. My philosophy is to make the hardware fast and reliable and to keep speed optimizations as far away from the code as possible. This btw is usually more sufficent and measurabley cheaper for the customers aswell.
Apart from that Zope offers nearly infinite methods for optimization, inlcluding load balancing functions for a Zope farm, intergration of classical external DBs and usage of Zope in conjunction with other products such as the Apache Webserver.
Ok, I'll bite: (Score:2)
And it's strange, but wereever I go I encounter a hideous mess of tangled systems set up by nerds that can't even use the right screws to fasten a harddrive, have set up 3 servers, two DB's a webserver and a MTA with some cryptic (read: crappy) perl glue, were one
Re:OK we need some input from the Zope heads (Score:3, Informative)
It is. Its services are called "products" one of them is plone - a framework built upon zope - providing everything you need for a Community website (Calendars, news, Member homepages, Picture Gallerys, Forums etc.)
I know this is more a Python thing but even mentioning an application server built in a scripting language will have me ridiculed out the door.
Stop laughing. This is running zope. [zope.org] Google Cache [66.102.9.104]
Re:OK we need some input from the Zope heads (Score:5, Interesting)
You're saying you'll be ridiculed for proposing an application server using an interpreted language, because it supposedly can't keep up with a J2EE server?
Maybe Zope, Inc.'s [zope.com] customers disagree. Or photo.net [photo.net], a site getting over 10,000,000 hits a day that's written in OpenACS [openacs.org], which is itself written totally in Tcl?
If you feel forced to keep using J2EE because you'll be ridiculed otherwise for using a "non-compiled" app server, go ahead. But other developers are likely gaining a lot of productivity by using more dynamic and "slower" interpreted languages. Check out this 22MB quicktime demo movie [nextangle.com] of the Ruby on Rails framework...pretty awesome stuff.
Linux Virtual Private Servers for Professionals [aktiom.net]
Re:OK we need some input from the Zope heads (Score:5, Informative)
Zope is an incredibly flexible web application development environment. It can be used for pretty much anything ranging from a full blown CMS with shopping cart facilities to a cutting edge XHTML/CSS showcase site. It works well with all Internet standards (including XML, XHTML, iCalendar, etc.) and most non-standards / semi-standards (PDF, Flash, RSS, etc.). I've even used it to on-the-fly convert definitions from within a CMS to be served by a dict [dict.org] server.
The popular Plone [plone.org] is built on top of Zope / CMF. Ditto for Silva [infrae.com] and Nuxeo CPS [nuxeo.org].
Because Zope is so flexible, the sites it's used for generally look quite different from one another.
Re:OK we need some input from the Zope heads (Score:2)
The design of Zope is significantly different than the J2EE spec, so if you are looking at things in terms of "what is the Zope equivalent of JNDI?", it will be difficult to see what it has to offer.
I started to write a detailed explanation of Zope development here, but I realized that it was too Zope 2 ori
Zope is to J2EE as wiki is to the web (Score:3, Informative)
"Application server" is an overloaded buzzword. What do you mean by it?
Zope is a transactional object database with a security layer and an HTTP interface built on top.
The object databases give you a structure for containing content; the security layer controls access; and the HTTP interface lets you publish that content in whatever way you like.
The usual way to use Zope is to store content (eg., documents, images, external
Load (Score:2, Funny)
Re:Load (Score:2)
You can check a few other high (and relatively high) profile sites that run on Zope:
Zope is also part of Massachusetts' "Open Source Trough" and will quite likely eventually power the entire Commonwealth of Massachusetts' site at www.state.ma.us [state.ma.us].
Zope's Changing Philosophy (Score:4, Interesting)
Re:Zope's Changing Philosophy (Score:4, Informative)
It should also be observed that Zope X3 3.0.0 != Zope 3. Zope 3 will have full Zope 2 compatibility, but Zope X3 3 does not.
Re:Zope's Changing Philosophy (Score:2)
NOT Zope 3 (Score:3, Informative)
IIRC, Zope X3 is the development backend, intended for Zope Product developers to port their Zope 2 products with. The real-deal Zope 3 (not X3) with an actual front-end for users won't be ready for a long time still. IIRC. Can someone verify or correct me?
Confirmed. (Score:5, Informative)
Documentation? (Score:3, Informative)
Or at least, that was the state of Zope's documentation when I was researching it about 8 months ago. It's really frustrating, because it's clearly a powerful, flexible system, but it seems like most of the docs out there only get as far as talking about how powerful and flexible it is.
Re:Documentation? #zope on freenode (Score:2)
I can't comment on the quality (yet), but at least they're there now as opposed to how long it took to get decent docs for Zope2. I think Zope2's organic growth made it difficult to maintain decent documentation. It looks like documentation was a part of the development process for X3, expecially since it's such a dramatic change from Zope2.
Zope is fine, but... (Score:3, Interesting)
Despite being a whole lot less slick, I find OpenACS a lot easier to create apps with. The page flow of the canned apps is more elegant too.
Re:Zope is fine, but... (Score:3, Informative)
ZPTs put all their programmatic stuff inside tag attributes. That means that any HTML or XML understanding tool will be fine with ZPT, and you'll still get scripting power.
Here's a short example where a new <tr> is created for each user in the list user_list:
<table>
<tr tal:repeat="user user_list">
<td tal:content="user/name">Name</td>
<td tal:content="user/phone">Phone</td>
<
Try Ruby (on Rails) (Score:5, Informative)
Zope was pretty
If complexity and bloat and big programmer egos turn you off, try Ruby on Rails.
Don't worry if you think you don't want to learn a new language, don't worry if you think Ruby on Rails is just another half-assed open-source framework that you'll explore, run into a wall, and discard.
RoR is a low-level MVC framework, yes. BUT it is *so* efficient that you will be writing high-level components in *hours* instead of days or weeks. You'll create an internal discussion site for your company in a weekend, you'll build a CMS in a matter of weeks, you'll throw together a fully functional bug tracker in 500 lines of code... etc.. remember why you use dynamic languages like Python or Ruby in the first place? That's right, to solve problems FAST! You'll have the same feeling when using Rails "wow.. if the designers send me those mock-ups, I'll have the site finished *before lunch*.
Here's a quick example of how to add a Customer object to your app once you create the database tables: Yup, that's all. It just automatically adds the right fields, sets the right defaults, and can create associations between objects as well (one line of code each).
Now let's try adding a full set of list/edit/view/etc pages so you can get started with your app right away: Now head over to "http://yourapp.com/customer/new" and add your first customer!
That's all.. how long does that take in Struts?
Now.. just head over to rubyonrails.org and watch the demo video. That's all. Just 10 minutes of your life and after you watch the video you can go back to your Zopes and your Struts and your what-have-yous.
Just watch the video.
Python IS suited to HTML templates (Score:3, Informative)
Python has triple quoted strings (eg. ''' a string ''') which preserve whitespace.
These can contain format strings like C
Fill a Python dictionary with the necessary values:
Then
gives
The HTML string could, of course be longer (and still preserve whitespace:
Re:Python IS suited to HTML templates (Score:2)
But this seems too elementary. Have I misunderstood?
Your example shows how to output HTML from Python. Most templating things (PHP, JSP, Perl's Template Toolkit) use HTML files, with code mixed in between, for instance within <% %> marks (JSP) - start a block with <% for (int i=0; i<10; i++) { %>, print a table row using the variable <%=i%>, and end the loop with <% } %>.
Python mixed in with HTML in this way isn't really feasible because there's no way to indent it.
Re:Python IS suited to HTML templates (Score:2)
Thank you! It's been years since I last saw that, and back then I didn't have any knowledge of templates at all. As far as I can see the indentation is indeed not much of a problem, and PSP are heavily inspired by JSP, with some extra OO features in templates. Cool.
If anyone after me ever reads this, this is the bit about blocks from the User Guide:
Automatic Blocks
Any script tag with Python code that ends with a colon (:) is considered to begin a block. (a comment tag may follow the colon). After this ta
Re:Try Ruby (on Rails) (Score:2)
Just keep in mind that you're comparing Rails today to Zope of yesterday. Apples to oranges, really.
Zope is clearly complex, clearly confusing, but I would be hard pressed to call it bloated. Opaque? One of the (minor) design problems of Zope is that
I've got Soap on a Rope ... (Score:2)
Zope great in theory ... not so much in practice. (Score:5, Interesting)
Zope looks great on paper, and it was [relatively] easy to convince Management that it would "increase productivity", and would be "easy for the Java developers to learn and switch to". In all fairness, even the Java developers I worked with would agree that Zope offered some great features that other languages didn't offer. Aquisition, for one.
In practice, our Zope projects ended up being disasters. Slow, difficult to develop and debug. (By default, all of your code editing is done using the web based editor, which is just a simple HTML TextArea input). It does NOT lend itself well to development teams of more than a few people, and is so inefficient that you *must* use a caching proxy if you expect any substantial amount of traffic.
It's been about 6 months since I stopped developing in Zope, and I must say my sanity level has increased since then. Of course, I have not tried Zope 3 yet (which was rewritten from scratch apparently), so it definitely deserves a fair shot. I'm simply relaying my past experiences with the Zope 2.5 thru 2.7 versions, for whatever it's worth.
Develop on Filesystem. Not ZODB. (Score:5, Informative)
If you're working with code, you should be storing it on the filesystem. One of the biggest mistakes Zope developers make is to develop inside the ZODB using the textarea, which obviously puts them off zope.
Through-the-web editing is there if you need it. It's handy, but for any serious development you should be developing filesystem products.
Re:Zope great in theory ... not so much in practic (Score:2)
Yeah, I couldn't believe it when I saw it. I thought it must have been just for the first step in Zope, then I searched where the files (template and other elements) were saved so I could access them directly with my editor of choice. No go, it's inside a database.
I gave up Zope and stuck to PHP soon after that (and the fact I could not wrap my mind around their 'TAL' thingy, call me dumb).
Re:Zope great in theory ... not so much in practic (Score:2)
You didn't look far enough. The "textarea" editing is optional.
Each to his own. However, looking at the horrible
Re:Zope great in theory ... not so much in practic (Score:2)
Re:Zope great in theory ... not so much in practic (Score:2)
The most popular (and flexible) one is WebDAV, but Zope also supports FTP. Many editors (Eclipse, Emacs, vi) support seamless editing through these formats, either out of the box or with plugins.
I would argue that doing PHP cleanly -- cleanly enough for it to scale with your application -- takes a lot of effort. At some point you will grow to reach a threshold where the benefits of P
Re:Zope great in theory ... not so much in practic (Score:2)
Zope 3 also strongly encourages development on disk, not throug
MOD THIS UP (Score:2)
If you use KDE, point Kate at webdav://myzopeserver.example.com:1980/ and view the ZODB just like a directory on your local filesystem. If you need to do some command-line work (grepping, etc.) then open that URL in Konqueror and drag the interesting folder to your desktop and work on your local version.
I hated working with Zope through the textarea, but editing it through webdav via my normal editor without having to install any plugins like the ExternalEditor setup is ext
Re:Zope great in theory ... not so much in practic (Score:2)
Experience with Zope/Plone (Score:4, Informative)
Plone is a very nice CMS. It has a special wysywig editor for Internet Explorer and is very user friendly. The default skin (and this, I guess, was the reason for choosing it) looks pretty nice and is pretty elegantly coded. The template system that it uses is really cool and XML-based. It can run on any major OS, but there are some issues in moving a site across systems/OSes.
However, the problem is that you can't just run it straight on Apache, like you could with a PHP/MySQL application. It runs its very own web server. So you have to make an entry in your httpd.conf to make a virtual host that goes to the port that the Zope server is running on (which the system admin doesn't want to do). It's actually gonna be hosted on its own server, just to make sure it doesn't upset any of the dependencies that their mission-critical stuff has. So if I wanted to use it for my own purposes on a shared server, I can't.
One problem for me was that making custom content types required knowledge of Python, which I was able to fake my way through somewhat. This is made much easier with something called Archetypes, a bunch of classes and functions that does stuff for you.
I guess the biggest thing that made me uncomfortable with it was that it uses a custom database format and a custom format for storing all the site's files inside of one actual file. And you can't just move that one file, there's other dependency issues and problems with paths if you move it to a different location or OS.
I was, however, to develop the site much quicker with Plone/Zope than I would with developing my own CMS for that purpose or using an existing PHP one. And the end result is pretty nice. It's going to be very impressive. Once a co-worker finishes adding all the content to it, the new site will be up and tunneled from the location I linked to in this article.
Re:Experience with Zope/Plone (Score:2)
All you need is an Apache Virtual Host that does nothing put proxy pass-through to a Zope instance. You can run multiple, independent Zopes all frontended with the same Apache.
I guess the biggest thing that made me uncomfortable with it was that it uses a custom database format and a custom format for storing all the site's files inside of one actual file. And you can't just move that one file, there's other dependency issues and p
Examples? (Score:2)
LS
Re:Examples? (Score:3, Informative)
http://www.zope.org/Resources/ZopePowered/ [zope.org]
Re:Sigh (Score:2, Interesting)
I've always wondered where we should draw the line. Obviously if someone posted something like, "Mozilla, a free open-source web browser...."
Then SOMEONE would post, "oh come ON, do we really need to be told what Mozilla is?
So what I'm wondering is, what DO we explain to readers and what don't we? There are obviously pieces of software and hardware that are familiar to some, but not others.
Re:Sigh (Score:2, Insightful)
Troll? (Score:2)
Re:Sigh (Score:2)
Re:Sigh (Score:2, Funny)
* What is Zope
* What does it do?"
Zope is a web-app framework.
It allows you one of those rare moments where your boss can't quite tell whether you're taking the piss, or whether he's completely lost it with regards to technology.
him: What technology are you planning to use?
you: Zope and Python.
Re:Zope ROCKKKSSS (Score:5, Funny)
it translate to something like "dick" to their language and it took me a while to discover why they laughed everytime i mentioned "zope"
Re:dont have any expectations... (Score:3, Informative)
2. Zope can use a relational backend as well. It's just not as fast most of the time.
3. Caching is the key no matter what you use.
Re:dont have any expectations... (Score:5, Informative)
*BUT*
the cool thing is that you can add a product called "zope accelerator" or something similar to that
to your zope page and set up a squid in front of zope...
On the squid config, you establish a trust relation pretending that zope (actually this zope accelerator") IS another proxy (sibling).
what happens now is that:
zope sets a expiry date for your non-changing documents to way ahead in the future (you set this value).
and squid caches it... and NEVER asks zope for it until this content expires...
if you change this content, zope will then TELL squid to invalidate it's cache...
so the next user that goes in gets the updated page...
Have you seen how fast squid can get? for serving stuff already in it's cache?
and ZODB itself can't be clustered (actually it can, with ZRS [zope replication services] which is not free from zope.org]) zope can....
and if you benchmark your web pages, you will notice that ZODB takes VERY little % of the processing time... with python + zope itself getting the objects and preparing them for presentation taking up the rest.
So: you can build very scalable zope servers... you just need to know how to do it
think in the lines of : 1 or 2 squids (they can be on the zope servers themselves, as squid takes little CPU), 2 zope servers doing load balance (zope does that natively) and a ZODB server (can be on one of the servers if you are budget constrained).
or you can shell out some cash and get ZRS to replicate everything, including the zodb.
Re:dont have any expectations... (Score:2)
You'd be surprised. While I've not personally seen any ZODBs measured in TB, I've seen ones that function in real life with decent traffic that are measured in GB. In particular I know of one site with heavy traffic that boasts a Zope installation that mounts multiple good-sized ZODBs some of which are over 20 GB.
Mix in ZEO and Squid, and you can have an extremely powerful system.
Zope sites are more easily scaled than PHP sites are maintained
Re:dont have any expectations... (Score:2)