Плюсую про распиаренный никому не нужный продукт.
Видел от него только боль и старадание, застал его еще в самом начале. Человек, создавший сие чудо, не удосужился узнать, как переводится css, и почему они каскадные.
Участвовал в 2 проектах с БЭМ. в обоих его взяли потому-что-популярный-о-чем-там-я-не-смотрел-верстать-не-умею.
Из минусов, которые я ощутил тогда - людям надо быстро что-то переделать, добавить похожий блок - они просто копипастят и переделывают. Переписывать у каждого элемента классы и стили под них никто не хочет/забывает. В итоге ужасная каша, в которой километровые названия классов только путают. Более того, даже яндекс использует БЭМ далеко не повсеместно, даже в контексте одной страницы.
Из плюсов - стандартизация, но в моем случае всегда хватало стандарта гораздо короче.
Общие стили выноси в отдельные контролы с названиями .control_..., необщие в отдельных файлах на каждую страницу с ключевым классом на body - .page_... . Остальные определения уже внутри этих.
В некоторых проектах были вынесены еще темплейты отдельно. И все. Этого хватило уже не на один проект, ни одного файла даже близко к 1к строк не было, стили на другие страницы / контролы не аффектили.
PS весь ад CSS на проектах исходит из того, что люди вставляют свои определения не внутри какой-то сущности, а просто так, некаскадно. И на файлики не раскладывают, а поскольку в файликах с 3к+ строк искать очень трудно, новое просто подписывается вниз. Но это совершненно не значит, что надо делать огромные уникальные названия классов и отказаться от каскадности. Яндекс как-то рассказывал, что и на каждую страницу лучше отдельные приложения иметь, чтобы если там концерн сломался или что еще - все остальное не сломалось.
Лично из своего опыта могу еще добавить, что великая проблема странного фронтенда в том, что тимлид-бекендер изначально пишет его сам, нефига не разбираясь особо и подцепляя туда бэмы, coffee итд. А потом уже вроде и некогда, бизнес требует фич.
PSS я знаю, что тут есть люди, очень любящие бэм. Может даже кто и поделится праведными практиками, и почему так нельзя сделать без него и его огромных странных названий классов.
Считаю, что бэм пойдет судьбой coffee script, который при выходе пользовался большой популярностью ввиду странного стандарта es, но сейчас все улучшилось и больше js ни на что менять не надо, что очень круто. Думаю тут будет также. Пока проблема актуальна, будет много разных, в том числе и странных решений. Потом напишут стандарт по каскадности и все это умрет до конца. Сугубо имхо, всем любви.