Zope Products
This month we discussed Zope products and saw how to download, install and configure products on our system. While products are inherently more complex than simple DTML pages, their centralized code and additional flexibility make them more suitable for serious tasks than DTML.
Next month we will look at how we can write our own Zope products using a combination of Python and DTML.
email: reuven@lerner.co.il
Reuven M. Lerner is a consultant specializing in web/database technologies. His book, Core Perl, was published by Prentice Hall in January 2002. He lives with his wife and daughter in Modi'in, Israel.
- « first
- ‹ previous
- 1
- 2
- 3
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Designing Electronics with Linux | May 22, 2013 |
| Dynamic DNS—an Object Lesson in Problem Solving | May 21, 2013 |
| Using Salt Stack and Vagrant for Drupal Development | May 20, 2013 |
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
- seo services in india
2 hours 24 min ago - For KDE install kio-mtp
2 hours 24 min ago - Evernote is much more...
4 hours 24 min ago - Reply to comment | Linux Journal
13 hours 10 min ago - Dynamic DNS
13 hours 44 min ago - Reply to comment | Linux Journal
14 hours 42 min ago - Reply to comment | Linux Journal
15 hours 33 min ago - Not free anymore
19 hours 34 min ago - Great
23 hours 22 min ago - Reply to comment | Linux Journal
23 hours 30 min ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Featured Jobs
| Linux Systems Administrator | Houston and Austin, Texas | Host Gator |
| Senior Perl Developer | Austin, Texas | Host Gator |
| Technical Support Rep | Houston and Austin, Texas | Host Gator |
| UX Designer | Austin, Texas | Host Gator |
| Web & UI Developer (JavaScript & j Query) | Austin, Texas | Host Gator |
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?




