Pull to refresh
15
0
Максим Лебедев @firya

User

Send message

Математика CSS-шлюзов

Reading time18 min
Views54K

CSS-шлюзом (CSS-lock) называется методика из адаптивного веб-дизайна, позволяющая не перепрыгивать от одного значения к другому, а переходить плавно, в зависимости от текущего размера области просмотра (viewport). Идею и одну из реализаций предложил Тим Браун в статье Flexible typography with CSS locks. Когда я пытался разобраться с его реализацией и создать свои варианты, мне с трудом удавалось понять, что именно происходит. Я выполнил много вычислений и подумал, что полезно будет объяснить другим всю эту математику.

В статье я опишу саму методику, её ограничения и лежащую в её основе математику. Не волнуйтесь: там в основном одни сложения и вычитания. К тому же я постарался всё разбить на этапы и украсил их графиками.
Читать дальше →
Total votes 70: ↑66 and ↓4+62
Comments37

Отслеживание js-ошибок с помощью Метрики

Reading time3 min
Views13K

Использование системы отслеживания js-ошибок трудно переоценить. Даже на покрытом тестами сайте возникают js-ошибки, важно их найти и починить. Расскажу как искал подходящее решение.

Читать дальше →
Total votes 36: ↑35 and ↓1+34
Comments21

Как использовать кастомные шрифты в вебе и не сойти с ума

Reading time4 min
Views25K
Бывало ли так, что вы видите на веб-странице картинки и оформление, но не видите текста — он появляется на пару (десятков) секунд позже? Это загружаются кастомные веб-шрифты. Объясняем, почему это происходит и как этого избежать.

Классический вопрос на собеседовании ops-инженеров и программистов: вы написали в адресной строке браузера habr.com и нажали Enter. Что произойдет? (Ответ на 10 страницах)

Ок, мы указали для своего текста font-family: PFRegal, «Times New Roman». Что произойдет?


Браузер посмотрит, есть ли для PFRegal объявление font-face. Если оно есть, то начнется загрузка файла шрифта. Что будут видеть читатели те секунды (десятки секунд на 3G), пока происходит загрузка?
Читать дальше →
Total votes 91: ↑88 and ↓3+85
Comments28

N+5 полезных книг

Reading time5 min
Views58K


Привет! Это пятый с 2010 года список полезных книг. Набралась всего дюжина за два года. Смотрите, что можно скачать в дорогу или просто почитать, когда будет время, и делитесь, пожалуйста, в комментариях своими (я буду поднимать их в пост). В этой подборке довольно много социнжиниринга, точнее, тем около него. Поехали.

Конструкции, или почему не ломаются вещи, Дж. Гордон
Прекрасная, хоть и очень длинная штука, которая рассказывает про сопромат простыми словами и почти для детей. Но на уровне жёсткого хардкора. По своей полезности для осознания физики вокруг может сравниться с не менее прекрасной современной «Квантовая вселенная. Как устроено то, что мы не можем увидеть» Брайана Кокса и Джеффа Форшоу. Рекомендую обе. Будет, что почитать в дороге, если вдруг почувствуете, что играть на планшете надоело. И о чём подумать, когда выяснится, что вся та фигня, которую вам давали на уроках химии, физики и прочего в школе и университете вдруг начинает выстраиваться в стройную теорию.

Evil by Design, Крис Ноддер
Один из лучших подходов к проектированию чего-то хорошего — это спроектировать сначала самое ужасное из возможного. Пользователь обычно не скажет, как сделать ему хорошо, но точно знает, как бывает плохо. Например, юзер не говорит «я хочу, когда нажимаю на ссылку напоминания пароля, там в поле уже была введена почта», зато вполне способен сказать: «слушай, меня дико бесит, когда логинишься, тебе показывают новую страницу про то, что пароль не подошёл, и, чтобы его восстановить, надо ещё один долбанный раз вводить почту». Вся книга Криса состоит из таких «тёмных» шаблонов, когда какие-то гады намеренно вводят вас в заблуждение. Он там очень переживает за этику, поэтому вступления лучше пропустить. Единственная в этом обзоре книга на английском, но довольно простом.
Читать дальше →
Total votes 66: ↑64 and ↓2+62
Comments34

