Вёрстка писем

Всё время радуюсь, что я не верстаю письма. Видимо, надо делать свой фреймворк для этого. Пара ссылок для начала. http://m.habrahabr.ru/company/pechkin/blog/262585/ http://m.habrahabr.ru/post/262427/ http://m.habrahabr.ru/company/pechkin/blog/263699/

Фигуры на css borders

https://css-tricks.com/examples/ShapesOfCSS/

Ошибки при разработке AngularJS-приложения

Старайся содержать контроллеры максимально простыми. Весь повторяющийся код выноси в сервисы. Разделяй объявление методов контроллера и тела функций

Не полагайся на наследование $scope-ов контроллеров. Этот ад ты потом не сможешь поддерживать. Достаточно будет при редизайне перенести блоки или выделить кусок контроллера в сервис. А представить нормальное тестирование этого я даже не берусь. UPD: Лучше …

Read more

Почему React хуже AngularJS

Моё мнение во многом совпадает с мнением автора статьи http://habrahabr.ru/post/249107/.

Просто про SVG-спрайты

http://www.youtube.com/watch?v=tlUoASUKyd8 Online-генерилка спрайтов — https://icomoon.io/

Как Github логирует клиентские ошибки (Haystack)

http://githubengineering.com/browser-monitoring-for-github-com/ Ничего сверхнового в идеях нет, есть наглядная картинка:

Ещё одна конвертилка картинок в base64

http://b64.io/

Принципы SOLID с примерами на php

Из книги Robert Martin «Clean Architecture» Принцип единственной ответственности (Single responsibility) Каждый модуль системы должен иметь только одну причину для изменения === одного владельца (команду). Принцип открытости/закрытости (Open-closed) Система должна легко изменяться добавлением нового кода, а не изменением существующего. Принцип подстановки Барбары Лисков (Liskov substitution) Части программы должны быть взаимозаменяемы, если они реализуют один и …

Read more

Css: высота элемента в 100% — 100px

Да, calc-ом оно делается ровно так (100%-100px). Но его не все браузеры до сих пор умеют, так что вот ещё один способ:

Логирование времени загрузки страниц в piwik

В продолжение темы логирования ошибок в пивик. Неплохо было бы логировать в ту же систему и время загрузки страницы у реальных пользователей. Для этого в упомянутый в предыдущей статье логгер нужно добавить следующее:

И поправить window.onload на:

Подробнее об объекте window.performance.timing можно почитать тут — https://blog.bullgare.com/2014/12/%D0%BC%D0%BE%D0%BD%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BD%D0%B3-%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B8-%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B-%D1%81-navigation-timing-api/ или сразу на mdn https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming.