@kid-programmer: никак не избавиться от каскадности. Даже теоретически это невозможно.
Не понимаю насчёт корявости — что корявого-то в HTML, CSS и Javascript? Какого выбора вам не хватает?
Less и Sass не для благородства, а для сокращения времени написания. Как и Jade, как и Haml.
@kid-programmer: рекомендательные советы — конечно. Ознакомиться с практиками желательно.
Про правильность вёрстки я просто не понимаю, о какой правильности идёт речь.
Кстати, могу заметить, что в большинстве статей о верстке независимыми блоками рассказывается глупость про якобы уход от каскадности. Суть БЭМ совсем не в этом, да и от каскадности не избавиться никак.
@kid-programmer: да кто же спорит, что оправдывает или не оправдывает? Речь про обязательность знания одного из подходов и вот эту необъяснимое странное утверждение про правильность вёрстки.
@kid-programmer: БЭМ — это просто одно из решений задачи создания сложного проекта с разделённой логикой. Этот подход не может сделать вёрстку ни правильней, не неправильней. Хотя я могу просто не понимать — что такое в вашем понимании правильная вёрстка.
Я могу нафигачить полстраницы плавающих элементов, и никакой БЭМ ни слова ни скажет — все блоки будут снабжены своими атрибутами согласно принятому синтаксису.
БЭМ прекрасно работает в Яндексе, поскольку подкреплён отличным инструментарием, теорией, практикой и обучением работы с этим инструментарием. То есть код в том виде, который видит любой, открыв исходник страницы, никто не пишет. Именно про это я и говорю — отличное решение своих вопросов с помощью своих инструментов.
Но не нужно БЭМ выдавать за способ правильной вёрстки и настаивать на его знании. Любое другое средство автоматизации с целью комплексного подхода к созданию и поддержки проекта может восприниматься так же.
Вот учил-учил человек jQuery, полагая, что это — круто, устроился на работу, а ему — выкинь, учи Angular. Так что оказалось нужнее на новом — выученный jQuery или знание нативного Javascript?
@kid-programmer: если есть правила вёрстки, то это вовсе не «свой БЭМ». Тот факт, что применяете эту аббревиатуру ко всему, что движется, не делает это истиной.
Вы так любите отсылать к статьям и цитировать, так покажите — где описан термин «стиль БЭМ» и что в это понятие входит.
Теперь о ваших ответах:
1. Зачем он нужен?
Чтоб верстать правильно.
БЭМ и «правильность» вёрстки не связаны. Вообще. Как курица и полистирол.
2. Где применяется?
В web проектах.
Неожиданно:) Тут не поспоришь.
3. Обязательно ли его знать верстальщику?
Да.
Нет, если он не использует инструментарий для работы с БЭМ.
@kid-programmer: БЭМ предназначен вовсе не для правильности вёрстки. И многие хорошие проекты сделаны без участия БЭМ. Это же не делает их создателей ущербными людьми?
@7rulnik: я говорил о том, что непонятно — что такое знание БЭМ и что БЭМ — это чтобы верстать правильно.
Я даже не буду обсуждать новый малопонятный термин «стиль БЭМ», но вы же не хотите сказать, что использование препроцессора делает вёрстку правильной?
Насчёт правильности вёрстки — это вы загнули. Мало того, что такой термин невозможно объяснить, так и БЭМ вовсе не для этого.
Иметь представление о БЭМ — да. Знать, что это такое? А что это?
Если в компании используются инструменты работы с БЭМ, то с ними нужно и должно работать. И в этом случае знать нужно инструменты.
@alasecond: вот я посмотрел и не понравилось изменение горизонтальных дуг.
Слепил 4 фона codepen.io/cleric/pen/iIebg
Теперь дуги всегда «врезаются» на 10 пикселей.