-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Martijn Faassen wrote: > Martin Aspeli wrote: >> Peter Bengtsson wrote: >>>> Philipp has posted a blog entry with a good example of Grok code: >>>> >>>> http://www.z3lab.org/sections/blogs/philipp-weitershausen/2007_01_09_you-thought-zope-3-wasn >>>> > >>> Gorgeous! >>> I especially like that you don't have to manually define the template >>> since it's picked up automatically by name. >>> >>> Will the grok effort yield any codegenerating scripts and stuff like >>> the django folks have? >>> If not, I have some ideas that I could maybe contribute with at/for >>> the next sprint even :) >> Code generation sucks. :) > > I agree. I'll highlight what you say below: > > > - You should never, ever *need* code generation. > > I think the language/library/framework should be powerful enough to > write things down quickly without the need for code generation. Code > generation where the end result is something that is expected to be read > or modified by humans is generally bad, unless it's just about quickly > setting up an empty project. We will be looking into this for Grok.
While I am vehemently opposed to code generation per se, one alternative which I think is important is to generate stuff *at runtime* from artifacts which are more understandable to business users than Python code. E.g., they might specify schema in a spreadsheet, an HTML form, or a UML diagram, which we then use to create a schema interface (my 'userschema' package[1] does this already for the first two). >> But: >> >> - ArchGenXML (hacky though it is) is great for business types because >> it takes UML (which business analysts understand and customers can be >> talked through) and produces content types they can CRUD with. >> Seriously, I've seen people sell big Plone jobs on AGX (kinda scary). > > Yes, and even though I think everything I said above is true, I also > think that tools like ArchGenXML can be valuable. I just don't want such > a tool to be a way to generate repetitive bad code, as usually I'll be > working on the level of the code. If there is to be tools, I want a tool > like that that can generate clean non-repetitive code. That is, I don't > want a tool to become an excuse to say: oh this code can be repetitive > and unwieldy, it's just you use a tool to generate it anyway. > >> - Don't invent a new code generator. Please. :) PasteScript does quite >> well, and seems to be adopted by others, e.g. Pylons. We already use it >> to make new egg-like packages for Plone. > > Agreed. We're looking into PasteScript, I believe. Philipp has been > looking into this. [1] http://agendaless.com/Members/tseaver/software/userschema Tres. - -- =================================================================== Tres Seaver +1 540-429-0999 [EMAIL PROTECTED] Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFFpQ+2+gerLs4ltQ4RAl5rAKDQ0C/V/R6d9m3J3mqwoDUMeeOvPwCgyIbo 0WKDfLV8KnVjUxuAaPvvD3o= =auQd -----END PGP SIGNATURE----- _______________________________________________ Zope3-dev mailing list Zope3-dev@zope.org Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com