Автоматизированное получение золотого значка на StackOverflow c помощью Nightmare

Изучая значки (badges) на StackOveflow.com, я обратил внимание на золотую награду "Фанатик" (Fanatic), которая дается при выполнении условия: Visit the site each day for 100 consecutive days. (Days are counted in UTC.) (пер.: "Посещать сайт ежедневно в течение 100 дней подряд. (Учёт дней по UTC.)" Приходит на ум очевидная…

Анализ статистики использования WebStorage

Привожу результаты анализа использования localStorage и sessionStorage сайтами, которые я посетил за пару недель. Для сбора информации применялось самописное расширение «Collector». Данные собирались со всех сайтов, которые используют Web Storage. За 17 дней таких сайтов 268. (С учетом полного доменного имени). Статистика По типу хранимых данных: Используют Web Storage для…

Расширение Chrome для сбора статистики по использованию localStorage

Работая над расширением для Chrome Web Storage Explorer решил параллельно собрать статистику о хранимых типах данных в localStorage и sessionStorage. А именно: как часто веб-разработчики используют локальное хранилище для размещения JSON-объектов. Подразумевается, что информация будет собираться моим браузером на каждом посещенном сайте, в фоне. Полагаю, информации с пары-сотен доменов будет…

Простой способ распарсить и редактировать URL строку

Необходимость распарсить и модифицировать URL-строку произвольного вида часто приводит к использованию большого количества регулярных выражений. Есть достаточно удобный способ этого избежать и переложить парсинг URL на сторону браузера. Для этого необходимо создать (но не прикреплять к DOM) элемент <a> и указать нужный URL в href: var parser = document.…

Сниппет для подсветки клика по элементу на чистом JS

Важной кнопке или интерактивному элементу, с которым пользователь может взаимодействовать посредством клика, зачастую не хватает подтверждения совершённого действия. Для таких случаев автор применяет небольшой JavaScript-сниппет для анимации. Суть анимации такова: мгновенная установка свойства background-color и последующее плавное изменение его до оригинального значения спустя несколько секунд. Демо Некая важная кнопка для…

Устранение слабого Wi-Fi сигнала для чипа RTL8723be

Если вы читаете эту статью, значит на вашем устройстве есть подключение к интернету. Хорошо. После покупки ноутбука HP 15-ac124ur на нем было проведено тестирование дистрибутивов: Linux Mint 17.3, Xubuntu 14.04 LTS и Elementary OS «Freya». На вышеописанных системах наблюдалась проблема — крайне слабое качество Wi-Fi сигнала. Фактически полная невозможность…

Рекурсивное сложение всех цифр числа

Возникла необходимость в реализации алгоритма сложения всех цифр числа до тех пор, пока не получится однозначное. Пояснение задачи Имеется некое число, требуется получить сумму его цифр. Если в результате сложения получено не однозначное число — процедура сложения цифр повторяется уже для полученной суммы. И так до тех пор, пока на…

Консольное подключение по WebDAV в Windows и Mac OS X

Перед автором встала задача: программно и максимально нативно управлять подключением по WebDAV к удаленному хранилищу на двух операционных системах. Под программным управлением подразумевается запуск заготовленных скриптов в виде дочерних процессов с передачей авторизационных данных в виде аргументов. К счастью, все последние версии Windows и Mac OS X поставляются со встроенными…

Часы чертежника на Canvas

Рассмотрим пример реализации часов чертежника с применением Canvas. Canvas — элемент HTML5, на котором можно создавать растровые изображения с помощью чистого JavaScript. Часы чертежника — оригинальная идея аналоговых часов, стрелки которых являются ребрами прямоугольного параллелепипеда. Приводится демонстрация результата и аннотированный исходный код. Демо Исходный код > > Gist «squareclock.html»…

Пример конфигурации logrotate для PM2

О PM2 уже было немного сказано ранее. Если вкратце, то это менеджер nodejs-приложений. PM2 позволяет логировать вывод node-процессов, однако не содержит инструмента для ротации логов. Проблема решается с помощью linux-утилиты logrotate. Для ротации логов PM2 с помощью logrotate необходимо добавить в файл /etc/logrotate.conf следующую конфигурацию: /home/node_user/…