You, me and Magento

David manners
3 min readAug 3, 2017

--

magento2 github

A journey into open source with Magento

Since Magento 2 has been on GitHub I have heard people say “If you don’t like something give us a pull request”. So I thought I would put this to the test and see how easy it would be to change something I don’t like in the Magento code.

One of my biggest issues with Magento2 is the fact that it still has dependencies on some Zend Framework 1 components. So I decided in January 2017 thinking it would be super easy to remove or replace these components. Spoiler: I am still working on this 6 months later

The first pull request

I jumped straight into the Captcha module and worked on the 3 files that at the time used Zend_Json. The first thing I noticed was how active the team was, within a couple of hours I had my first comment, which lead to my first change to this PR. I awoke the next day to a couple more comments that also lead to a couple more changes to my pull request, then a couple more comments and changes, then some discussion and a few more changes. Then finally 1 week after creating the pull request it was merged and was hooked ever since.

Progress

Since this first pull request there have been 33 more, some merged and some rejected but all with clear comments from the Magento team. At the time of writing I am down to the last instances of Zend_Json but hopefully it will soon be gone. With the help of the team I feel I have made some real progress here and improved the code base.

Top Tips

If you feel that you would also like to get involved with Magento’s open source push then I would recommend the following:

  1. Pick a topic you have passion for,
  2. Talk often and early,
  3. Connect with the team via github, twitter and slack (request to join via engcom@magento.com),
  4. Be open to ideas,

For me this process has been longer than I naively expected. I thought that within a couple of weeks Zend1 would be gone, but luckily I have passion of this topic so it did not matter that it took longer. The team, and in particular Oleksii, have been very supportive and encouraging through this whole process. There has been plenty of discussion on my pull requests which has lead to opening my mind on a wide variety of topics.

I think that open source does not just mean we can push code to Magento and expect it to be merged but that we as developers also need to be open. Open to new ideas, rejected code, improvement requests and much more. Even with all this I feel it is worth it and I have definitely grown as a developer over these last 6 months.

The fight with Zend 1 continues and I must go on!

--

--

David manners

Loves to code, spend time with his family and eating cake!