and classes that not represent its function or places. • Tons of confusions e.g. not clear dependency (we are afraid about removing and adding things) • Problem with scalability, consistency and on- boarding new developers. • Specificity. Too deep selector. • Have no standard. • 1 page always giving to 1 person.
features that don't exist in CSS yet like variables, nesting, mixins, inheritance and other nifty goodies that make writing CSS fun again. But wait, Lets try to find another specific keyword…
good for modularity but not giving an independence. Independence gain after implement one of architectures or conventions… Hmmm, Architectures in CSS ? Conventions ? Sounds interesting.
and Independent • Re-usable, Easy to extends, Easy to override • Readable and Easy Tracking • Less bloated code (Unused code) • Has Good Conventions (Standard) • Easy to learn
for simplify your code you need to learn advance syntax in SASS. • BEM is just convention, need commitment from developer to follow the rules. • Keep the independence of blocks in BEM is hard if we still have a page based vision. • Managing BEM is not easy for team that has different knowledge.
to learn, easy to update, easy to track by team. Scalable CSS should make you have fast development in new feature without breaking old feature. Scalable CSS should have good and proven convention/standard to make it keep controllable. Scalable CSS should performance first concern with less unused code.