Recently I was doing a course on refactoring.guru and got the idea to add another series on my blog. This time it will be a series about reviews of materials that fall into my hands. The interactive course from refactoring.guru called Dive Into Refactoring will be the first review.
The course presents various code smells that can appear in the code and proposals for their refactoring. We can choose from 3 languages – C#, Java and PHP, it consists about 90 topics such as Primitive Obsession, Speculative Generality or Introduce Parameter Object. Each topic is processed in the form of a problem description, a solution, an example code that can be applied, and a summary. In some cases, we also have the option to go through the refactoring process step by step.
After completing the course, we will get a certificate that we can post of on social networks or add to resume. The course itself costs 39.95 euros, which seems to be quite a small price for this type of material.
You can find more details about the course directly on the website, I encourage you to read them before buying.
The undoubted advantage of the course is its interactivity and the fact that we can see the progress we are making while working through subsequent topics. The topics appear in the form of slides and there are cutscenes with the code. Thanks to this we don’t have the feeling of reading a wall of text, so it is easier for us to keep our attention. Additionally, when discussing the problems, we can see alternative ways of solving the problem, so if we feel better with another pattern, we can always choose it instead. Of course, the low price is tempting too. A slight advantage is also that the entire course is available offline.
Unfortunately, there are also things that I didn’t like. First of all, materials from the course are already available on the refactoring.guru, so with the course we only get a more interactive presentation of them. The course itself seems stretched to me, some topics are discussed many times in both code smells and refactoring techniques. Another disadvantage is the flat structure of the course, during the first pass, we can’t choose the category that interests us, we have to go through all the issues one by one, it makes the search really difficult, if we want to return to the course and find a topic that interests us. I would love to see categories and advanced search.
If I had to make a decision based on the knowledge that this course provides, it’s difficult to find competition at such a low price. Other courses that cover refactoring topics are much more expensive and often focus on a single area. Nevertheless, the course can be tedious at times, due to its length, repetition of topics, and fact that all its content is also available on the website, I would rather think about it in the category of thanking the author for his effort in describing the topics of code smell and refactoring techniques than additional materials, which can extend the topics described on the site. Unfortunately, due to this and the fact that it would be very difficult for me to search for the topics covered in the course, I think that I can’t recommend this course unambiguously, but if you have free funds from the training budget and you want to go through the basics of refactoring in a pleasant way, then you can go for this course.
Let me know how you like this series. I already have a few ideas for more reviews!