▍ Разработка ПО — это исследование Требуют ли фармацевтические компании от исследователей сообщить им сроки создания лекарства от рака? Исследователи могут сообщить сроки выполнения конкретного исследования (и достаточно точные сроки, потому что планы исследований обычно имеют графики), но результаты наподобие «получения лекарства от рака» зависят от того, что выяснится в процессе экспериментов. Для прогнозирования подобных результатов нам заранее нужно знать результаты экспериментов, но если…
Фичи, которых нетУже более десяти лет я профессионально занимаюсь C++ разработкой. Я вошел в профессию 2013 году, в самый момент, когда комитет по стандартизации языка C++ раскочегарился и встал на рельсы трехлетних релизов обновленных стандартов языка. Уже был выпущен C++11, в котором была введена куча самых заманчивых новшеств, существенно освеживших язык. Однако, далеко не каждому была доступна роскошь использовать все эти нововведения в рабочем коде, и приходилось сидеть на унылом C++03, о…
Чтобы на Хабр не писали чушь, его надо продезинфицировать. Чтобы быстрее продезинфицировать — пожертвовать свободным вечером и написать статью по горячим как вода следам. Как вы уже догадались, речь пойдет о статье «Можно ли пить горячую воду из крана и брать ее, чтобы вскипятить.». Хорошо, что утром, когда я прочел эту статью, я сидел на специальном разработанном Илоном Маском стартовом столе из жаропрочной керамики, снабженным просторной газоотводной камерой и затопленным водой каналом, эффе…
Только что мы обсудили (благодарю комментаторов), что дорогие препараты из аптеки можно практически бесплатно сделать дома. «Одно и то же лекарство можно купить и дешево и дорого. Что‑то и вовсе не лекарство. И что за лекарство — вода с солью»И там была такая субстанция — вода из‑под крана. Вот ее и стоит дополнительно обсудить.Чтобы воду продезинфицировать — надо ее вскипятить. Чтобы быстрее закипела, можно взять из водопровода сразу горячую воду, а не холодную. Но вот ответ на вопрос, можно …
Позавчера, 15 января ночью, по всему Рунету пошли сигналы, что протоколы WireGuard/OpenVPN массово «отвалились». Судя по всему, с понедельника Роскомнадзор снова взялся за VPN, экспериментируя с блокировками OpenVPN и Wireguard в новом масштабе.Мы в Xeovo заметили это по большому наплыву пользователей, которые вообще не знали что протоколы блокируются (где они были все это время). Уже учения были много раз, и мы предупреждали клиентов, но, видимо, OpenVPN и WireGuard до сих пор очень хорошо ра…
Введение Доброго времени суток, коллеги. Я go разработчик, по-этому примеры будут преимущественно на нём. Хочу порассуждать о методах взаимодействия сервисов. Тема очень обширна. Зачастую мы пользуемся реализациями, которые не всегда подходят, т.к. не знаем куда применить ту или иную технологию. Я хочу попытаться начать закрывать этот пробел как у себя, так и у людей. Любые комментарии и конструктивные исправления приветствуются. В данной статье хочу разобрать как работает gRPC, что он мож…
Привет, Хабр!Все знают, что SOLID и DRY делают код более чистым, гибким и, что немаловажно, понятным для других разрабов. Каждый компонент выполняет свою функцию и вместе они создают гармонию. В этой статье рассмотрим как эти принципы применяются в golang. SOLIDSingle Responsibility Principle гласит, что класс или модуль должен иметь только одну причину для изменения. Корочег говоря - каждый класс или функция должны решать лишь одну задачу, не более. Если у вас есть функция или класс, который …
Привет! Меня зовут Дмитрий Королёв, я бэкенд-разработчик в Авито. В большинстве современных приложений используется сериализация данных: для передачи данных между клиентом и сервером, для хранения сложных структур в базах данных, при передаче информации между микросервисами или отправке сообщений в очереди.Правильный выбор формата сериализации может существенно повлиять на производительность приложения, размер передаваемых данных и читаемость кода. В этой статье я покажу бенчмарки нескольких с…
Разработчики любят подшучивать над раздуванием зависимостей Javascript (и вполне имеют на это право, учитывая историю пакетов наподобие left-pad); при этом часто упоминаются пакеты is-even и is-odd. Поэтому я заинтересовался, кто же на самом деле их использует?Что такое is-even и is-odd?В большинстве приложений для выполнения часто встречающихся задач используются общие пакеты, чтобы разработчикам не приходилось переписывать заново код, уже написанный кем-то другим. Такие пакеты часто распрост…