I believe
html/template performance may be significantly improved, since currently it is very slow. The general optimization rule, which may be applied to any code, including html/template, is: write benchmarks, profile, use less reflection and re-use byte buffers.
But I have no desire to look into html/template performance, because I don't like html/template syntax :) Why learning yet another language for templates, which significantly diverges from Go syntax and has much more limits comparing to Go? It would be better to have a simple template language containing a couple tags for the most frequently used functionality, while other functionality (mostly various data transformations) could be easily implemented with arbitrary Go code embedded into templates.
Python has such a template engine -
mako templates . Previously I took part in the
prom.ua development - a big old e-commerce project with a lot of functionality and business logic. Thanks to mako templates, new UX features were developed very quickly and without significant problems (like spreading highly coupled transformation logic for a single specific template block among multiple places in the code because of template engine limitations). Many UX A/B tests were implemented only by modifying a couple of places in mako templates without touching the main logic.
When I switched to Go, I couldn't find decent mako-like template packages there. So when the need for such a package has been emerged, I re-invented the wheels and implemented
quicktemplate, which works 20x faster than html/template as a nice bonus :)