Az.js: JavaScript-библиотека для обработки текстов на русском языке

Reading time8 min
Views28K
Как чуден и глубок русский курлык
Генератор постов

Обработка естественного языка (natural language processing, NLP) — тема, на мой взгляд, очень интересная. Во-первых, задачи тут чисто алгоритмические: на вход принимаем совершенно примитивный объект, строчку, а извлечь пытаемся вложенный в него смысл (ну или хотя бы частичку смысла). Во-вторых, необязательно быть профессиональным лингвистом, чтобы решать эти задачи: достаточно знать родной язык на более-менее приличном уровне и любить его.

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

Бессвязность текстов в нынешней версии «Генератора» вызвана тем, что на самом деле никакого анализа он производить не умеет. Просто в одних случаях «предсказывает» продолжение предложения по собранным биграммам, а в других — заменяет в готовом предложении некоторые слова на другие, которые заканчиваются похоже. Вот и вся начинка.

Конечно, хочется сделать что-нибудь поинтереснее. Беда в том, что модные сейчас нейросети не очень-то применимы здесь: им нужно много ресурсов, большую обучающую выборку, а в браузере у пользователя соцсети всего этого нет. Поэтому я решил изучить вопрос работы с текстами с помощью алгоритмов. К сожалению, готовых инструментов для работы с русским языком на JavaScript найти не удалось, и я решил сделать свой маленький велосипед.
Читать дальше →
Total votes 54: ↑54 and ↓0+54
Comments30

1000 и 1 репост: гайд по кнопке «поделиться» в русских соц сетях

Reading time6 min
Views28K


Недавно передо мной встала задача — провести на нашем сайте «народное голосование» за номинантов на премию в нашей отрасли (франчайзинг). В рамках народного голосования человек размещал на своей странице в социальной сети пост, рассказывающий о том, за кого именно он проголосовал. Чтобы реализовать эту задачу, мне пришлось перелопатить массу информацию о том, как именно устроен шаринг в различных соцсетях, и как лучше размещать эти самые посты. Кроме того, была создана система подсчета количества размещенных репостов.

К сожалению, большая часть информации на эту тему, которую можно найти на хабре или stackoverflow — уже устарела, поэтому я постарался превратить этот в пост в актуальный мега-гайд по шерингу страниц в соц сетях. Я рассмотрел 5 наиболее популярных в России социальных сетей: контакт, facebook, твиттер, одноклассники и мой мир. Для каждой социальной сети приведен актуальный URL для шаринга, небольшие советы и рекомендации по использованию, а также JS код, позволяющий узнать количество шеров конкретного URL в каждой из соц. сетей.

В конце статьи есть сводная таблица со всеми ссылками и кратким описанием возможностей каждой из сетей.
Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments37

Грабли, эмулятор, аниматор (upd@21.06)

Reading time12 min
Views8.6K
Недавно я занялся поиском хорошего инструмента для создания прототипов и анимации своих идей. В итоге исследование рынка превратилось в пересмотр специализаций инструментов своего арсенала и шлифовкой процесса проектирования нового продукта.
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments7

А если найду? Перелет еще дешевле чем вы уже нашли

Reading time3 min
Views122K
Если вы планируете поездку и уже нашли недорогой перелет, не спешите покупать билеты, потому что сейчас вы найдете билеты еще дешевле. И это не реклама очередного говноагрегатора.

Всем известно, что авиакомпании берут свои цены с потолка. Маркетологи придумывают хитроумные непрозрачные схемы отъёма денег у пассажиров пропорционально финансовым возможностям последних. Так, чтобы богатые платили за билеты побольше, а бедные — сколько смогут.

Читать дальше →
Total votes 123: ↑99 and ↓24+75
Comments299

Правила хорошего тона при написании плагина на jQuery

