Веб технологии

Раз уж я решил в очередной раз выйти на охотничью тропу программиста предпринимателя, то было бы логично выбрать поприще интернет технологий. Для веб технологий (веб разработки) я решил использовать .NET

Microsoft Visual Studio предоставляет прекрасную инфраструктуру для автоматизации всего, что не получается (или нецелесообразно) автоматизировать инструментами из коробки: QlikView, BusinessObjects, QPR, ARIS, MS Office+VBA.

Кроме .NET у меня была достаточно продолжительная практика работы с ASP Classic, технологией устаревшей, но все еще живой - я до сих пор поддерживаю один сайт на ASP Classic. Так что, если у кого есть необходимость, чтобы кто-то покопался в "говне мамонта" - обращайтесь, возможно помогу, особенно, если необходимость будет подкреплена деньгами. Кстати, утверждение о том, что ASP.NET быстрее классического ASP на моей практике не подтверждается, возможно, потому, что увеличение скорости за счет предварительной компиляции нивелируется сложной объектной моделью. Хотя есть и другие предположения, но на проверку других гипотез времени нет...

На мой взгляд, с учетом высокой скорости разработки, богатства библиотек классов и элементов управления ASP.NET - это оптимальное соотношение производительности, сроков и стоимости для проектов. Подробнее здесь.

Какие техники для ускорения выдачи веб-страницы и рендеринга я применяю?

Вообще, ускорением рендеринга заниматься приходится довольно редко. Если сайт загружается медленно, то для начала использую «user timing API», И чаще всего выясняется, что оптимизировать нужно запросы на самом сервере, а не рендеринг. Если же заморачиваться на рендеренге, то я бы поставил следующие приоритеты:

  • Не использовать CMS там, где она не особенно то и нужна. Это дает возможность драматически сократить структуру DOM и тем самым ускорить загрузку страниц.
  • Не использовать тяжелые картинки (по возможности). Например, возьмем интернет магазин. На сервере уже должны быть картинки четырех видов: малые (для списка), средние (для карточки), большие (если нажать на картинку на карточке товара), огромные (не для всех товаров, но иногда требуются для того, чтобы разглядеть мелкие детали).
  • По возможности не использовать css & js «на все случаи жизни», а загружать только то, что нужно.
  • Минимизировать размер кода css & js с помощью сжатия текста
  • Для библиотек общего функционала (таких как Bootstrap, JQuery и т.д.) использовать CDN (Content Distribution Network). Когда началась «Охота на телегу», от этой, казалось бы, классной технологии пришлось срочно отказываться в связи с блокировкой адресов CDN. На текущий момент использую не везде.
  • Использовать атрибут rel="preload"
  • И т.д.

А так, нужно признать, что красота требует жертв.