Comments
Re: At the Forge: Zope Products
Very nice article!
Greate list of the ready for use Zope products can be found on content management software info
Modular DTML & the future of Zope Products
The author says: "DTML exists inside of individual documents, rather than in a central location. If we want to reuse functionality in multiple places, then we must copy our DTML methods and documents". Of course DTML methods can be isolated, modularized, and re-used. All that is required is to create a seperate DTML object, and to include a DTML reference at the point where it should "appear" in the document. How hard is that?
However, the observation that DTML ceases to satisfy as the task complexity increases is spot on. That's where Python Methods come in. Regardless, Zope Page Templates are the current "better way" to do DTMLish things. For the lone Zopemeister DTML may be fine, but not for Zope coders toiling in environments where Web Designers are cranking out "look and feel" using their favorite "Web Processors". Popular WYSIWYG page weavers just can't swallow DTML tags without pitching a fit.
As for Zope Products, there are lots of them out there, and like DTML, they will linger for a long while even after the whole Zope Product way has succumbed to Zope Components. The trend is already clear, as seen in the Zope Content Management Framework (CMF), the component core of which forms the foundation of Zope v.3. Open Source projects are so dynamic due to the constant flurry of improvement and discovery. Still, the rate of change can be a bit draining.
The gotcha that Zope Product fans eventually tumble to is a total lack of integratability at the object level. Any large project must be thoroughly designed at the outset, or suffer from endless re-writes as new and unanticipated features are added. Zope Product coders must wake up at night in terror of the boss asking them to merge two pre-existing packages to consolidate functionality. Zope Components promise to remedy this problem, even more completely than ZPatterns does with it's abstraction of databases and other resources to enable object sharing between applications.
Re: At the Forge: Zope Products
for a really good example of Zope at its finest check out plone.
Re: At the Forge: Zope Products
I think this statement is not quite true. Every experienced DTML programmer should know well about how to create code logic and reuse it throughout the site, rather than copying DTML codes into individual documents.
Most of the problem is that you'll easily meet DTML gochas if there's no concrete sense of acquisition.
Re: At the Forge: Zope Products
This is WRONG !
Acquisition allows you to have ONLY one method and use it anywhere. That's acquisition and that's good (tm)
Didier.
Please do not say things unless you know about !
Re: At the Forge: Zope Products
DTML is going to fade away soon because of new technology
available in Zope 2.5
ZPT (Zope Page Templates) are the way to go now,
NOT a combination of python and DTML. DTML IS DEAD. LONG LIVE ZPT!.
With ZPTs you can have 100% separation of code, design and content. You can write just (extended, but correct) HTML pages using WYSIWYG tools and some python scripts.
Read ZPT ZWiki pages or more info
The most powerfull product (extension) for ZOPE is CMF (Content Management Framework) used together with DCWorkflows. CMF services will be part of Zope3 core (this summer).
plese write something about making Products (or Products for CMF), but NO DTML PLEASE!@!@!
David Pravec -- IRC nick alekibango
/join #zope at IRC server irc.openprojects.net
Re: At the Forge: Zope Products
DTML is going to fade away soon because of new technology
available in Zope 2.5
ZPT (Zope Page Templates) are the way to go now,
NOT a combination of python and DTML. DTML IS DEAD. LONG LIVE ZPT!.
With ZPTs you can have 100% separation of code, design and content. You can write just (extended, but correct) HTML pages usig WYSIWYG tools and some python scripts.
Read ZPT ZWiki pages or more info
The most powerfull product (extension) for ZOPE is CMF (Content Management Framework) used together with DCWorkflows. CMF services will be part of Zope3 core (this summer).
plese write something about making Products (or Products for CMF), but NO DTML PLEASE!@!@!
David Pravec -- alekibango
/join #zope (at irc server irc.openprojects.net)
Re: At the Forge: Zope Products
ZPT may well acheive the laudable aim of separating layout from logic ut it odes so at the expense of comprehension. ZPT has to be one of the most ridiculous technologies I have ever come across. EVERYTHING about it is counter-intuitive. Code (and by that I include HTML) is meant to be read (not separated), and ZPT is a fairly pointless nightmare (DTML is as bad as, say, ASP or PHP but at least you can work out what it does.)
One of the benefits of ZPT is that designers can work on the same page as programmers. Oh come on, I've yet to meet a designer that couldn't knacker up the "hidden" code with a page with their eyes shut.
And as for WYSIWYG tools, well I've yet to meet a hardcore designer who will admit to using them.
Zope is more than a single technology, and DTML is one strand (which I both loathe and love) that, even if is a bit odd is still easier to understand and use than sodding ZPT.
tom
Re: At the Forge: Zope Products
DTML is a better solution than ZPT for hand-coded templates.
DTML is not going anywhere, and is better suited for these examples since (correct me if I'm wrong here) this site is written for humans, and not for WYSIWYG applications
Re: At the Forge: Zope Products
Nice article... I can't find the other article refered to on the zope server though?
Does anybody now where to find it.
Re: At the Forge: Zope Products
The first part of this article is:
http://linuxjournal.com/article.php?sid=5619
if this is what You mean ...
Re: At the Forge: Zope Products
Right now, it looks like it is only available in the print version of last month's LJ.
Re: At the Forge: Zope Products
I really like Zope a lot but the Products system is one part of it I would really like to see improved.
1) Everything can be done over the web interface, except installing products. There is one product that enables this function BUT it only works if the products are packaged in a consistant way, which they aren't. Yes, such a system would be a security hazard. I wouldn't attempt it without strong admin passwords and SSL.
2) The products vary wildly in quality, usefulness, completeness and how you install them. Squishdot is a shining example of a fully-functional product. What would be helpful would be,
a) Standard root directory to zip/tgz the product from,
b) Products passed through a QA system before being "official", like Postnuke do,
c) Minimum standards for documentation i.e. it might be useful to know what some of these products actually do before downloading them,
d) A "tested against" chart to see what version of Zope the product would work with,
e) Screenshots for all of them!
Re: At the Forge: Zope Products
In response to your points:
Having said that, Zope is so easy to install that I have zope running on a variety of boxes (including windoze) and mostly "Q&A" products myself before deploying them on my production server.
Martin Wehipeihana
Re: At the Forge: Zope Products
Well written; I found it very useful. Good work
Re: At the Forge: Zope Products
Yepp, well done mate.
Perhaps you should have mentioned something about the
mxm Easy Product (http://www.zope.org/Members/maxm/HowTo/easyProduct)
Another article another time perhaps? ;-)