Действительно ли использование селектора по ID — признак абсолютно плохого стиля?
Пробежал статью глазами. Мое мнение - весьма бредовая статья. Клинический перфекционизм в разработке + собственные вкусовые пристрастия выставлять как канон... В ID нет ничего ничего, ну абсолютно ничего плохого, особенно учитывая описанный вами подход. 
Хотя если очень захотеть то можно извращаться сколько угодно. В свое время пробовал построить веб страницу используя haml scss и модификатор строгости в CSS. Удалось полностью избавится и от классов и от ID. Вот только код был как Китайская стена длинной. Оно вам надо?
Более того при разработке фронта (javascript) от ID полностью уйти невозможно. А в общем вы правильно описали принципы применения и того и другого, так что не смешивайте конвенции сжатого и читабельного кода с идеей божественного сечения. Главное пишите, пишите и еще раз пишите, стиль как свой так и "правильный" вырабатывается только с практикой. И не всегда "как надо" необходимо больше нежели "как хочется" ;)
Глупости какие-то. Давайте тогда и в СУБД не будем идентификаторы использовать - и так ведь можно сделать выборку по определенным условиям и получить тот же результат. Вот только выполняется запрос по идентификатору в разы быстрее. То же самое с id в HTML. Как в Javascript, так и в CSS селекторы по id выполняются в разы быстрее. Только использовать их нужно разумно. Вы очень правильно подметили семантические правила для использования id и class.