Рубрика «selectel» - 47

Это не должно быть страшно: как не-хоррор-игры пугают сильнее ужастиков - 1

Хоррор-игры прямо обещают нам: будет страшно. Мы ожидаем мрачную музыку, гнетущую атмосферу, опасности за углом. За это мы их и любим. Однако подлинное ощущение ужаса часто настигает там, где его никто не ждал, — в играх, созданных вовсе не для этого. Детские платформеры, фэнтезийные квесты, мирные симуляторы жизни, RPG. Они внезапно дарят опыт тревоги, ломают доверие к игровому миру и порождают глубоко личный страх. Что делает эти моменты по-настоящему пугающими? Почему, казалось бы, безобидные игры запоминаются криповыми сценами сильнее, чем жанровые ужастики? Это явление заслуживает отдельного разбора. Присоединяйтесь.Читать полностью »

image

Пару недель назад я описывал ноутбук-трансформер, который я нашел на барахолке. Модель — Acer Switch One 10, я его купил всего за 10 евро. Увы, у него был разбитый экран, но в остальном он выглядел живым. Дома у меня уже давненько пылился такой же, но с другой проблемой: материнская плата вроде работала, через HDMI изображение выводилось, а вот на родной дисплей — нет. И тут я решил поменять материнки местами, получив «полтора» девайса. Один полностью рабочий, второй – наполовину. В статье покажу, что там внутри, расскажу, что за девайс и почему именно эта модель мне нравится. Поехали.
Читать полностью »

Кромешная темнота: почему случился блэкаут 2025 года в Испании и Португалии - 1

28 апреля 2025 года Испания, Португалия, Андорра и частично юг Франции столкнулись с крупнейшим в истории Европы отключением электроэнергии, затронувшим более 50 миллионов человек. Я бы не писал эту статью, если бы не оказался одним из этих десятков миллионов. Крайне необычный опыт, уверяю.

Инцидент, названный в испанских СМИ «Gran Apagón» (Великое отключение), парализовал города, остановил транспорт, нарушил телекоммуникации и вызвал экономические потери, оцениваемые в 1,6 миллиарда евро. В этой статье разберу, что привело к блэкауту, как он развивался, какие меры помогли восстановить энергосистему и какие выводы можно сделать для предотвращения подобных событий в будущем. Почему спустя несколько месяцев? А разного рода комиссии и аналитики подготовили окончательные выводы только сейчас, так что вот так.
Читать полностью »

Как я собрал ноутбук, который можно передать по наследству - 1

Novena Heirloom — это созданная мной ограниченная серия кастомных корпусов для компьютера Novena с открытым исходным кодом, разработанного Эндрю Хуангом и Шоном Кроссом. Проект финансировался путем краудфандинга в сотрудничестве с компанией Crowd Supply из Портленда, штат Орегон.

Всего было разработано несколько прототипов. Рассматривался даже вариант конструкции в виде мольберта. После консультации эта идея все-таки была отвергнута в пользу более традиционной «раскладушки». Имелось важное требование: обеспечить доступ пользователя к внутренним компонентам. Так мы пришли к необходимости съемной клавиатуры, что в значительной степени определило конечный результат. Основная идея дизайна вдохновлена винтажными Hi-Fi системами, ярким представителем которых является Дитер Рамс. Надеюсь, наш труд станет данью уважения к его работам. Финальный дизайн в значительной степени остался верен первоначальному концептуальному прототипу.

Все подробности создания — под катом.Читать полностью »

image

Лето хорошо не только тем, что тепло (смотря где, конечно) и солнечно. Плюс еще и в том, что производители представили сразу несколько интересных одноплатников. Среди них модели, которые можно использовать как в DIY, так и в промышленности. Разные компании представили несколько нестандартных решений: от бюджетных маршрутизаторов с HDMI до x86-плат на Intel Twin Lake и экспериментальных FPGA‑устройств. Посмотрим на пять новых моделей, чтобы разобраться, чем они интересны и куда могут вписаться.
Читать полностью »

Собирали франкенштейна из mdadm, LVM и bcache? Теперь попробуйте ZFS - 1

