For those who have not been following this thread, here is the proposal.
http://wiki.zope.org/zope2/ZClassesNG
I will go ahead and change the name. I have a name proposal at the end of this email.
Last night I realized that this proposal, will make it really easy for me to
create Archetype Classes on Plone. Suddenly Plone development goes from
painful to fast and easy, and I can build my new apps on Plone reasonably
quickly. Which I need, because I am moving from a single person company to a
multi-person company, and the whole approvals cycle is now becoming much more
important to me.
Just for completeness, I do need to respond to the specific feedback I received.
If there is such an easy translation from ZMI-based ZClass to filesystem
product, then why not write the filesystem product in the first place?
There is room in the world for both through-the-web development and file system
based development.
On his personal home page http://zwiki.org/JimFulton Jim Fulton, the Zope Pope
writes:
"Make ZWiki subclassable from ZClasses. This will make it a lot easier to
experiment and innovate."
So I am in good company on the need for through-the-web development.
Have you seen how many lines of code it takes on the file system to put up a simple product with 1 instance variable? I am just not as smart as others. I make mistakes. If I can do a simple point and
click to create a product, I will make fewer mistakes, and it will be generated faster, and I have more time for other things. There is just too much software which needs to be written.
You're assuming there is an obvious one-to-one mapping between ZClass
syntax and non-ZClass products on the filesystem, which may or may not
be true.
That is a good point. I expect to see several different patterns to emerge, all of which can be supported. Right now I see multiple classes in a single product.
You're relying on code generation, so you'll run into trouble when the
two versions (ZODB and filesystem) diverge for whatever reason (someone
edited the code, say).
Good Point. Better only edit the code in one place or this problem will arise.
I will add a read me to the file system, saying DO NOT EDIT THIS CODE ON THE
FILE SYSTEM! And a flag, perhaps a file name, DO_NOT_OVERWRITE which will
prevent overwrites. Just think, this will be the fastest way to generate a
new zope product. That alone makes it useful! I added this comment to the
proposal wiki. Thank you very much Martin!
Also, Zope needs a restart to load a new product, which will mess with
the workflow.
Great Point. I hope this one is fixable. I would think it should be possible for Zope to be able to dynamically unload a Product, or load or reload a product. I wonder why it does not do so now? Is this fixable? Of course once the product is loaded, a refresh.txt option allows it to be changed and rewritten dynamically.
But the bigger picture here is that an awful lot of people are telling
you that spending your time on this is a bad idea, that you'll probably
find it more difficult than you imagine, and that if you are going to
invent new things, your time may be better spent pulling the same
direction that most other people are.
Well it all depends on how you define better.
By all means, give it a go, but you will probably find it difficult to
get help when you are stuck because (a) no-one else seems to care and
Well maybe this is not the right mailing list. Let me go see what the archetypes mailing list thinks of all of this. Besides this is pretty easy to do. I have written file-system based products in Zope and Plone.
(b) not many other people seem to even know how this should work.
I think the best way to explain how it works is to put up a demo site. If I can improve the written description in any way, let me know. Which part of it do you personally not understand? Clicking to define instance variables? Autogenerating the File System Folder? Aquiring the instance folder at run-time to give the appearance of instance methods?
I do agree with you on one point. It needs a different name. Can I call them
LozinskiClasses? I am surprised more people do not ego-name products. Look a
new word!
Regards
Chris
_______________________________________________
Zope-Dev maillist - Zope-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )