Привет! Меня зовут Антон, я ведущий разработчик в команде рекламного фронтенда ВКонтакте. Мои рабочие задачи связаны с развитием рекламного кабинета и возможностей для продвижения сообществ в приложении VK. Здесь результаты можно видеть только в браузере и телефоне, но мне давно хотелось научиться управлять объектами и в реальном мире — например, в своей квартире. Таким опытом я и хочу поделиться в этой статье: опишу, как создал и развивал свой умный дом, с какими проблемами столкнулся по ходу проекта и как их решал.
Михаил Машай @michaelmashay
Frontend-developer
Оптические иллюзии: Стрелочка, которая всегда права
2 min
34KKokichi Sugihara — японский математик и художник, мастер по созданию трехмерных оптических иллюзий. Постоянный победитель во всемирном конкурсе оптических иллюзий: первое место — в 2010, 2013, 2018 и 2020 году, второе место — в 2015 и 2016 году.
Его интерес к иллюзиям проистекает из его исследований в 1980-х годах по автоматизации анализа рисования перспективы, которые он опубликовал в книге MIT Press 1986 года «Machine Interpretation of Line Drawings». Когда он попросил свою компьютерную систему интерпретировать невозможные объекты, такие как в картинах Эшера, он обнаружил, что они могут быть интерпретированы как рисунки реальных объектов неожиданной формы.
Канал в телеграм Cognitive Illusions, где я буду делиться самыми вырвиглазными находками, как хакнуть мозг через восприятие.
Под катом — самые интересные работы Kokichi Sugihara, его лекции и файлы для распечатывания на 3д-принтере невозможных объектов.
+59
Выбор VPS. Битва хостингов
9 min
21KЗнаете, что заметила наша небольшая команда? Если какое-то время назад, буквально в январе, мы выбирали IT-инфраструктуру весьма халатно, то сейчас отношение сильно поменялось. Ресурсов реально меньше (никому не верьте, в ИТ тоже!) и хочется уже получить не первый софт/хостинг/приложение с красивым сайтом, а надёжное, удобное, классное решение за разумные, адекватные деньги. А это, при всей широте выбора, та ещё проблема. Нам понадобился хостинг и… мы поняли, что выбрать его не так просто. Мы попали во власть известной дилеммы: «надёжный, недорогой, удобный — выбери любые два признака». Выкладываем результаты своего поиска на Хабре с робкой надеждой, что наши муки и тесты кому-то пригодятся. Читайте, пользуйтесь, советуйте! Ну и это… давайте все выплывем )
+38
Шпаргалка по регулярным выражениям
4 min
36KTranslation
Доброго времени суток, друзья!
Представляю Вашему вниманию перевод статьи «Regex Cheat Sheet» автора Emma Bostian.
Регулярные выражения или «regex» используются для поиска совпадений в строке.
Используем метод .test()
Используем | — альтернацию
Используем флаг i
Используем метод .match()
Представляю Вашему вниманию перевод статьи «Regex Cheat Sheet» автора Emma Bostian.
Регулярные выражения или «regex» используются для поиска совпадений в строке.
Ищем совпадение по шаблону
Используем метод .test()
const testString = 'My test string'
const testRegex = /string/
testRegex.test(testString) // true
Ищем совпадение по нескольким шаблонам
Используем | — альтернацию
const regex = /yes|no|maybe/
Игнорируем регистр
Используем флаг i
const caseInsensitiveRegex = /ignore case/i
const testString = 'We use the i flag to iGnOrE CasE'
caseInsensitiveRegex.test(testString) // true
Извлекаем первое совпадение в переменную
Используем метод .match()
const match = 'Hello World!'.match(/hello/i) // 'Hello'
+10
Из чего собрать умный дом в 2020 году: от хаба и до лампочки
9 min
359KZigBee, Z-Wave, Wi-Fi, Bluetooth — на какую технологию делать ставку? Кто из брендов выпускает наиболее практичные решения? Какие выбрать шлюз, датчики и на что смотреть тем, кто хочет все упростить?
Мы попросили Вадима Ерёмина, руководителя департамента «Гаджеты и инновации», рассказать о его опыте построения умного дома. Под катом только то, что было проверено на собственном опыте.
Мы попросили Вадима Ерёмина, руководителя департамента «Гаджеты и инновации», рассказать о его опыте построения умного дома. Под катом только то, что было проверено на собственном опыте.
-3
FAQ: что надо знать путешественнику-гику про прививки перед поездкой
11 min
33KВакцина — это способ показать иммунной системе сигнатуру угрозы, к которой за несколько циклов обучения будет выработан иммунный ответ.
Любая борьба организма с инфекционным заболеванием — это попытки распознать сигнатуру угрозы и выработать контрмеры. В общем случае этот процесс ведётся до полного результата, то есть до выздоровления. Однако могут быть инфекции, которые:
Поэтому в некоторых случаях лучше заранее устроить учения. Это и есть вакцины. Взрослый житель города привит от самых опасных инфекций в детстве. При вспышках инфекций или при помещении человека в опасную среду имеет смысл делать профилактические прививки. Путешествия относятся к таким ситуациям.
Давайте сначала разберёмся с ликбезом, потом перейдём к путешествиям и списку действий.
Предположим, вы летите в Африку. Там есть повышенный риск жёлтой лихорадки. Простая вакцина обойдётся вам примерно в 1 500 рублей вместе с приёмом терапевта и услугами процедурного кабинета, вакцина более высокого уровня — в 3 000 рублей. Вылечиться от жёлтой лихорадки специализированными медикаментами нельзя (то есть можно только поддерживать ресурсы организма, пока он сам не справится), заболеть легко, летальность — около 10%, основной вектор — комары. Побочных эффектов у вакцины почти нет. Стоит вакцинация того? Наверное, да. Но решать вам.
Любая борьба организма с инфекционным заболеванием — это попытки распознать сигнатуру угрозы и выработать контрмеры. В общем случае этот процесс ведётся до полного результата, то есть до выздоровления. Однако могут быть инфекции, которые:
- Убивают носителя быстрее, чем будет выработан иммунный ответ.
- Меняются быстрее, чем иммунная система сможет «распознать» патогены.
- Маскируются и прячутся в местах, где очень сложно получить доступ к патогену.
Поэтому в некоторых случаях лучше заранее устроить учения. Это и есть вакцины. Взрослый житель города привит от самых опасных инфекций в детстве. При вспышках инфекций или при помещении человека в опасную среду имеет смысл делать профилактические прививки. Путешествия относятся к таким ситуациям.
Давайте сначала разберёмся с ликбезом, потом перейдём к путешествиям и списку действий.
Почему путешествия опасны?
Предположим, вы летите в Африку. Там есть повышенный риск жёлтой лихорадки. Простая вакцина обойдётся вам примерно в 1 500 рублей вместе с приёмом терапевта и услугами процедурного кабинета, вакцина более высокого уровня — в 3 000 рублей. Вылечиться от жёлтой лихорадки специализированными медикаментами нельзя (то есть можно только поддерживать ресурсы организма, пока он сам не справится), заболеть легко, летальность — около 10%, основной вектор — комары. Побочных эффектов у вакцины почти нет. Стоит вакцинация того? Наверное, да. Но решать вам.
+101
Консоль разработчика Google Chrome: десять неочевидных полезностей
6 min
227KTranslation
Как с помощью консоли разработчика превратить Google Chrome в подобие текстового редактора? Какой смысл в ней приобретает знакомый многим по jQuery значок $? Как вывести в консоль набор значений, оформленный в виде вполне приличной таблицы? Если сходу ответы на эти вопросы в голову не приходят, значит вкладка Console из инструментов разработчика Chrome ещё не раскрылась перед вами во всей красе.
На первый взгляд, перед нами – вполне обычная JavaScript-консоль, которая годится только на то, чтобы выводить в неё логи ответов серверов или значения переменных. Я, кстати, так ей и пользовался, когда только начал программировать. Однако, со временем набрался опыта, подучился, и неожиданно для себя обнаружил, что консоль Chrome умеет много такого, о чём я и не догадывался. Хочу об этом сегодня рассказать. Да, если вы читаете сейчас не на мобильнике, можете тут же всё это и попробовать.
На первый взгляд, перед нами – вполне обычная JavaScript-консоль, которая годится только на то, чтобы выводить в неё логи ответов серверов или значения переменных. Я, кстати, так ей и пользовался, когда только начал программировать. Однако, со временем набрался опыта, подучился, и неожиданно для себя обнаружил, что консоль Chrome умеет много такого, о чём я и не догадывался. Хочу об этом сегодня рассказать. Да, если вы читаете сейчас не на мобильнике, можете тут же всё это и попробовать.
+78
Создание универсального веб-приложения сайта Habrahabr.ru при помощи Web App Template
7 min
44KTutorial
Хабровчане, привет!
В предыдущей статье мы с вами познакомились с шаблоном для создания универсальных веб-приложений – Web Application Template. Если кратко, то Web Application Template позволяет вам «превратить» сайт в приложение для Windows, Windows Phone или Android, добавив в него возможности интеграции с ОС и механизм распространения через магазин приложений.
Сегодня мы рассмотрим практический пример: как при помощи Web Application Template быстро и просто создать веб-приложение для Windows и Windows Phone на основе сайта habrahabr.ru.
+24
Создание игр без Canvas
8 min
20KОднажды мне попалась на глаза карточная игра HeartStone от Blizzard. Играя в нее пришла мысль, что подобные вещи можно создавать используя технологии html5, что позволит им быть кроссплатфорсенными. На мой взгляд, подобные вещи могут делать люди, до сих пор занимающиеся только созданием сайтов.
Итак, что мы имеем:
Собственно, все. Этого вполне хватит, чтобы осуществить задуманное.
Итак, что мы имеем:
- Выделенный сервер с LAMP (без phpDaemon);
- Желание обкатать WebSockets.
Собственно, все. Этого вполне хватит, чтобы осуществить задуманное.
+15
Выравнивание модального окна по центру
3 min
87KМой первый пост.
Центрирование блока относительно другого блока относительно часто-попадающаяся задача, это очередное ее решение. Для меня оно стало самым универсальным и покрывающим все кейсы, с которыми я когда-либо сталкивался.
Центрирование блока относительно другого блока относительно часто-попадающаяся задача, это очередное ее решение. Для меня оно стало самым универсальным и покрывающим все кейсы, с которыми я когда-либо сталкивался.
+14
Избавляемся от JavaScript в социальных кнопках (Facebook, VK, Twitter и др.)
5 min
78KTutorial
Как мы избавились от JavaScript-библиотек социальных сетей, ускорили скорость загрузки страниц и использовали RESTful API для “шаринга” и “лайков”.
+68
Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №100 (9 — 15 марта 2014)
6 min
46K+59
Information
- Rating
- Does not participate
- Location
- Украина
- Date of birth
- Registered
- Activity