First look at the Magento 2.1 upgrade
Since March of this year, Razoyo has been executing all new Magento builds on Magento 2.x. In a previous article we evaluated of 2.0 and compared it to Magento 1.9. One of the things we found while working with Magento 2 was that there were still a lot of core bugs to work out (which we had to fix ourselves) and that we couldn’t rely as much on extensions for common functionality. In the end, though, we have a number of successful 2.0 builds under our belt and have shifted now to Magento 2.1.
Magento 2.1 on the surface
We do a lot of catalog data design work for our clients, so, improvements to working on the catalog are some of the first things that we noticed. Without going into detail on the errors we received on previous versions, most of them appear fixed including some upload errors and errors that occurred when saving products.
The software still seems to spit out random error messages in the admin panel. For example, when the uploader runs into a problem it may tell you that the issue is you are trying to update a product that doesn’t exist rather than you have a row in your database where the sku field is either empty or has a null value. However, I might note that Magento 1 did the same, so, I would say the set of errors we receive in Magento 2.1 is more similar to the set that we received in 1.9, i.e., it is vague and inaccurate at times, but, in the same way as before so that our catalog experts know how to deal with them.
We had some issues with the way Magento 2.0 applied discount logic. That seems to have been fixed in this version.
One of the big improvements in 2.0 was the ability to change the attribute set a product belonged to without deleting it. However, in 2.0 that only worked for simple products. It now works for complex products as well.
In 2.0, the mass product editor seemed to work for some things but not for others. Most of those glitches seem to have been worked out.
Finally, a really big one. You can no longer upload two products with the same url key. While a good catalog team will check for dupes before trying that, it’s nice to have an additional safety net for data integrity in the Magento uploader.
On the content management side, the change from tabs to accordions (see images) receives mixed reviews from my team. If you were used to the tabs, then, the change to the accordions is, in the best case, annoying. It doesn’t really reduce the number of clicks it takes to get to the area you want to work on since you have to open the accordions (they are closed when you open the page). On top of that, every time you save your changes, the accordions close again.
The product profile pages also use the accordion method. As someone who does a lot of catalog work, I think they work better here. Being able to scroll and open rather than hitting a tab and waiting for a content load speeds up workflow. My new analysts, who never worked on Magento 1, seem to pick it up pretty quickly and find it intuitive.
Under the hood
Most of the updates on the software side are a little difficult to put your finger on. Magento 2.1 seems to have addressed more visible, functional issues. However, in some cases we have seen improvements (and the code bears it out) that the indexing times have improved. We have also seen a better match in some cases between errors thrown and the actual cause of the error.
Some of the fixes that our developers noticed include reducing the number of unnecessary files copied when setting up new themes or updating layouts, improvements in cron performance.
We hoped to see some other issues addressed that weren’t. For example, when there is an apostrophe in a customer name, e.g., D’onofrio, certain functions fail to execute. One such example concerns refunding orders. Some data-typing problems were addressed on the product side. Now, we hope to see all the data-typing issues will corrected in the next update.
Community support for Magento 2.1
More and more extensions are becoming available, which is a good thing. However, we are still noticing that extension developers are missing the boat on composer. That said, they will have to issue updates to those extensions to keep them from inhibiting upgrades.
While we don’t hear too much from other developers, the buzz of late seems to be that many developers and systems integrators are still doing new builds on 1.9, though, others, like Razoyo, have shifted all new development to 2.x.
I guess the big question about Magento 2.x for most developers, agencies and merchants out there is whether or not the Magento 2.1 release marks the right time to throw their hat into the ring. I think it is really a question of resources and will depend on the individual organization. If you have a large group of developers or those developers are outsourced, I would be cautious about it. A developer who has a firm understanding of OO PHP and more general programming patterns needs to oversee all code. Familiarity with the ‘magic’ classes of 1.x is now more of a liability than an asset.
Because our team is tight, works together in the same room, and has a competent software engineer who can handle the really thick issues, we felt confident enough to take the leap. Agencies who are mainly UI designers that outsource code and/or SI’s who have large groups of developers that aren’t up to speed, yet, should wait. My advice, though, is to get your team up to speed NOW. The advantages of 2.x are becoming more and more apparent as we continue to work with the new software.
We’re thankful that Magento has released version 2.1. Magento addressed core bugs in 2.1 that caused many warranty issues in 2.0 builds. So, it will save us some time addressing issues our merchants have encountered (or will soon).