Pull to refresh
2
0
Send message

Сервер за копейки

Level of difficultyEasy
Reading time18 min
Views71K
image

КДПВ


Обычно сервер ассоциируется с чем-то дорогим и недоступным обычному человеку. Даже на вторичном рынке они пока еще стоят весьма существенно (если не рассматривать совсем уж допотопные экземпляры). Однако, есть и такие, которые можно приобрести весьма недорого.


Это так называемые блейд-серверы. Блейд-сервер (от англ. blade — лезвие) – концепция использования нескольких компактных серверов в одной общей корзине (шасси). Некоторые узлы сервера (такие как блоки питания, охлаждение, сетевые адаптеры, управление) вынесены за пределы сервера и сделаны общими для всех. Благодаря этому исключается излишнее дублирование и, соответственно, уменьшаются габариты и общее энергопотребление всей сборки. Увеличивается плотность вычислительной мощности на единицу объема серверной стойки. Из-за того, что единичный блейд-сервер бесполезен без корзины, а в корзине избыточен, они не пользуются спросом на вторичном рынке, а потому стоят весьма недорого. 

Читать дальше →

Что на сегодня ясно про распад жира ( внутри человека )

Level of difficultyEasy
Reading time8 min
Views11K

1 - Жир лучше всего распадается, пока пульс минимальный и при этом человек куда то топает-идёт. В буквальном смысле слова - это механизм эволюционного выживания-перемещения. Скажем наступает голод в Питере, 25 000 лет назад. У людей в племени Кусь - есть по 10 кг лишнего жира, у людей племени Юсь - по 5 кг. Известно, что распад ВНУТРИ ОРГАНИЗМА 1 грамма жира даёт - 9 килокалорий. То бишь 10 кг жира это потенциальные - 90 000 ккал. Средний расход энергии в сутки, если ты постоянно будешь ходить, доходит до 5 000 - 8 000 ккал в сутки, может при морозе дойти до 10 000. В итоге племя Кусь на своём жировом пару утопает на 100 - 150 км от голодного региона. Племя Юсь утопает на 70 - 90 км. Больше шансов выжить будет у племени Кусь, учитывая что к концу пути оба племени будут максимально слабые, но племя Кусь на половине пути будет намного сильнее племени Юсь.

Жир имеет один минус - он не быстро распадается, ну нет в нас такого хим-процесса, что бы он давал энергию так же быстро как распад углеводов. Бегать на жиру не получается никак. Пичалька невероятная, всем кто хочет худеть бегая.

Читать далее

Один кадр против спуфинга: как мы определяем фейковые лица без видео и биометрии

Reading time4 min
Views1.6K

Иногда пользователи пытаются пройти биометрическую верификацию не совсем честно. Иногда — совсем нечестно. Кто-то показывает фото на экране другого телефона, кто-то — печатает лицо на бумаге и машет им в камеру. 

Всё это — спуфинг, и он давно вышел из лабораторий и научных статей в суровую продакшен-практику. А задача при этом, казалось бы, простая: по одному кадру понять, есть ли перед камерой живой человек. Ни видео, ни поведенческой биометрии, ни инфракрасных сенсоров. Просто JPEG. Просто ад.

Все о спуфинге и методах борьбы с ним знает наш разработчик Александр. Он работает над проектом антиспуфинг-системы, способной по изображению с фронталки отличать живого человека от картинки.

В этой статье мы расскажем, как он научил систему это делать. Без волшебства: только кастомный датасет, ансамбль CNN и несколько костылей — куда без них.

Читать далее

Токсоплазма и Токсоплазмоз или Одноклеточное, которое (похоже) научилось стерилизовать мужчин

Level of difficultyHard
Reading time22 min
Views23K
Про токсоплазму которая живет в котах и способна управлять поведением человека и делать его кошатником писал уже и жук, и жаба. Потому что токсоплазма известна больше ста лет, котов любят все, да и сову этой темы легко натянуть на глобус зомби-апокалипсиса/управления сознанием и проч. Идеальный набор. Но в таких потасканных темах сложно найти что-то интересное, да и токсоплазму я, в отличие от большинства, всегда скорее рассматривал в качестве биомедицинского инструмента (хотя я и опарышей так рассматривал). В общем писать не собирался. Но ровно до тех пор, пока не увидел свежее исследование от Zahady Velásquez из одного немецкого института паразитологии и не услышал ее тезис «единственный способ борьбы с этим — информирование». Статья заставила меня снова взяться за потертую IBM Model M, чтобы «вознести дары Хабру». Под катом небольшая «токсоплазматическая рефлексия». Заодно узнаете, какое отношение к этому всему имеет рыжий мужик с обвалочным ножом на КДПВ

