DEV Community

Cover image for Should you upgrade your Magento store at all? Developer view

Should you upgrade your Magento store at all? Developer view

Hello everyone. πŸ‘‹

This article will be a bit less technical and more about the value of the upgrade for store owners. However, all of my thoughts would be described from the view of the developer that design, implement, and maintain such stores - so expect at least some level of technical expertise and judgments here.

Obviously, we would speak in contexts of Magento 2 / Adobe Commerce / Mage-OS - but I believe that findings and ideas described here would be useful for Shopware too, as well as for any other e-commerce system.

So - lets move on and have a small walkthrough of this topic. πŸšΆβ€β™€οΈπŸšΆβ€β™‚οΈ


What does any upgrade bring us:

  • new features
  • new possibilities for developers
  • bugfixes
  • security fixes
  • agility - possibility to upgrade faster to all future New versions

Let’s check each point and ask next questions:

  • What value does it bring to the project?
  • Price?
  • Do we need this value?

New features

What value does it bring to the project?

New business possibilities for store owners. Or improved UX in case it is an upgrade of HyvΓ€.

Or improved code execution performance ( yes - I think it is a feature πŸ˜„ ).

Price?

Is it free? - YES. Then we need it! [ actually, it is not free - see my explanation below ]

That is what the client says πŸ˜„. For him, it looks like a FREE fancy addition to all the hard work that is going to be done.

Not all features from the upgrade can be easily adapted if we take into account all customization project already has - the minimum you should consider is styling, maximum - is rebuilding business logic from top to bottom.

Do we need this value?

If the store owner needs a new feature - the store owner would ask for it explicitly. πŸ˜„

Answer: more NO than yes. At least in scope of the upgrade.


New Possibilities for Developers

What value does it bring to the project?

We have some variations here, but here is a compilation of the benefits it gives us:

  • build code faster
  • Make code less shaky & buggy

Price?

Is it free? - YES. Then we need it!

That is what the developer says πŸ˜„ (dΓ©jΓ  vu). And again - it looks free, but there could be a clown that eats you alive. 🀑

Do we need this value?

Answer: It depends - but more NO than yes. Unless it is a painless upgrade from php 5 to php 7 - then totally yes, yep? πŸ˜„
Don't get me wrong - I love new technologies and new versions of old ones, and I wish to work on the edge of tech! However, is it worth it here and now? 🀷

I would plan tech stack upgrade not as an additional point to the system/extension upgrade - but as quite a big chunk of work. So plan carefully and do not think it will be magically transferred without any effort.


Bugfixes

What value does it bring to the project?

less bugs πŸ˜…

Price?

Is it a pain in the ass? - sure.

Is it more expensive than just fixing it by yourself? - usually, no.

Do we need this value?

Answer: Yes in 99% of the cases. Other 1% - Developer decides.

Upgrade is a tool to achieve a goal - in this case to fix the bug/bugs. But monkeypatch is also a tool πŸ™‰.

Choose wisely!


Security Fixes

What value does it bring to the project?

Shop won’t be spammed / hacked / Arbitrary code execution won't happen.

e.g. - no disappointed buyers attack you 😸

Price?

Well - security is priceless 😎

However, sometimes it is cheaper to just transfer security fix changes - if you know what and where to transfer, which is not usually the case.
Let’s say it this way - I would not risk the security of my client to save another couple of hours on an upgrade.

Do we need this value?

Yes - we need it. Always.

Answer: Yes.


Agility - you can upgrade faster to all future NEW versions

What value does it bring to the project?

Constant upgrades -> minimise time spent on one particular upgrade.

e.g. - clean your home once a week and it takes you half an hour, do it once a year - you would cry for help and won’t finish in a days πŸ™‰

Price?

Do upgrades constantly - usually, once a quarter you have a patch upgrade, and some small p1, p2, p… versions during the quarter. Also, once 1,5 years, you do the bigger upgrade (Minor by semantic ver and somewhat Major based on Magento lifecycle ).
In return, you will get a healthy webshop with a high level of agility to get new versions. Recent security patches once again reminded us how important it is to be on the edge (see APSB23-50 ).

Do we need this value?

I afraid so.

Answer: Yes.


Sum Up

We need upgrades. As a minimum for security and agility needs. But also to keep the shop healthy and without technical debt.

It also gets in use for other points from our list and can be useful or harmful for different points.

Upgrade, as an ability, needs to be used mindfully but not blindly πŸ™ˆ Build correct expectations from your upgrade, estimate, and plan your work accordingly.
Last but not least - explain why upgrades are needed and what is going to be delivered with this specific release.

Hope my a bit structured thought flow will gonna help you to understand upgrades, what we need to take out of them, and how to communicate it right.

Chao Kako β˜•

Top comments (1)

Collapse
 
pavelbileush profile image
Pavel Bileush

Great!