2010/9/1 Sean Corfield <seancorfi...@gmail.com>: > On Wed, Sep 1, 2010 at 12:33 AM, Laurent PETIT <laurent.pe...@gmail.com> > wrote: >> Can you expand your thoughts ? > > Sure :) > > But I just read the link Greg posted about Gulliver and that's pretty > much what I was thinking about. > > Some approaches to generating web apps in some languages / framework > lean toward doing it in code - which means designers cannot work on > the HTML. Some approaches take the opposite approach and strip > everything dynamic out and expect you to apply some external magic to > re-integrate the dynamic portions - again the HTML is incomplete and > often HTML fragments are generated by code and designers cannot > reasonably work with it. > > The ideal setup, in my opinion, after using all sorts of different web > frameworks and languages over the last 14 years, is to have all the > HTML in the template - code never generates HTML - and to have *some* > markup in the HTML template to allow: > * dynamic variable substitution > * conditional selection > * looping > * including other templates (or some sort of 'wrapping' to make > layouts with common elements easy to work with)
Interestingly, after reading the above bullets, I first thought you were describing what enlive is doing ! :) > > Designers find this easy to work with (as long as you keep the dynamic > markup to a minimum). Developers find this easy to work with because > they can keep HTML separate from code (and therefore focus on logic in > their code). > > As for the comparison between Enlive and jQuery, the difference is > that a) the JS code is 'visible' from the HTML (either inline or > directly included) and b) many designers are familiar with JS and > consider it part of the whole HTML / CSS / JS ecosphere. Note that > wholesale rewriting of HTML on the fly with JS detracts from the > ability of designers to work on templates. > > I guess a question I could ask is: how many people here build large > HTML websites with embedded dynamic applications? > > I was the lead architect for macromedia.com - my team rebuilt it from > HTML / BroadVision / Perl to HTML / ColdFusion. When we relaunched it > in 2003, it had about a dozen web applications woven into the tens of > thousands of HTML pages and during my time on that team it grew to > about 50 web applications, some with Flash / Flex front ends. > > One benefit of CFML is the ability to use a single language within the > HTML templates and for all of the backend logic. JSP tag libraries > have become pretty sophisticated over the years and are getting closer > to what you can do with CFML - but of course using Java on the backend > means you lose the benefit of a dynamic scripting language that is > compiled on the fly (so when developing you can just edit code then > reload the page in your browser). > > The various dynamic scripting languages that have appeared recently - > or at least experienced a surge in popularity - bring that benefit to > the table and some of them have added the "minimal logic in HTML > template" features to deal with large scale web application > development. > > (and, yes, I'm very aware that there is a lot of terrible CFML code > out there - that's the downside of having a web development language > that is so easy to learn that non-programmers build large codebases... > Visual Basic suffered from the same issue...) > -- > Sean A Corfield -- (904) 302-SEAN > Railo Technologies, Inc. -- http://getrailo.com/ > An Architect's View -- http://corfield.org/ > > "If you're not annoying somebody, you're not really alive." > -- Margaret Atwood > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en