Предупрежден значит вооружен!

Кликджекинг по двойному щелчку. Новый приём обманного UI

Reading time4 min
Views2.7K


Кликджекинг (подделка UI) — известный приём обмана пользователей интернета, когда поверх видимой страницы располагается невидимый слой, куда загружается фальшивка. То есть пользователю кажется, что он вводит пароль на доверенной странице, но на самом деле вводит его в стороннюю форму, которая принадлежит злоумышленнику.

В последние годы его риск значительно снизился, потому что все браузеры по умолчанию запретили межсайтовые куки, в то время как самые опасные варианты использования требуют авторизации жертвы на целевом сайте.

Однако несколько месяцев назад в Сети впервые замечены случаи кликджекинга по двойному щелчку. Вредоносные действия выполняются в промежутке между первым и вторым кликами незаметно для жертвы. Более продвинутая версия атаки работает практически на всех сайтах и в любых браузерах.
Читать дальше →

Уроки Git-хаоса: форс-ресет, удалённые ветки и GitLab

Level of difficultyEasy
Reading time5 min
Views4.3K

Привет! Я старший fullstack-разработчик в крупной b2b-команде, где мы активно развиваем IT турпродукты и сопровождаем легаси-проекты. Недавно мне довелось временно заменить тимлида — он ушёл в отпуск, оставив напоследок фразу: «Ты не будешь деплоить».

Спойлер: деплоил. И не просто деплоил, а чуть не похоронил релиз из-за одного неосторожного git reset --hard. К счастью, всё закончилось хорошо — но пришлось восстановливать ветки из GitLab’а, бороться с удалённой историей и вручную черри-пикать задачи.

Рассказываю, как всё было, какие выводы сделал и чего теперь точно делать не буду. Надеюсь, кому-то это сэкономит пару нервных клеток.

Читать далее

Оптимизация асинхронного сервиса на Python

Level of difficultyMedium
Reading time6 min
Views3.5K

Всем привет! Сегодня хочу поделиться с вами нашим опытом ускорения асинхронного микросервиса на Python примерно на 25%. Я расскажу, какие действия мы предпринимали с командой, что помогло, а что оказалось не особенно полезно с точки зрения ускорения сервиса.

Небольшое предисловие: мы в Иви постоянно работаем над тем, чтобы наши сервисы отвечали быстро и их максимальная предельная нагрузка повышалась. В процессе очередного анализа сервисов, мы выяснили, что один из них, о котором пойдет речь в статье, отвечает довольно медленно, учитывая его особенности. И мы решили его ускорять.

Читать далее

RFID-метки для программиста: как они устроены и как с ними работать

Level of difficultyHard
Reading time7 min
Views5.5K

RFID-технология давно стала частью повседневности — мы встречаем её в проездных, пропусках, банковских картах, системах доступа и даже в метках на одежде. Но что на самом деле происходит, когда мы подносим метку к считывателю? Как устроена эта метка внутри? Какие данные она хранит, и как программа может их прочитать или изменить?

Если вы — разработчик и хотите не просто «подключить библиотеку», а понять, как метка устроена на уровне байтов, как работает обмен данными, как выглядит структура памяти и какие команды реально отправляются на устройство, — эта статья для вас.

Читать далее

Intent, WebView и биометрия: как безобидные функции становятся инструментами хакеров

Level of difficultyMedium
Reading time22 min
Views1.8K

Из-за экономических санкций и удаления приложений из App Store и Google Play российские организации были вынуждены отойти от привычных всем репозиториев, предоставив злоумышленникам больше возможностей для обмана пользователей: загрузка и обновление приложений по внешним ссылкам даже для банковских клиентов стали привычными. Более того, пользователи ищут более удобную альтернативу известным приложениям

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

