В последнее время, мне не так часто приходится сталкиваться с интересными задачками в программировании. Львиную долю занимают только рутинные таски по работе, а как известно, клиенты редко подкидывают занимательные задачи, да и в процессе работы не всегда получается насладиться программированием, и тем более описать этот опыт в статьях. Но сегодня мне попалась довольно интересная «головоломка» — генерация календаря на месяц, решением которой я хочу поделиться в статье.
Как убрать повторяющиеся элементы массива. Аналог array_unique в JavaScript
Короткая статья с небольшой функцией, которая поможет чуть-чуть упростить нелегкую жизнь js-разработчика.
Не понятно, по каким причинам, но в JS нет «родной» функции, которая бы удаляла повторяющиеся элементы массива. Далее в статье вы найдете решение этой проблемы…
Читать далее «Как убрать повторяющиеся элементы массива. Аналог array_unique в JavaScript»
Самодельный 7-сегментный индикатор. Подключение к arduino
Все началось с того, что мне понадобился большой 7-сегментный индикатор, для вывода цифр… Была идея, оборудовать гараж ультразвуковыми дальномерами, сделать аналог парктроника, только расстояние до препятствия(в данном случае автомобиль) должно было выводиться на стене. До дальней стены, на которую должно было крепиться информационное табло, примерно, метров 5, поэтому выводить циферки планировалось на больших светодиодных индикаторах. Сам проект «гаражного парктроника» пришлось закрыть из-за недостатка финансирования и судебных разбирательств со стороны крупных мафиозных кланов, которые в тайне, от всего мира, владеют империей по продажам парктроников. Шутка. Проекту не суждено сбыться, поскольку гараж оказался меньше, чем я рассчитывал и пригоден только для хранения велосипедов и другого мусора, который обычно и хранят в гаражах. Машина просто-напросто не влезла по длине. Но нет повода для печали, ведь уже есть некоторые наработки – они пригодятся в будущих девайсах. Про одну такую наработку, я и хочу сегодня рассказать. Это самодельный 7-сегментный индикатор, который в несколько раз больше, покупных аналогов.
Читать далее «Самодельный 7-сегментный индикатор. Подключение к arduino»
Подключение сервопривода mg90s к arduino. Клешня
Как-то в магазине мне попался на глаза игровой аппарат «хватайка», который служит для выманивания десятирублевых монеток и детей, соблазняя молодых жертв, вкусными конфетами. Конструкция машины не сложная – каретка, которая перемещается по осям X и Y, а также клешня, которая по нажатию на кнопку опускается и хватает, все что сможет. Далее каретка отъезжает и отдает выигранное богатство довольному ребенку. Перемещение по осям довольно простое и интереса у меня не вызвало, а вот клешня показалась достойной темы для этой статьи. Как раз у меня появился новый сервопривод mg90s и уже давно чешутся руки его куда-нибудь приспособить.
Читать далее «Подключение сервопривода mg90s к arduino. Клешня»
Датчик уровня воды. Пример подключения геркона к arduino
Недавно у меня появилась необходимость определять критический уровень жидкости в емкости и сигнализировать об этом. Первым делом я, конечно, отправился искать готовый датчик уровня воды на просторах aliexpress. Но ни чего подходящего за разумные деньги там не нашлось, поэтому поиски перенеслись на форумы и сайты электронщиков. Там тоже не удалось откопать ни чего простого в реализации и дешевого. Делать нечего, прошлось изобретать самому – несколько часов проектирования и датчик готов. За основу был взят обычный геркон, который срабатывает при приближении к нему магнита.
Читать далее «Датчик уровня воды. Пример подключения геркона к arduino»
Один robots.txt на несколько доменов
Недавно по работе столкнулся с довольно рутинной и нудной задачей – выполнение ТЗ для СЕО-оптимизации сайта. Кто сталкивался с подобными задачами, наверняка, сейчас сморщили гримасу неприязни и физическую боль во всем теле. Да, СЕОшники знают толк в извращениях. Но статья не про продвижение сайтов и не про веселых ребят оптимизаторов, а про один из пунктов ТЗ, который внес немного разнообразия в рабочий процесс и скрасил трудовой час. В одной из задач ТЗ, была поставлена цель, сделать различное содержание файла robots.txt для разных доменов. Домены в свою очередь припаркованы к одному серверу и используют одни и те же файлы. То есть нужно реализовать вывод разной информации при обращении к одному и тому же файлу. Задачка мне показалась интересная и вот, про нее статья.
Сдвиговый регистр 74HC165 и adruino. Добавление пинов
Не редко в процессе разработки на arduino приходиться использовать больше количество пинов для считывания событий. Это могут быть кнопки, концевики, цифровые датчики и тд. Но ардуино имеет ограниченное количество пинов, что может стать проблемой для больших проектов. В этой статье описано, как выйти из ситуации с нехваткой входов arduino.
Читать далее «Сдвиговый регистр 74HC165 и adruino. Добавление пинов»
Уровень заряда аккумулятора 18650 на arduino
Для каждого устройства, которое работает от автономного источника питания, основным показателем времени «жизни» до следующей подзарядки является уровень заряда аккумулятора. Без этой информации не представляется возможным ни одно электронное устройство. Много кто любит сюрпризы, но неожиданное прекращение работы девайса вряд ли кому-то понравится. Вот и я не отношусь к числу мазохистов, которые получают удовольствие от неожиданно переставшего работать устройства. Поэтому в новом проекте, который должен будет работать по 3-4 месяца автономно, было решено добавить контроль уровня заряда аккумулятора. Уровень заряда будет измеряться в процентном соотношении и периодически отправляться по сети интернет или в смс. В этой статье будет рассмотрено только определение уровня заряда аккумулятора и вывод информации на дисплей, чтобы не загружать текст лишней информацией.
Картинка 360 градусов на JavaScript
Недавно я писал статью про поворотный стол, с помощью которого хотел снимать короткие видео прототипов и готовых устройств. На видео можно будет осмотреть предмет со всех сторон, это удобней, чем просто фотография. Идея не плохая, но появилась, как мне кажется, более интересная – реализовать фотографию с обзором в 360, где пользователь сам сможет повращать изображение с помощью мышки. Такой подход позволит вращать картинку в любом направлении, с удобной скоростью и возможностью останавливаться в любой момент. Чтобы реализовать возможность такого просмотра я написал маленький jQuery плагин на JavaScript.
Читать далее «Картинка 360 градусов на JavaScript»
Генерация пароля с помощью JavaScript
Наткнулся на интересное решение для генерации случайного пароля с помощью JavaScript. Код очень короткий и простой, он мне настолько понравился, что я решил написать про него небольшую статейку. Расписывать тут особо нечего, вся генерация сводится к одной строке:
Math.random().toString(36).slice(-8);
На этом можно закончить, но получилось совсем короткая запись, даже по меркам twitter`a. Поэтому добавлю пояснение и еще один вариант генерации.
Читать далее «Генерация пароля с помощью JavaScript»