TL;DR: Расскажу о конструкции прибора для измерения содержания воды в древесине, покажу внутреннее устройство, монтаж, интересные конструкторские решения. Я коллекционирую разные интересные штуки, и однажды на Авито встретил объявление о продаже прибора ИВ-1-1. Вероятно, я бы смог подавить импульс и проигнорировать его, но надпись на коробке отмела все сомнения. Он был произведён в Архангельске (я живу в нём). Очень захотелось посмотреть, как он внутри устроен. И начинка не разочаровала. Спи…
ВведениеСегодня я выхожу в эфир со статьей, которая является неким потоком сознания. Сегодня не будет практической пользы, только мои размышления о Work Life Balance. Те, кто ждёт руководство или призыв к действию, проходите мимо! А те, кто остались, добро пожаловать на борт моего корабля. Мы отправляемся в круиз по волнам Work Life Balance, через рифы ночного кодинга прямиком на остров усталости!Три дня до дедлайнаВ четверг релиз, за мной закреплены две ключевые задачи. ПМ и аналитик в предвку…
Недавно со мной связался один старый приятель, у него было ко мне предложение. «Привет, я слышал, ты программист! Это отлично, потому что у меня и моего друга есть одна идея для бизнеса. Со всем важным мы разобрались, и нам просто нужен программист, чтобы соединить всё это вместе». Поначалу кажется, что в этом заявлении нет ничего странного. Эти ребята знают, чего хотят от приложения, им «просто» нужны технические знания для его реализации. Поэтому подавив своё желание сказать нечто жёсткое,…
ДИСКЛЕЙМЕР: Статья написана автором блога, на основе интервью с основателем производства агрометеорологических зондов А. Мягковым. Всем привет! Завтра в городе Томске 5 градусов ниже нуля, малооблачно, ветер юго-западный, 4 м в секунду, снег. Я знаю это, потому что уже больше 15 лет профессионально предсказываю погоду. В 1998-м я закончил радиофизический факультет Томского государственного и пошел работать в Институт мониторинга в томском Академгородке. Там увлечение погодой началось как хобби,…
Если бы мы организовывали предновогодний корпоратив «здорового» гофера, он выглядел бы так. 12 декабря, в четверг, собираем Go-разработчиков в Нижнем Новгороде и онлайн, чтобы обсудить практики тестирования микросервисов на Go, историю распила монолита, которая привела к… монолиту, и работу с монструозным Makefile (ждем откровений Даниила Подольского). В качестве нетайных Сант выступят эксперты из Wildberries, YADRO, Ви.Tech и Weborama — спикеры и участники GolangConf. Чтобы почувствовать прибл…
Привет, Хабр!Сегодня рассмотрим библиотеку Redux для JS, зачем она нужна, и стоит ли она вашего внимания. Redux — это библиотека для управления состоянием приложения. Redux создан для тех случаев, когда:У вас огромное приложение, и нужно управлять кучей данных.Эти данные нужно шарить между компонентами, которые находятся на разных уровнях иерархии.Есть сложная логика обновления данных, и хочется, чтобы код этой логики был не просто работающим, но и понятным через полгода.Redux помогает:Упорядоч…
Привет, друзья! В этой серии статей я рассказываю о Convex — новом открытом и бесплатном решении BaaS (Backend as a Service — бэкенд как услуга), которое выглядит очень многообещающе и быстро набирает популярность среди разработчиков. На сегодняшний день Convex предоставляет реактивную базу данных смешанного типа, механизм аутентификации/авторизации, файловое хранилище, планировщик задач и инструменты интеллектуального поиска. Эта вторая часть серии, в которой мы поговорим об аутентификации и…
WordPress × Wavesurfer JS – наконец-то дошли руки поделиться своим опытом использования wavesurfer.js в связке с сайтом на WordPress.WordPress × Wavesurfer JSКогда я делал вторую версию своего сайта и решил обновить раздел с музыкой мне захотелось сделать плеер с визуализаций частотной диаграммы, как у SoundCloud. Я достаточно быстро нашел wavesurfer.js и дальше начался процесс сбора информации с разных сайтов о том как его использовать. Постепенно я пришел к желаемому результату и решил им под…
Часто необходимо знать, с какой областью страницы взаимодействует пользователь. Например, если вы создаете выпадающее меню, нужно понять, когда его закрывать. Наивная реализация будет просто слушать клики и проверять, произошел ли клик вне элемента выпадающего меню. Но мышь — это не единственный способ взаимодействия, не стоит забывать и про клавиатуру. Кроме того, выпадающее меню может иметь вложенную многоуровневую структуру, что делает простую проверку целевого клика проблематичной.В этой ст…