Эти угрозы требуют от специалистов по безопасности постоянного анализа и разработки контрмер. Для этого необходимо знать, какие инструменты и методы используют злоумышленники. Арсенал атакующих в общем случае выглядит так: вредоносное ПО, фишинговые письма и эксплойты.

Читать далее

Бюджетный ноутбук для разработчика: Обзор Ninkear A15 Pro 2025 за 40.000 рублей

Reading time5 min
Views5K

Выбор достойного среднебюджетного ноутбука на современном железе - порой не самая тривиальная задача для разработчика. На маркетплейсах представлены сотни разных моделей в ценовом сегменте до 600$ и среди них выгодно отличается обновленный Ninkear A15 Pro 2025, о котором я расскажу в сегодняшней статье. Как и принято в рубрике честных обзоров, в статье вас ждут: бенчмарки, тестирование времени компиляции проектов на C++, C# и Java (Android), тесты игр и разборка устройства с осмотром того, что у устройства "под капотом". Никакой воды, только конкретика!

Читать далее

Самый быстрый способ нахождения гласной в строке

Level of difficultyEasy
Reading time9 min
Views14K

Недавно меня заинтересовала такая задача: как лучше всего определить, что в строке есть гласная?

Казалось бы, тривиальный вопрос, правда?

Но, начав разбираться, я осознал, что задача гораздо глубже. Я бросил себе вызов: придумать как можно больше способов обнаружения гласной. Я даже попросил присоединиться ко мне нескольких друзей. Какой способ самый быстрый? Каким никогда не стоит пользоваться? Какой самый умный? Какой самый удобочитаемый?

В этом посте я рассмотрю 11 способов обнаружения гласных, алгоритмический анализ, дизассемблирование байт-кода Python, реализацию CPython и даже исследую опкоды скомпилированного регулярного выражения. Поехали!

Читать далее

Круговой импорт в Python: как он ломает проекты и как его победить

Level of difficultyEasy
Reading time5 min
Views4.8K

Привет, Хабр!

Сегодня говорим о том, что в какой‑то момент словит почти каждый разработчик, особенно если вы не просто пишете скрипты, а строите проекты — будь то Django, Flask или кастомная архитектура с бизнес‑логикой в отдельных слоях. Речь про круговые импорты: они не объявляют о себе заранее, не фейлят весь проект громко и сразу, но подкрадываются исподтишка. И вот вы уже сидите с ошибкой ImportError: cannot import name ... или AttributeError, гуглите часами, тасуете импорты туда‑сюда и ловите дежавю — кажется, это уже было, но где?

Читать далее

Протокол биохакера «Идеальное Утро»

Level of difficultyEasy
Reading time5 min
Views2.3K

Начало дня не просто задает настрой на день вперед. Если каждый день начинается с борьбы и дискомфорта, то это больше напоминает выживание, а не жизнь. Особенно когда весь этот заряд негатива несется с собой на работу или взрывается дома, не привнося конструктивных решений. Поэтому и был собран этот протокол простых и доступных рекомендаций для бодрого старта с самого утра.

Читать далее

Как заставить вашу базу данных летать, а не ползать. Часть 2 – когда репликации недостаточно и пора использовать шардинг

Level of difficultyMedium
Reading time8 min
Views6.1K

Всем привет! На связи снова Илья Криволапов — системный аналитик в SENSE, где мы трудимся на проекте одного из цветных банков РФ. Работаю в профессии уже пятый год и, несмотря на мою фамилию, с продом у нас в целом тёплые отношения. 

Помимо боевых задач, я преподаю курс «Хранение и обработка больших объемов данных» и за это время накопил немало практических кейсов и наблюдений. Всё это добро я решил не держать при себе и собрал самое полезное в виде ультимативного гайда по оптимизации и грамотному проектированию баз данных с расчетом на масштабирование, который сейчас публикую на Хабре.

Цикл состоит из 3 частей. В первой мы обсудили два базовых подхода к масштабированию БД: вертикальный и горизонтальный. Поговорили о плюсах, минусах и о том, как делать точно не стоит. 

Во второй части – то есть сейчас – мы нырнём глубже в мир горизонтального масштабирования и разберем три первых способа шардирования: по диапазону, по хэшу и по географическим зонам. Я расскажу, как каждый из них работает, где пригодится и в каких случаях может дать сбой.