Reading time7 min
Views32K
Правила хорошего тона при написании плагина на jQueryЯ написал уйму плагинов на jQuery. Если посмотреть код всех плагинов, сортируя их по дате публикации на github, то можно проследить эволюцию кода. Ни в одном из этих плагинов не соблюдены все рекомендации, которые будут описаны ниже. Все что будет описано, лишь мой личный опыт, накопленный от проекта к проекту.
Писать расширения на jQuery довольно просто, но если хотите узнать как написать их так, чтобы потом их было просто поддерживать и расширять, добро пожаловать под кат.
Читать дальше →
Total votes 31: ↑27 and ↓4+23
Comments36

Американский венчурный фонд решил самостоятельно проверить идею безусловного дохода

Reading time3 min
Views29K
image

Известный венчурный фонд Y Combinator решил в частном порядке проверить работоспособность идеи безусловного дохода. Инвесторов интересует, чем займутся люди, которым уже не нужно будет работать для того, чтобы выжить. Точная сумма, которую будет раздавать фонд, не разглашается – упоминается только, что она будет «достаточной для жизни». Эксперимент рассчитан на 5 лет.

В записи в блоге Сэм Альтман [Sam Altman], президент фонда, выражает свою уверенность в том, что за этой схемой – будущее, особенно на фоне постепенного исчезновения традиционных рабочих мест благодаря техническому прогрессу.

Он отмечает, что через 50 лет сама идея мотивации людей к труду под угрозой отсутствия еды будет казаться дикой. Альтман уверен, что нельзя создать по-настоящему равные условия и равные возможности, не реализовав какой-либо из вариантов безусловного дохода.

Авторам идеи интересно узнать, что же будут делать счастливцы, получающие деньги для жизни. Будут ли они весь день играться в видеоигры или займутся творчеством? Станут ли они более счастливыми? Достигнут ли они большего и принесут ли больше пользы обществу, лишившись страха перед отсутствием средств на пропитание? Создадут ли они больше ценностей, чем получат?
Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments615

Лучшие бесплатные коллекции векторных иконок

Reading time2 min
Views333K
Привет, Хабр! Сегодня я хочу представить вам огромную коллекцию из 51 набора бесплатных векторных иконок. Да, есть потрясающие ресурсы Flaticon или Iconfinder, но бывают случаи, когда необходима именно группа иконок в едином стилистическом оформлении. Определиться с выбором, вам поможет эта подборка. Я старался собрать не как можно больше, а действительно самое лучшее.

Среди веб-разработчиков существует много споров о том, что лучше: иконочный шрифт или SVG спрайты? Четкого ответа на этот вопрос нет. Каждый выбирает свое. Данные наборы иконок вас неограничиывают в выборе, поскольку представлены в различных форматах: @font-face, SVG, EPS, AI, PSD, Sketch.

В целом данная подборка содержит более 10 000 иконок, охватывающих множество категорий: интерфейсы, технологии, наука, спорт, маркетинг, среда, транспорт и тд. Полые, заполненные, цветные, во Flat, Material, Elegant, Cartoon, Hand drawing стилях.

Responsive Icons (100 иконок, PSD, AI, EPS, SVG)


Responsive Icons

Читать дальше →
Total votes 91: ↑82 and ↓9+73
Comments23

На следующей неделе Microsoft прекращает поддержку всех версий IE, кроме 11

Reading time1 min
Views39K


12 января корпорация Microsoft прекращает поддержку Internet Explorer версий 8, 9 и 10. Прежде, чем полностью прекратить поддержку устаревших версий своего обозревателя, компания выпускает финальный патч. После этого указанные версии Internet Explorer более не будут получать обновления безопасности или техническую поддержку.

В недавнем патче исправляются несколько новых проблем, плюс добавляется уведомление «End of Life», которое предлагает пользователям переходить на IE 11 или Microsoft Edge — следующую версию браузера корпорации.
Читать дальше →
Total votes 46: ↑36 and ↓10+26
Comments53

Почем нынче «Яндекс»? История одной продажи

Reading time2 min
Views16K

Фото: Глеб Щелкунов / Коммерсантъ

На днях в Москве был осужден экс-сотрудник компании «Яндекс» Дмитрий Коробов. Дело оказалось довольно интересным — Коробов пытался продать исходный код и алгоритмы основного сервиса компании — «Яндекс.Поиск». При этом бывший сотрудник оценил исходники совсем недорого — $25 тысяч и 250 тысяч рублей соответственно, пишет «Коммерсант». Деньги, вырученные от продажи, Коробов хотел потратить на создание собственного стартапа.

