I won’t be mistaken if I say that BEM is becoming more and more popular. There are many well-known resources that write about it. But 99% of these articles deal mainly with writing CSS and HTML in a particular way, although Yandex’s (aka authentic) BEM is a methodology, not simply a way of writing CSS delimiters. The reason why it is so is probably a topic for another post, while in this one I would like to present my own opinion on the notion that I decided to call “BEM levels” and to describe a typical developer who might belong to them.
People who belong to this level have never used BEM before and some think it’s ugly and stupid. They see the name cropping up here and there.
People who belong to this level have read the articles I mentioned at the beginning of the post and try writing their HTML classes and CSS selectors in a certain way. Some of them still think it’s a bit ugly and stupid :)
People who belong to this level understand the logics behind the terms, and actively use Blocks, Elements and Modifiers in their code and write articles about it. They rarely say it’s ugly and stupid, but vice versa innovative and clever.
People who belong to this level know BEM to be a methodology and not just underscores and dashes. They know there are various open-source libraries created both by the BEM-team of Yandex and others for a range of technologies (BEMHTML, BEMJSON, jQuery BEM and other goodies) and how they interact with each other.
People who belong to this level created BEM for us and try to inspire us to use it. They cannot imagine another way of making a (large-scale) web-project other than with the full-stack BEM.
What level do I belong to?
Well, I can say that I have been on the Beginner, Adoption and Comprehension levels so far. I can truthfully say I’m not an expert in BEM and in my thinking to get to the Advanced level or the Master level one needs a lot of work. Also what it needs is a lot of work of the people around you. And that’s kinda a challenge :)
What level are you on?
Feel free to describe your attitude to BEM or constructive criticism of what you’ve just read :)