In this Q&A series, we speak to Magento developers to share what they’ve learned about Magento 2 with the community.
This month, we spoke to Muliadi Jeo from Magento Professional Solution Partners ICUBE. As an agency, ICUBE have gone all in with Magento 2. Muliadi shares the reasons why they have fully embraced Magento 2, and how getting involved in the Magento community can be powerful for learning.
Fooman: ICUBE has been an early Magento 2 adaptor for client builds. Talk us through this decision.
Muliadi: We have decided to jump ship to M2 on almost all of our projects this year. We know there is a big risk but to make sure that our clients are getting the latest support from Magento (and because Magento is only selling M2 Enterprise licenses), we decided to go with M2. We are fully embracing M2 at this point.
The other reason we recommend M2 is because it has cleaner interface and much better backoffice function (manage product, manage orders, etc). One of the issues that I had with M1 that I am so glad they fixed in M2 is the way configurable products are now driven by simple product price.
In general, I think M2 is moving to the right direction. Technology wise, it adopts all the new stuff like knockout js, less, clear separation between backend and frontend development. However, I think at this point we find ourselves still some way to go to be completely “proficient” in M2 as we are with M1.
Fooman: What’s a recent website your team has built on Magento 2?
Muliadi: We built the Body Shop Indonesia site on Magento v2.0. Overall when we reviewed the requirements of their design and the checkout process, it fitted nicely into M2 default Luma template. So the skinning effort is quite flawless.
The site requirements included a customized PDF printout for the warehouse to print custom picking lists and order receipts. We decided to use Fooman Pdf Customiser and Fooman Pdf Picking List to achieve this. We used the extensions out of the box.
Fooman: What’s one important lesson you’ve learned so far about Magento 2?
Muliadi: Be careful choosing between M 2.0.x and M 2.1.x. Don’t assume that what works on one version will work on another without code changes. There are a few major changes that can make your code break. For our projects, we have to build new payment modules. That is one of the major headaches here in Asia. There are so many payment providers here so we have to build our own custom modules. We started a project with M 2.0.4. But then when we tried to use that same module on another project on M 2.1.x, we found out that a lot of re-work needed to be done to make it compatible.
Fooman: What’s your top Magento 2 tip for other developers?
Muliadi: Don't be afraid to reach out to other community members when you are stuck :) Expect things to break and the community is your friend to get things resolved. For example, we struggled a lot during the creation of one of the payment modules I mentioned above - things like why our module is not redirecting correctly, or why it’s missing data from order object. We rely so much on going to StackExchange and getting help there to solve problems like these.
It’s great to see a lot of help from Vinai Kopp and Alan Storm about Magento 2. But definitely we need more guides on all the best practices, and we definitely need more "mentors" in M2. I would like to see more hands-on training articles highlighting best practices in how we extend Magento 2. Of course, there are already some good materials there (i.e. Mage2Katas by Vinai and all the articles from Alan), but sometimes we also need more “practical” articles too on “how to”.
Fooman: It sounds like the Magento community has played a big role in your learning about M2.
Muliadi: In Indonesia, we just started building our developer community. We have our own community forum to support developers in our native language.
Fooman: That must be a great way of getting developers to really engage with asking and answering Magento questions, because they don’t have to feel pressured to ask every question in English.
Muliadi: Absolutely, that is part of the struggle for the developers here. The language barrier is there. To be able to reach out to much more developer pool, building this local community is important for us.
Fooman: What are some ways you personally get involved in the community?
Muliadi: We are proud to help to grow the Magento Community in Indonesia through iCUBE hosting the first Meet Magento event in Jakarta this year. 300 people showed up, and half were developers. We had 22 local and international speakers talking about a range of topics from technical to marketing. We are looking forward to doing it again next year.
Muliadi Jeo is Founder and President of ICUBE. He has 16 years experience in ecommerce especially in the area of omni-channel and social commerce. Some of the early clients include Surefire, eHobby Asia, TOMS Shoes, RelaxTheBack, Rayban, Behr, Oprah Store and Footlocker. Muliadi launched ICUBE Indonesia in 2010 and since then has been focusing on helping local e-commerce startups and single and multi-brands retailers in Indonesia.
ICUBE is one of the leading Magento Professional Solution Partners in Asia Pacific. ICUBE has 40+ developers and 15+ certified magento developers in house. Clients are mostly retailers and e-commerce startups, serving both North America and Asia Pacific. Some recent projects are Shopdeca.com, Kawanlama.com, Klikmro.com, Krisbow.com, Ruparupa.com, Gramedia.com, SophieParis.com, ES.id, TheBodyShop.co.id.