Бро, если ты хоть раз руководил командой — ты это проходил. На стендапе всё звучит красиво: «делаю задачу, осталось чуть‑чуть», «почти готово», «просто баг странный». А потом проходит неделя, ты заглядываешь в код — и там либо ничего, либо половина сделано, либо вообще не туда копали.Нет, это не обязательно саботаж. Иногда это банальная прокрастинация, страх ошибиться, потеря мотивации, или просто неумение сказать: «я застрял». Но проблема‑то реальная. Если не ловить и не разруливать — команда …
Показанным ниже кодом вы можете проверить на високосность год в интервале 0 ≤ y ≤ 102499 всего примерно тремя командами CPU:bool is_leap_year_fast(uint32_t y) { return ((y * 1073750999) & 3221352463) <= 126976; }Как это работает? Ответ на удивление сложен. В статье я объясню процесс; в основном он связан с забавным битовым жонглированием. В конце мы обсудим применение этого кода на практике.Вот, как обычно реализуется проверка на високосность:bool is_leap_year(uint32_t y) { if ((…
Как показывает практика, жизнь – лучший учитель. Бэкапы я начал делать после заражения вирусом KillFiles, удалившего мою курсовую за день до сдачи. Источник бесперебойного питания купил после того, как сосед с перфоратором внезапно попал на силовой кабель, в результате чего выбило автомат у всего подъезда, а я потерял полдня работы. Но ничто не вечно под луной, и недавно у моего ИБП батарея устала навсегда. Превосходный повод попробовать заменить свинцовый аккумулятор на более современный лити…
У меня есть несколько персональных пет-проектов, где я тестирую различные технологии, сервисы и библиотеки или упрощаю собственную жизнь (например, персональный трекер с единственным пользователем - мной). Иногда хочется захостить эти проекты за пределами личного ноутбука, а еще лучше если есть возможность прикрутить собственный домен, чтобы можно было делиться с другими людьми. Так как все это абсолютно не коммерческие истории, то платить деньги за хостинг не очень хочется. Раньше для таких це…
"Предупрежден - значит вооружен" (© народная мудрость)Наверное все когда-нибудь сталкивались со звонками "старшего майора государственной безопасности" <имя неразборчиво>, объясняющего, что если не сделать то, что он скажет, то из свидетеля легко можно стать обвиняемым, или "службы безопасности банка" с предложением "перевести деньги на защищённый счет" для их сохранения, или "из пенсионного фонда" с просьбой "подтверждения рабочего стажа",…
Эта сложность возникает не только у вас — HDR сбивает с толку множество людей. В этом посте мы наконец объясним, что же такое HDR, расскажем о проблеме и трёх способах её решения.В прошлом году мы объявили о добавлении в наше приложение для работы с изображениями фотографий с HDR, или «High Dynamic Range». Большинство пользователей это порадовало, кого-то сбило с толку, а некоторые проявили откровенное беспокойство. Это связано с тем, что HDR может означать два разных, хотя и близких, понятия.П…
Ещё одна самодельная лампа с символами, из учебно-тренировочной серии с упрощённой обработкой и из дешёвого стекла от ламп дневного света (ЛДС). От предыдущих работ отличается крупной надписью с оригинальным, условно-объёмным расположением букв, работой на постоянном токе, компактным электродом-геттером из титана. ▍ 1. Концепция Большая Хабралампа, работающая на переменном токе [1] вышла не вполне удачной по технологическим причинам, но и конструкция её электродов, очевидно, усложнена. Лакони…
Тут немного о том, как я сделал библиотеку для проектировки простой мебели из ДСП не визуальным методом, а в виде PHP-скрипта. В далёкой-далёкой галактике... Точно уже не помню, когда именно это произошло, но если и не 10 лет назад, то близко к этому. В какой-то момент я решил, что больше не хочу покупать себе готовую мебель из ДСП. Выбирать её слишком сложно, для этого должно сойтись очень много звёзд: она должна помещаться в квартире, но при этом быть не слишком маленькой, иметь необходимы…
Год назад мы опубликовали пост «Когда одного Postgres'a мало: сравнение производительности PostgreSQL и распределённых СУБД». PostgreSQL показал исключительную производительность в случае, когда нет высоких требований к доступности сервиса и сохранности данных. Мы назвали такую конфигурацию «отказонеустойчивый и фантастически быстрый PostgreSQL». Но при включении write ahead log'a (WAL) и репликации производительность ощутимо снижается. Как оказалось, репликация может быть узким местом …