Irina Student • Graduate • Software Engineer • Online
Nov 08, 2021
Well, the first 2 weeks seemed great at Yandex-Practicum, then I discovered that their program is full of bugs which hinders understanding of the practical exercises. You have to message customer support who, in some cases, just give you the answer, and unlock the next lesson for you. So you may not understand the practical tasks because you didn't even get a chance, but you'll need them later, for the project they ask you to submit every 2 weeks.
Lessons are lo...
Well, the first 2 weeks seemed great at Yandex-Practicum, then I discovered that their program is full of bugs which hinders understanding of the practical exercises. You have to message customer support who, in some cases, just give you the answer, and unlock the next lesson for you. So you may not understand the practical tasks because you didn't even get a chance, but you'll need them later, for the project they ask you to submit every 2 weeks.
Lessons are locked, even though they say in their guidelines that they won't prevent you from learning while they review your projects. For example, you can't actually study any of the lessons in a chapter unless you complete today's lesson. Even if you don't understand it and want to tackle a different lesson to not waste time, all other lessons are locked so you're forced to complete today's lesson. In a book, if you have 5 chapters to study and are having a hard time with one of them, you can always study another, so you don't waste time, and get back to the hard one when your mind is clearer or can get some help understanding it. That brings me to another issue: you can't afford to wait or do extra research to understand confusing concepts in any one lesson because the entire course has very strict deadlines so you have to complete the lesson even if you didn't understand any of it.
The time pressure is enourmous and even though they advertise the course as a 20-hour per week course, it's actually not like that. It requires way more time, expecially for beginners who have no prior or very little experience with coding. I spent almost double the time in some instances and seriously thought of hiring someone outside of the course to help me. That while actually paying Yandex to help me learn.
One huge problem is the discrepancy between the level of the lessons and practice (which is very basic, for beginners) and the level of the project required at the end of each sprint (at least intermediate level to advanced). I told one of their reps once: the way you're doing this is like giving me the alfabet of a new, foreign language then asking me to write an award-winning novel. That's how big the discrepancy is. The level of expertise and perfection required for the project exceeds anything taught in the lessons. Not to mention that if you had a lesson with bugs, and customer support just fed you the answer without you even having to figure out the task, you're basically in the dark when you have to incorporate that in the project.
This brings me to another issue: the way they tell you that you need to ask for help for your projects. You're supposed to exhaust all possibilities on your own, then ask your fellow students, and only then contact a tutor. You could spend hours and hours scouring the internet for answers, before you can ask your fellow students. But your fellow students are not allowed to give you the answer either, only to direct you to other resources. If those resources don't work or are incomplete, only then you should contact your tutor. And the tutor doesn't give you the answer, but usually directs you to yet more resources, which then you have to decipher yet again. Every once in a while, you might get the right answer because someone takes pity on you, but very rarely, even when it's obvious you've been running into a wall and tried everything you could think of. This system only promotes waste of time and energy when you could just get straighforward help for some things.
Another huge issue: we're supposed to complete a project every 2-3 weeks, but the instructions contain confusing, inconsistent information, and once you submit the project, it can get rejected at least 4 times, and the next sprint/module starts immediately, in some cases. But the lessons in that next module are not available because Yandex-Practicum keeps them locked until your project gets approved. They have 4 official rejections for your project but they may reject it for some mistakes in the beginning, which doesn't count towards the 4 official rejections. The reviewer almost never gives you a straight answer about what you've done wrong, just that you need to correct '[insert issue]'. He/she only respond once every 24 hours so if your project gets rejected one or two times (without review) because of some mistake, which doesn't count towards the 4 official rejections, then 3 times with review, before your final rejection, that means you've wasted 1-5 days. That's a whole week during which all you can do is wait for the reviewer to decide what else is wrong with your project. In the meantime, you have no acees to the next lessons. And the next sprint starts per the schedule, for which you're not eligible and you can't access because , again, they haven't approved your project. Even though their guidelines say lessons will not be locked while you're waiting for review (as I've mentioned).
The whole review process is messed up. It's almost like a mind game, like a relationship with a toxic partner who tells you that they're upset with you, but they won't tell you what it is. But they're upset so you have to figure out what's wrong and fix it. This is the strategy Practicum employs for projects, which is just not healthy, and it's constantly demoralizing. For every project submission (I've done two), you see your project getting rejected again and again with barely any indication as to why. Then you submit it for the third of 4th time, after trying to figure out what's wrong, knowing that if it doesn't get approved, you'll have to leave your current class and wait to join the next one. Which puts you behind your class and your own deadlines to finish the course. It's in their guidelines: after the 4th rejection, you have to wait for and transfer to the class that started after you until they catch up, while your current class continues advancing.
I'm not a stupid person, but they make it so hard to get your project approved and actually help you feel satisfied that you did a good job. My last project got rejected 3 times, 2 of them because I didn't remove comments in the code, even after I manually removed them all and checked every single line at least twice. No instructions as to how to find all of them or where the elusive comment might be hiding. In the meantime, my code is solid, the website works, but there's one comment or a minuscule character that was part of a comment somewhere, and I'm on the verge of the fourth and final rejection because of that. Which means I'll fall behind again because I'll be demoted to the next class.
They make you have a constant feeling that you're on the verge of falling behind after every sprint, and it makes you miserable. And you have many sprints before the end of the course so living with that all the time, every 2-3 weeks, is just not right. And definitely not necessary. Negative reinforcement much?
They advertise this as a 20-hour per week course, for 10 months. This is grossly misrepresenting the time you have to dedicate to this. It says it's beginner-friendly but it's not. It requires perfection from the students but the organization of the course is a mess, their software has many bugs and the support you receive seems minimal, with very few exceptions, and definitely doesn't bolster confidence in the process. I've never felt so discouraged in my life, after working like crazy and ignoring everything else in my life. Even when I tried to start early, so I get a head start, I still fell behind because of the way the course is structured. When I tried to study harder every day to finish the lessons early, so I can start on the project early, I still fell behind, again because of the way the course is structured. Psychologically, my last 2 months with Yandex-Practicum have put me off learning to code. This is like the worst possible situation to be in when you're learning something. Your growth and development as a student is stunted.
I'm done with the course and I can't actually recommend it to anyone. I feel like it employs some bad teaching techniques which seem akin to toxic mind games, and which make the learning process torturous. Which is not how it's supposed to be. It's supposed to be hard work but not to break you mentally after every sprint. And this was just the beginning sprints, with many saying: it'll get harder. If they make it this hard now, what am I supposed to expect over the next months?
Obviously, this is my opinion, and maybe other students are having an easier time. But like I said, I'm not a stupid person, and I like math and logical thinking so if it's this hard for me, I can't imagine what it's like for others who come from other backgrounds. I guess I'm not willing to put up with the unhealthy system they have. Maybe others are.
Yandex-Practicum has notified me that they're giving me a partial refund.
Maria Shchur of Practicum Bootcamp
Head of Web Guidance Team
Nov 18, 2021
Irina, hi! Thank you for such detailed feedback. We are very sorry that you had an unpleasant experience while studying with us. Our team has read your review and would like to respond to a few of your points:
- We will definitely look at the practical tasks you were mentioned, check them, and improve them to deliver a better educational experience for our students. We are also looking into the issue you raised about not being able to access new material until your project has been accepted.
- Our program has a linear structure, and the tasks gradually increase in complexity, and are designed assuming students have mastered concepts introduced in earlier lessons. This is why students are required to finish a lesson before moving to the next one. 20 hours is the average amount of time our students spend studying per week. Some need more, some need less; the exact amount depends on previous experience, background, and other such factors.
- There are Slack channels available to all students to post their questions. These channels are monitored by tutors, and there are no restrictions on when or how often you may ask questions. Additionally, our tutors are always ready to provide individual help via 1:1 sessions when students are struggling. We believe the immediately giving straight answers is not an efficient way to become a self-driven web developer. In your career, you'll constantly need to independently research new concepts, and we want to prepare you for this.
- During code review, professional developers review projects, leaving suggestions and comments throughout the code. They target items to fix and areas of potential improvement. If a reviewer's comments are unclear, our tutors are available to clarify them. We believe code review is a very valuable experience.
- Finally, we will provide you with a partial refund for the part of the program you did not complete. We are very sorry that our program was not a good fit for you, and we respect your decision to leave. Again, thank you for such comprehensive feedback. We wish you the best of luck in your future studies!