В момент совершения сделки неудачливого коммерсанта арестовали сотрудники УФСБ России по Москве и Московской области. Для «Яндекса» все закончилось хорошо, поскольку утечка исходного кода могла обернуться миллионными потерями, большим количеством судебных разбирательств и, в итоге, падением капитализации.
Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments27

Тест-драйв роботов-пылесосов

Reading time25 min
Views19K
image

Роботы, умеющие собирать пыль в жилых помещениях, широко вышли на Российский рынок относительно недавно, но уже успели сильно эволюционировать и без преувеличения стали самыми распространенными бытовыми роботами в нашей стране и во всем мире. Однако с момента их появления (2009 год) по настоящий момент (2015 года) в обществе не утихают споры об их пользе и оправданности такого приобретения. Ведь, устройство как было, так и осталось достаточно дорогим  - его стоимость, порой, превышает цену классического мощного пылесоса для ручной уборки в 3-4 раза. Чего нельзя сказать о мощности и принципиальной возможности собирать загрязнения с пола, поскольку робот мобилен и питается от аккумуляторов, которые на текущем уровне развития технологий не способны запасать энергию в «киловатных» масштабах, доступных из розетки для обычных пылесосов. Поэтому особенно часто на просторах интернета, форумах, да и просто в магазинах звучат вопросы:
  • Робот-пылесос — это «электровеник» или настоящий пылесос?
  • Он убирается везде или оставляет большие области неубранными?
  • Насколько хорошо он собирает пыль там, где проехал?
  • Какова степень его разумности для выполнения интеллектуальной уборки?
  • Действительно ли автоматизированный сборщик пыли способен освободить владельца квартиры или дома от уборки полов или хотя бы предоставить возможность убираться реже?
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments32

Вы можете не использовать инструменты

Reading time2 min
Views8K
Недавно я взял небольшую халтурку по улучшению сайта некоммерческого приюта для животных, расположенного в нашем городе. Существующий был сделан на старинной версии Microsoft FrontPage, поэтому все мои действия с ним по определению были улучшением.

Минут за 20 я сделал простой дизайн на HTML, а затем потратил несколько часов на его редактирование, переделку и улучшения. Итого, я уменьшил 25-страничный сайт до 8-страничного, который стал более дружественным.

Дальше мне сразу захотелось применить какой-нибудь новомодный инструмент. Генератор статических сайтов, CMS, Sass, решётки, ещё какие-то модные штучки…

Затем я критически посмотрел на эти инструменты. Генератор статических сайтов требует знания разметки, команд и настроек. CMS надо настраивать, задавать логины, накатывать патчи для безопасности, шаблоны и поддерживать. Даже для готовых CMS на хостинге нужно потратить время и усилия, при том, что контент будет в плену внутри чьей-то чужой системы.

Это инструменты, сделанные гиками для гиков. Зачем 8-страничному сайту CMS? Зачем вообще заморачиваться Sass? Старый добрый CSS прекрасно со всем справится.
Читать дальше →
Total votes 44: ↑21 and ↓23-2
Comments35

Правда о кредитном рейтинге юзеров в Китае

Reading time4 min
Views17K


Недавно в интернете (как вообще, так и в российском сегменте) циркулировали слухи о "системе кредитного рейтинга" для пользователей интернета в Китае. Лейтмотивом этих статей были Большой Брат, тоталитаризм, глобальная слежка и прочий Оруэлл. Давайте разберёмся.

Краткое содержание слухов


  • Система будет обязательно для каждого гражданина КНР;
  • Привязывается к национальному ID (身份证);
  • Рейтинг выражается в очках (от 350 до 950);
  • Управлять системой будут совместно Tencent и Alibaba;
  • Учитывается как покупательская способность, так и политические взгляды;
  • Действия друзей понижают и ваш рейтинг тоже;
  • Рейтинги публичны, можно посмотреть рейтинг любого гражданина (чтобы, например, не общаться с диссидентами или сочувствующими, которые понизят ваш рейтинг);
  • За покупки рейтинг повышается, за компьютерные игры — понижается;
  • Доступны разные бонусы: за 750 очков можно получить визу в Сингапур;
  • … и тому подобное.

Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments18

