Frontier who watches the watchmen?

Вёрстка контента и вёрстка приложений

— Тим, там ещё одна бага с подсчётом высот в дэйли
— Аааааааргх!

Раньше в интернете существовали только контентные проекты — статьи, длинные тексты или ленты фотографий, и вся вёрстка сводилась к тому, чтобы грамотно представить содержимое. А затем появились веб-приложения и принесли с собой новые вызовы: необходимо представить весь необходимый контент в рамках одного экрана, ничего не должно сломаться, интерфейс может и, наверняка, будет меняться каждую неделю.

Сравним веб-приложения и контентные проекты:

Контент Приложения
Скролл — основной элемент интерфейса Великое множество элементов управления
Главное — представить контент Главное — функциональность
Мало JS, имеет смысл Progressive Enhancement Много JS, можно не ориентироваться на людей без него

Соответственно, к их вёрстке применимы разные требования: контент должен быть свёрстан для максимально удобного потребления (акцент на типографике и общей опрятности), вёрстка приложения — быть максимально надёжной.

Страшно ли, если добавится ещё одна строка? В контенте — ни капли; а в ненадёжно свёрстанном приложении может возникнуть общий скролл или наложиться одно на другое (или ещё что похуже!)

Разделение, естественно, несколько искусственное и границу порой сложно провести: например, Медуза — которая, вроде как, контент, но есть что-то и от приложений.

Тем не менее, демаркация внутри команды разработчиков к чему всё же относится то, что вы делаете, имеет смысл. Из-за разницы восприятий этих категорий, пользователи накладывают разные ожидания. Так, если Grooveshark грузится долго, то можно подождать. Но если долго грузиться будет BuzzFeed или TJ… А из этого уже можно сделать выводы о необходимости, к примеру, первого рендера на сервере, даже если у вас целиком приложение на фронтенде.