Материал по-прежнему будет полезен всем, кто заботится о «здоровье» базы данных: DBA, архитекторам, DevOps-инженерам, аналитикам и разработчикам.

Готовы продолжать? Тогда поехали!

Читать далее

UX не так прост. 18 примеров темных паттернов

Level of difficultyEasy
Reading time11 min
Views4.8K


Темные паттерны, также известные как обманные или манипулятивные, — элементы UX-дизайна, которые подталкивают (может и не умышленно) пользователей к действиям, которые те не планировали совершать.

Спонтанные покупки, потеря личных данных, оформление подписок — зачастую вызваны наивностью, доверчивостью или когнитивными искажениями пользователей. Но как правило, все в интересах бизнеса!

В краткосрочной перспективе такой подход вполне может принести выгоду вроде роста продаж или вовлеченности. А что в долгосрочной? Подрыв доверия и вред пользователям? Под катом разбираем, что такое темные паттерны, оцениваем их распространенность и рассматриваем 18 конкретных примеров.
Читать дальше →

Пишем 3D-игру весом в 600Кб…

Level of difficultyMedium
Reading time15 min
Views17K

...которая работает на первом Android-смартфоне в мире, ретро-компьютерах из 90-х и даже Mac'ах! Часть 1.

Иногда у меня лежит душа просто взять и написать какую-нибудь небольшую игрушку с нуля, без использования готовых движков. В процессе разработки я ставлю перед собой интересные задачки: игра должна весить как можно меньше, работать на как можно большем числе платформ и использовать нетипичный для меня архитектурный паттерн. Недавно я написал трёхмерные «танчики», которые весят всего лишь 600 килобайт и в рамках подробной статьи готов рассказать о всех деталях разработки трёхмерной игры с нуля в 2025 году. Если вам интересно узнать, как работают небольшие 3D-демки «под капотом» от написания фреймворка до разработки геймплея — жду вас под катом!

Читать далее

Ральф Титор: незрячий изобретатель круиз-контроля

Level of difficultyEasy
Reading time4 min
Views2.4K

Среди изобретателей XX века было не так много людей с ограниченными возможностями. И тем примечательнее жизнь и судьба слепого новатора Ральфа Титора. Он автор десятков изобретений, среди которых, наверное, самое знаменитое — это круиз-контроль. О нём мы и расскажем сегодня.

Читать далее

Что такое прогрессивная перегрузка на самом деле?

Level of difficultyEasy
Reading time7 min
Views2.8K

Эта статья будет интересна тем хабравчанам, которые регулярно занимается силовыми тренировками. Если вы начали заниматься по моей программе, которую я публиковал в ноябре прошлого года (она получила много положительных отзывов, спасибо вам!), то к этому времени у вас может иссякать ваш newbie gains, и все все чаще начинаете слышать фразу "Хочешь расти дальше, нужно прогрессировать".

(А если вы еще не знаете, зачем заниматься силовыми, вот вам 7 железных причин для этого).

Хочешь быть сильным? Становись сильнее.
Хочешь накопить 12 млн за год? Откладывай каждый месяц по 1 млн.
Хочешь быть уверенным в себе? Становись увереннее по чуть-чуть каждый день.

Глупости, да?

Почему тогда великая силовая мудрость последних лет «Хочешь расти? Нужно прогрессировать» кажется логичной?

В этой фразе есть зерно… нет. Ведро зерен правды, но восприятие полностью искажено, с нарушением причинно-следственной связи.

Давай разбираться, что такое прогрессия, как ее создавать и использовать с умом.

Читать далее

Clair Obscure: Expedition 33 вернула мне веру в игровую индустрию

Reading time15 min
Views8.4K

Чем больше пишешь ретроспектив, тем отчётливее понимаешь, как в творчестве многое зависит от удачи. Но даже при таких исходных история появления и успеха французской RPG под названием Clair Obscure: Expedition 33 — это чудо из чудес. Как команда ноунеймов нашла друг друга, завоевала армию игроков и что данный феномен значит для игровой индустрии? На эти и не только вопросы давайте найдём ответы вместе.

Читать далее

Information

Rating
6,148-th
Registered
Activity