FreshMarker 2.4.0 Released
Just in time for St. Nicholas Day, the latest FreshMarker release for this year is now available. In addition to several improvements, two bugs have also been fixed.
Thoughts on agile software development
Just in time for St. Nicholas Day, the latest FreshMarker release for this year is now available. In addition to several improvements, two bugs have also been fixed.
Spider charts, also known as radar charts, are among the most versatile tools for data visualization. These circular charts make it possible to display multiple variables simultaneously and present complex data sets in an intuitive form. They are particularly valuable for analyzing performance indicators, evaluations, or comparisons between different objects or time periods. Wouldn’t it be nice to have Playfair generate spider charts?
You may have noticed that the Playfair project started with the JFreeSVG library and has now switched to the EchoSVG library. Both libraries have their advantages and disadvantages, but JFreeSVG’s GPL 3.0 license in particular makes working with it difficult in many projects, often even impossible. With the next version 0.7.0, Playfair will switch to the Apache 2.0 license. This would be a little too little content for a blog post, so let’s take a look at one of EchoSVG’s weaknesses.
While searching for a name for the new project, I looked up the inventor of charts for fun. I was amazed to find that this person actually existed. William Playfair (born September 22, 1759, near Dundee, Scotland; † February 11, 1823 in Covent Garden, London, England) is a pioneer of information graphics and is considered the inventor of bar and pie charts. What an unexpected opportunity to honor this man. The name also fits perfectly with an open source project that aims to provide simple charts without a lot of fuss. This article shows what has changed since the first bar chart and how much Java takes off our hands.
Just in time for Halloween there is a new FreshMarker release. Here is a list of the most important new features. the rest can be found in the release notes.
After the release is before the release, so there are already some new features in the queue for FreshMarker 2.3.0. Since it is not always worth writing a separate article for a feature, here is a report on the new features planned so far.
The latest version of FreshMarker, the Java 21 template engine, is now available. Version 2.2.0 introduces several improvements and new features. Some internal improvements ensure even faster processing.
The FreshMarker template engine has the Partial Template Reduction feature. This makes it possible to create a new Template from an existing Template by adding an incomplete model. Some constructs are simplified in the new Template because the data from the incomplete model could be evaluated there. Until now, this could only be used in directives and interpolations, so why not use the mechanism in expressions as well?
This article on performance was not actually intended to be a multi-part article. But if you take a closer look at your own code through performance glasses, you will quickly discover further bottlenecks. In this case, it’s an unclean modeling that FreshMarker has been carrying around since its early days. This article is about how this affects the performance of the template engine.
In addition to the expressiveness of the template, the number of supported data types and functions and the expandability, performance is a decisive criterion for a template engine. FreshMarker only evaluates the template output at runtime, so although the template engine is very flexible, it cannot compete with those that evaluate the templates at compile time. For historical reasons, FreshMarker also has no upfront type information about the data used, so some optimization options are not available.