Привет! Меня зовут Ваня, я системный администратор в Selectel. Представьте, что вы используете mdadm для отказоустойчивости, bcache — для ускорения медленных HDD, cryptsetup — для шифрования данных, LVM — потому что нужно создавать в рейде несколько блочных устройств, и btrfs — за любовь к сжатию и снапшотам. А теперь прихожу я и говорю, что все это можно заменить одной файловой системой — ZFS. Как именно? Под катом разберемся в ее устройстве, но без излишнего погружения — не будем превращать статью в «простыню».Читать полностью »

Раздувание таблиц в PostgreSQL: работа с vacuum и pg_repack - 1

Когда вы в последний раз очищали БД от старых записей? А ведь раздувание таблиц и индексов в PostgreSQL из-за неактуальных данных — один из часто недооцениваемых источников «тихих» деградаций. Запросы потихоньку становятся медленнее, бэкапы — тяжелее, а место на диске расходуется неэффективно. В итоге любое лишнее уведомление от алерта или доля секунды задержки могут обернуться сбоем системы.

Привет! На связи Александр Гришин. Я руководитель по развитию продуктов хранения данных Selectel: облачных баз данных и S3-хранилища. В этой статье предлагаю разобраться с одной из тех проблем, которые редко попадают в мониторинг, но легко становятся причиной инцидентов в проде. Посмотрим, чем pg_repack отличается от VACUUM FULL, какие особенности есть у каждого подхода и как использовать repack без дополнительных телодвижений. Статья будет полезна инженерам, поддерживающим PostgreSQL в продакшене, разработчикам облачных приложений и SaaS-сервисов и просто любопытным, кто стремится лучше понять, что происходит под капотом PostgreSQL в разных ситуациях. Погнали!Читать полностью »

Эволюция UI за 35 лет: от GIF и Comic Sans к нейросетям и адаптивам - 1

Привет! Сегодня мы привыкли к чистым и удобным интерфейсам, но так было не всегда. За последние 35 лет UI прошел путь от хаотичных сайтов с мигающими кнопками и пестрыми шрифтами до минималистичных и адаптивных экранов, созданных с участием ИИ. Вспоминаем, с чего все начиналось и как мы пришли к Figma, нейросетям и «воздушному» минимализму.

До 1980-х годов компьютеры были доступны единицам и управлялись с помощью набора текстовых команд. В 1980-х появились первые графические пользовательские интерфейсы и HTML — язык, который дал возможность упорядочить и структурировать текстовые блоки на сайте. А в 1990-х вместе с распространением персональных компьютеров и появлением интернета в мире дизайна началась новая эпоха, когда разработчики пытались имитировать физический мир на экране, а сайты стали отдаленно напоминать те, которые мы видим сейчас.
Читать полностью »

Интерфейсы без экрана: как разговаривают голосовые ассистенты, когда никто не слышит - 1

А что если ваш голосовой ассистент никогда не замолкает? Даже когда экран темный, а в комнате мертвая тишина, он ведет свою тайную беседу. Не с вами, а с тысячами серверов. О чем? О вас. В этой статье я предлагаю разобрать механизмы этого фонового «общения»: что именно передается в тишине и как это работает. Детали, как всегда, под катом.Читать полностью »

Векторный поиск внутри PostgreSQL: что умеет и где может пригодиться pgvector - 1

Итак, ваш проект вырос и вам потребовалась новая функциональность, будь то рекомендательный движок, база знаний или автоматизированная первая линия техподдержки. Для всего этого можно использовать векторный и/или семантический поиск, а также интегрировать в проект LLM. Поздравляю — теперь вам нужно еще и хранить embedding-векторы, а также искать по ним ближайшие объекты. Решений два: внешняя векторная БД или интеграция всего этого богатства в существующий стек. Второй путь проще на старте, немного быстрее и обычно дешевле — разумеется, если вы уже используете PostgreSQL.

Привет! Меня зовут Александр Гришин, я отвечаю за развитие продуктов хранения данных в Selectel: облачных баз данных и S3-хранилища. В этой статье я расскажу о pgvector — расширении для PostgreSQL, которое позволяет добавить векторный поиск без внешних сервисов, пересборки архитектуры и большого количества работы. Материал пригодится продуктовым командам, архитекторам, бэкенд-разработчикам и инженерам данных.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js