Сравнение 4K со смартфона и FullHD с камеры

Reading time1 min
Views10K
На руках оказалось 3 девайса, которые умеют записывать видео и было решено провести любительский тест качества видео и звука.
Противостояние будет между:
  • Galaxy S6
  • Canon 550D
  • Sony HandyCam CX-115


Читать дальше →
Total votes 22: ↑13 and ↓9+4
Comments7

Обзор гарнитуры bluetooth-гарнитуры от Даджет – музыкальные «бананы» в ушах

Reading time6 min
Views5.1K
Разными гаджетами я интересуюсь давно и как-то даже опубликовал пару статей на одном сайте про мобильные технологии. Профессиональным журналистом я не являюсь, тем не менее, мне интересно исследовать новые устройства и делится моими впечатлениями о них.

Когда я в одной из статей на Geektimes я увидел ссылку на предложение Даджета написать обзор на какое-нибудь устройство, мне стало интересно попробовать. Из тех гаджетов, которые есть на сайте, больше всего мне понравились наушники, работающие посредством костной проводимости звука и брелок Гейгера. Я написал в Даджет, а они сначала предложили написать мне обзор bluetooth стерео-гарнитуры. У меня эта гарнитура вызывала меньше энтузиазма чем те два гаджета, впрочем, подумав, я согласился.

У меня уже есть определенный опыт пользования Bluetooth наушниками – сейчас у меня есть Nokia BH-905i, большие наушники с отличной системой шумоподавления, которые я из-за размера и веса использую в основном дома, есть гарнитура Samsung HS3000, куда я вместо стандартных наушников воткнул Shure SE-215, что дало очень хорошее качество звука, но не позволило полностью избавиться от мешающих проводов и есть MEElectronics Air-Fi Metro2 AF72, лёгкая и удобная гарнитура с отличным звуком, основным недостатками которой является довольно высокая цена и малая распространенность в России. Соответственно, гарнитуру от Даджета я буду сравнивать именно с последними двумя гарнитурами, так как формат у всех трёх гарнитур довольно похож.


Наушники от Даджет
Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments1

DevTips: Советы веб-разработчику (17-32)

Reading time5 min
Views34K
Продолжение цикла переводов полезных советов для веб-разработчика. Другие части: 1-16, 33-48.

Содержание:
   17.  Быстрое редактирование названия HTML-тега в панели «Elements»
   18.  Разворачивание всех дочерних узлов выбранного элемента
   19.  Переключение состояния вкладки DevTools при помощи горячих клавиш
   20.  Переключение на DOM-элемент из DevTools консоли
   21.  Подсветка выполняемого выражения
   22.  Улучшения в работе инструмента Color Picker
   23.  Включение точки останова и навигация по стеку вызовов при помощи горячих клавиш
   24.  Просмотр определения функции, зарегистрированной как обработчик события на DOM-элементе
   25.  Нотификация о JS-ошибке во время написания кода
   26.  Персистентность настроек отображения для режима «Инкогнито»
   27.  Визуализация выбранного режима сглаживания анимации
   28.  Просмотр и изменения точек останова DOM-дерева при помощи панели «Breakpoints»
   29.  Пять интересных возможностей панели «Console»
   30.  Автодополнение свойств и методов объекта в панели «Console»
   31.  Просмотр и отладка обработчиков событий
   32.  Автоматическая остановка выполнения программы при возникновении любых исключений
Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments13

Сумбурно о разработке писем

Reading time6 min
Views17K


Картинка для привлечения внимания пренадлежит studio4

Привет. За долгое время накопилось много интересностей на тему разработки писем, но систематизировать это в полноценный рассказ я не представляю возможным. Вместо этого я просто расскажу об этом так, как указано в заголовке топика.
Читать дальше →
Total votes 19: ↑15 and ↓4+11
Comments6
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity