On December 15, 2016 was the premiere of “Magento 2 Development for Magento 1 Developers”, a training I, (Andreas von Studnitz), held in Cologne. Since feedback was very positive, this will likely not have been the last time I offer this training based on this concept and therefore, I think it’s a concept worth sharing.
— Nils Preuß (@tutnix) 24. Dezember 2016
The training is designed to give the best possible overview in a short time. It’s the overview that is most important for anyone starting to develop on Magento 2. You can read the details later (pointing to helpful resources is part of the training) and learn it out for yourself, once you know the basics.
Another advantage of a short training is the option for participants to do without an overnight stay.
With regard to the limited amount of time available, it’s not possible to add exercises for participants. It’s generally true that exercises have a good learning effect, but they take up a lot of time. Just getting Magento 2 up and running on all machines can be rather time consuming, as we learnt from experience. Independently of this, I favour exercises only for a much smaller group (maybe max. 5-6 participants).
Up to 15 Participants
At this first training in Cologne, we had 10 participants, this concept allows for 15 or more. At this group size this trainer can answer individual questions and there are enough people in the room to have a lively discussion.
The trainer starts with a freshly installed Magento 2 system (or rather with the installation itself to quell the participants’ fear of the installation). On this basis, examples matching the training’s units are implemented. Thanks to the step-by-step development participants can easily follow and are not swamped by the trainer’s speed.
The decision to code live was absolutely superb because it made all doubts disappear if you are able to keep up with the speed. Another bonus was that nobody tried to write down everything, as I have often seen in other workshops. This usually leads to trouble with understanding it all.
— Nils Preuß, participant
Of course live coding inevitably leads to small or big issues and some delay. During this first training, it was all still manageable and it actually had its upsides: all attendees got a feeling for the typical pit falls in Magento 2 development.
Broad Subject Area
The following topics were covered:
- Directory Structure of Magento 2
- Frontend Basics
- Module Structure
- Dependency Injection – Basics
- Overwrite Code via Preferences
- Add Code via Plugins
- Events / Observer
- Setup Scripts
- Development Best Practice
Some deep dives unfortunately had to be left out, such as:
- UI Components
- Automated Tests
The structure was very interesting, since it contained a lot more frontend than I had expected. However, I personally liked it, as it was the frontend’s part which even backend developers can’t avoid, such as layout and controller.
I liked it a lot and it helped me, especially for hands-on development, since I hadn’t covered the topics controller/blocks/templates yet at all.
— Nils Preuß, participant
This training is not about teaching very little detail in the implementation. Instead, its aim is to offer a great overview: which options do I have, what’s the use of each method, what are the possible problems? This speeds up the actual process of learning how to use the framework and the (indispensable) task of gaining experience.
For Magento 1 Developers
Even if many development principles in Magento 2 have completely changed compared to Magento 1, Magento 1 developers certainly have an advantage when it comes to learning Magento 2. For example, knowledge about which function is in which core module or the database structure. Also concepts such as collections, layout XMLs or MVC are quite familiar to Magento 1 developers.
A basic training within one day for developers without Magento 1 experience is not doable in my opinion.
Generally, I received (mainly oral, partly written) great feedback from the participants:
I liked the training, the points we learned were explained good enough and fast enough to be understandable.
— Dominik Meglic, participant
As a developer with 7 years of Magento experience, I didn’t have any contact with Magento 2 before the training. The introduction by Andreas was exactly the right thing for starting with the new version. I got a very good overview regarding the new technologies and best practices for my first projects. Andreas transfers his knowledge of Magento 2 and his experience in a compressed way during a single day which was totally worth it.
— Gerrit Pechmann, participant