We have kickstarted seven weeks ago a new concept: A Magento Academy program to teach newcomers how to develop with Magento. And week 6 was just finished with a focus on Hyvä. And there were some things that I found interesting to share.
Hyvä as a new better frontend
Hyvä, yay! Of the eight weeks of the academy, the week with Hyvä was the busiest - simply because some frontenders are going to skip the remaining weeks, but also because some seats were taken by students who specifically came for Hyvä. The course spread across two days (Monday and Tuesday) and focused on all of the important tech:
First, the comparison of frontends. Next, the stack of Hyvä, the various modules, the concept of the reset theme and how to get started with your own child theme properly. Next, Tailwind was discussed - not with endless examples of silly HTML stuff, but actually much more in-depth by discussing the JS-based configuration, being critical about
@apply, JIT vs AOT, dealing with CMS content while purging and other scenarios. After Tailwind, ViewModels were discussed and then again a larger chapter about AlpineJS. The React Checkout was discussed and demo-ed, with a little off-road explanation of GraphQL. And then finally MageWire came up as well.
The days ended with some theory on compatibility modules. After the two days of lecture, the remainder of the week could be spent on self-study and assignments, all served from the Yireo Courseware Portal. Plenty to do in a week.
Hyvä Checkout aka MageWire Checkout
Earlier, I already helped out one agency with a Hyvä kickstart and this allowed me to prepare for MageWire and more specifically the Hyvä Checkout which was at that moment only just a few weeks old. The simplicity of steps is amazing - adding your own step, reordering steps, extending existing steps. And adding fields no longer requires a huge XML tree (Christmas) and weird mixins, but is supported easily: EAV attributes can be added from the Admin Panel. I actually don't know about extension attributes yet.
The fact that the whole thing is driven by MageWire is refreshing: The AJAX calls seem slower than REST calls, but the overall performance is just much much better. And everything is driven by simple PHTML templates with ViewModels. No mix of PHTML templates and HTML templates like with Luma its Knockout magic.
All in all, I do believe that the Magento ecosystem is better off by choosing Hyvä Themes and Hyvä Checkout. And I did make many suggestions in this direction during the Magento Academy, while telling I was biased and spoiled repeatedly.
The licensing thing
If you know about Hyvä, you probably have heard that it is not available for free. You have to pay a license fee to get on board: € 1000. For some people this is a steep license, especially in countries with lower rates. But in western countries, this license fee can be easily justified with a simple calculation: If a developer costs 50 Euro per hour, then Hyvä must save you 20 hours development time - spoiler alert: it does. Looking at performance for instance, many developers waste dozens of hours to try to get the JS bundling of Luma right. With Hyvä, there is no bundling, there is only one library - AlpineJS.
In a similar way, Hyvä Checkout is also available against a fee. In the end, this will be again € 1000 for one year support. And again, this could lead to a comparison in labor. I've just spent hours within the Luma checkout adding a new field to the shipping step and connecting that field to an extension attribute. I have to be honest by saying that I didn't try this myself yet in Hyvä Checkout, but I do know that the Christmas tree and mixins belong to the past.
Additional costs for a Magento Academy
For me, the challenge is not necessarily with these license fees. But the challenge lies with working with these technologies while there are fees involved. Should I just promote free software? Or should I promote the best software out there, even though it is not free? I have chosen that last option. An obvious question from the students was whether there was a developer preview available for free or at a lower cost. The answer is that there is no such a thing. I just turned this around by saying that an agency already invested money to follow my Hyvä course, so that the decision to invest more (with the license) could simply be based on that preview during the course.
Paying money for software is not strange. With Windows and MacOS everyone is used to this (even though there is often a package deal with the hardware). Paid extensions with Magento are also a common thing. And for developers, this makes sense as well: Postman, Windy, specific PHPStorm plugins (like the one created by Atwix). ChatGPT obviously. And the main thing is that if the monetary investment allows you to develop more efficiently, it should be worth it.
Next Magento Academy?
Anyway, the Hyvä week was a success. The next Magento Academy we'll be organizing (starting in September 2023) will definitely focus on Hyvä again. Perhaps more days, perhaps a different mix of in-house training and online materials. The current planning of that academy is not solid yet, I'm trying to learn all of my lessons during the current academy and tune things to the max for the next time. But I do know that I'm going to announce more clearly that the investment in a Hyvä license is going to be a worthwhile investment.