[Analysis] Templates: The good, the bad, the ugly
gerv at mozilla.org
Wed Dec 8 23:23:18 UTC 2004
> What was supposed to happen?
> Visualization items (eg, the HTML, etc) was supposed to be completly
> seperated from code for all content generated by Bugzilla.
That's not quite right - it's not "what was supposed to happen?", as if
there was some deadline. It was more "what was the aim?".
> What did happen?
Similarly, "where have we got to so far?".
> What went wrong?
> While it's true that the presentation and the perl code are now seperate
> from each other, there is still a lot of code in the middle of this
> presentation. This code is in the form of template directives, some of
> which are just as complicated as perl code.
Perhaps we should file bugs on simplifying the most complicated of them.
Although I challenge anyone to write the boolean chart template
directives in a more simple way while still having them work. :-)
> Templates first came to life in Bugzilla as part of a completely unrelated
> patch with little to no discussion beforehand about the implimentation,
> template package, etc.).
Well, sort of. Myk was just bored of waiting, maybe :-) And it's worked
out for the best, IMO. I really like TT.
> The process was started in the middle of a development cycle and became
> one of the blockers for the next release. Because it was such a huge
> undertaking and reviews often took a considerable amount of time (and that
> was just finding the reviewer!), the stable release was delayed numerous
True, if you are talking about the 2.16 release (for which most of the
templating was done). But it's a bit late to post-mortem that, isn't it?
> Speed. While I haven't run any benchmarks, I've gotta believe that the
> introduction of another processing engine (eg, Template Toolkit) had a
> negative impact on our speed.
If you count this, then you need to add "increased developer
productivity" to the "what went right" section.
Has the speed decrease, if any, been significant enough to cause
long-term problems for any sites?
More information about the developers