Feed aggregator

Ретро-гейминг проще, чем кажется. Какие консоли стоит купить для старых игр, чтобы проходить хиты с комфортом

Habr.com - Sat, 07/19/2025 - 12:05

Некоторое время назад мы уже составляли своеобразный «эдвайс-лист» консолей, достойных покупки, тогда это был китайский портатив для ретро (и не очень) гейминга. 

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

Читать далее

Программисты против инженеров: почему первые становятся бесполезными

Habr.com - Sat, 07/19/2025 - 11:15

Программисты против инженеров: почему первые становятся бесполезными

Сейчас в IT есть четкое разделение: — «Программисты» — это те, кто считает, что достаточно изучить пару библиотек и закрыть задачи в Jira. Их аргументы таковы:

• «Математика не нужна»

• «Английский не нужен»

• «Информатика — для ученых»

• Инженеры — это те, кто годами разбирался в алгоритмах, аппаратном обеспечении и распределенных системах, потому что без этого невозможно создавать сложные решения.

А что насчет DDD?

Читать далее

Больше 1600 товарных знаков: как создавал логотипы классик болгарского графического дизайна Стефан Канчев

Habr.com - Sat, 07/19/2025 - 11:01

Когда речь заходит о болгарском графическом дизайне, то у многих людей возникает непроизвольная улыбка на лице. Тем не менее он был и есть. И центральная фигура в его становлении и развитии — Стефан Канчев, создавший тысячи логотипов для компаний и организаций по всему миру. У него были выставки в Берлине, Москве, Варшаве и Нью-Йорке. О жизни и работах этого дизайнера мы и поговорим в сегодняшнем материале.

Читать далее

Вредные советы Java: просто используй Parallel Stream

Habr.com - Sat, 07/19/2025 - 10:18

Stream'ы в java явление давно не новое. Старая добрая Java 8 появилась на свет более 10 лет назад. С появлением Stream API жизнь стала проще и веселее. Но есть в Stream API два гадких утёнка: Stream#close и Stream#parallel.

С первым все достаточное просто — если не уверен в источнике откуда берется Stream — то он может быть вполне себе ресурсом и требовать try‑with‑resources (привет java.nio.file.Files#list). Cо вторым куда веселее...

Читать далее

Как я сделал автоматический Телеграм канал с помощью Gmail и OpenAI API

Habr.com - Sat, 07/19/2025 - 09:15

Как мы сделали автоматический Телеграм канал который по апи собирает новостные рассылки, суммаризирует и постит в Телеграм.

Читать далее

Оплата Стим: Обзор популярных сервисов для пополнения кошелька

Habr.com - Sat, 07/19/2025 - 06:07

В 2025 году оплата Стим для российских пользователей остаётся важной темой — особенно с учётом ограничений и роста комиссий у привычных способов. Многие до сих пор пополняют баланс через мобильных операторов, таких как МТС, или с помощью банковских карт, считая это удобным и выгодным. Однако на практике такие варианты часто сопровождаются завышенными комиссиями.

В этой статье мы разберём, как работает оплата Стим в 2025 году, какие существуют альтернативы, и представим рейтинг популярных сайтов, где можно пополнить кошелёк с меньшими комиссиями и без лишних сложностей.

Читать далее

Разработка высоконагруженных API: проблемы, решения, практические рекомендации

Habr.com - Sat, 07/19/2025 - 05:00

Ваш проект взлетел. Первые пользователи превратились в тысячи. Тысячи стали десятками тысяч. Метрики в дашбордах рисуют красивую кривую, устремленную вверх. Но есть и другие кривые, которые ползут вверх с не меньшей скоростью. Время ответа сервера. Количество ошибок 502 и 504.

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

Читать далее

Исчисление геометрии 3. Проективная внешняя алгебра

Habr.com - Sat, 07/19/2025 - 01:23

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

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

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

На картинке для привлечения внимания вращается четырёхмерная сфера, построенная средствами внешней алгебры.

Читать далее

Подробно о строках в Go

Habr.com - Sat, 07/19/2025 - 00:28

На заре появления первых компьютеров и программ перед инженерами встала проблема представления привычных им букв, цифр и знаков в понятный компьютеру формат. Нужно было придумать, как запрограммировать компьютер так, чтобы он мог хранить, например, строку «Hello», ведь символы «h», «e», «l», «o» ему непонятны — это не на его языке. Да и вообще таким понятием как «символ» компьютер не владеет.

Язык компьютера — это биты.

Бит — это один разряд двоичного кода (двоичная цифра). Может принимать только два взаимоисключающих значения: «да» или «нет», «1» или «0», «включено» или «выключено».

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

Но если бит может содержать всего одно из двух значений — 1 или 0, как с его помощью общаться с компьютером? Это все равно что пытаться общаться с людьми, используя лишь две буквы. Тут на помощь приходят байты.

Байт — это совокупность бит, обрабатываемых компьютером одновременно. Если в качестве метафоры считать биты за буквы, то байты можно условно рассматривать в качестве слов. Байт состоит из восьми бит, каждый из которых содержит 0 или 1.

Читать далее

Неочевидный нюанс при изменении пространства имён моделей в Laravel

Habr.com - Sat, 07/19/2025 - 00:28

На работе поступила очередная задача: разобраться и устранить странную проблему в работе давно и надёжно работающего сервиса. Проблема заключалась в том, что часть объектов двух видов перестала работать. Причём именно часть объектов.

Сам сервис написан на PHP с использованием фреймворка Laravel и служит для общения с внешней системой.

Поскольку есть внешняя система, то в первую очередь проверил её. Но с ней всё было в порядке. Данные уходили и приходили. И в БД сервиса всё заносилось как надо.

Но при обращении к ресурсам определённых объектов по API не возвращалась часть полей, которые хранятся в связанной таблице, связь типа полиморфное отношение «один-к-одному» («MorphOne»).

Читать далее

NASA. Используем космический репозиторий для обработки фото

Habr.com - Sat, 07/19/2025 - 00:23

Лет 7 назад ребята из NASA опубликовали на github опенсурс проект «Ames Stereo Pipeline (ASP)» зачем не это нужно? Читать чужой код сложно, но очень интересно, особенно когда это связано с космическими проектами, другими словами — бесплатная программа, разработанная лабораторией Эймса, с помощью которой можно делать крутые и детализированные 3D‑модели местности. Работает это просто: берёте пару снимков одной и той же территории, сделанных с разных углов (например, с дрона или даже из космоса), и ASP автоматически обрабатывает их и превращает в реалистичную трёхмерную карту или модель.

Читать далее

Сказание о стратегических паттернах DDD

Habr.com - Fri, 07/18/2025 - 23:16

Когда-то давно, впервые познакомившись с паттернами DDD, я подумал, что эта методология, очевидно, создана теоретиками, изрядно оторвавшимися от реальности. Себя, естественно, я считал опытным практиком. Прошли годы, прежде чем я осознал, что это Эванс был практиком, практиком создания сложных систем с большим временем жизни, а теоретиком в этой области был как раз я.

В этой статье не будет примеров кода и конкретных архитектурных приёмов. Но если, читая книги и статьи по Domain Driven Design, вы недоумеваете «зачем это всё вообще», возможно, у меня есть для вас ответ. Правда, боюсь, что он вам не особо понравится.

Читать далее

ИИ Детокс: DuckDuckGo запускает фильтр для удаления изображений, сгенерированных ИИ

Habr.com - Fri, 07/18/2025 - 23:07

Поисковик DuckDuckGo представил новую функцию, позволяющую пользователям скрывать изображения, созданные с помощью искусственного интеллекта, из результатов поиска. Это решение направлено на борьбу с "ИИ-мусором" — навязчивым, некачественным синтетическим контентом, всё чаще появляющимся в выдаче.

Читать далее

Как я читал «Братьев Карамазовых»

Habr.com - Fri, 07/18/2025 - 22:14

Роман опубликован 145 лет назад.

Количество слов: 297.069

Имеет около 26 экранизаций.

В основе сюжета романа находится предельно порочная страсть двух развратников - старого и молодого к одной юной особе обладающей магическим влиянием на своих кавалеров. Грушенька вьёт из мужиков верёвки и упивается своей осознанностью происходящего. Мужики дуреют с этой прикормки, сучат ножками и становятся в очередь на поцелуй (воздушный).

Читать далее

Как мы переписали мобильное приложение с React Native на Flutter

Habr.com - Fri, 07/18/2025 - 22:12

React Native не справился. Flutter — как глоток свежего воздуха.

Рассказываем, как наша команда переписала большое приложение (60+ экранов, оффлайн режим, карта, камера) на Flutter, с чем пришлось повозиться и почему теперь не жалеем.

Читать далее

Ошибки, которые не случились: C++ и compile‑time проверка SQL-запросов

Habr.com - Fri, 07/18/2025 - 21:39

В этой статье мы посмотрим, как можно реализовать полную compile‑time валидацию SQL‑запросов на основе схемы базы данных, встраиваемой прямо в код. Без магии, без рантайма, без сторонних тулов. Только стандартный C++ и ваша структура БД. Валидация таблиц, столбцов, типов аргументов и их количества — всё на compile‑time.

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

Читать далее

Советы в составлении резюме для новичков в тестировании

Habr.com - Fri, 07/18/2025 - 21:20

Приветствую читателей моей статьи!

В тестировании я уже 8 лет. Начала тогда, когда это еще не было мейнстримом :-)

Однако, сегодня эта профессия стала очень популярной и, по слухам, новичкам практически невозможно начать карьеру в этом поприще. Многие ребята сталкиваются с проблемой «донести» свое резюме до компании и попасть на собеседование. Поэтому я решилась на эксперимент и опубликовала резюме новичка без опыта работы на hh.ru, чтобы посмотреть – получится ли получить обратную связь.

Итак, входные данные.

Я взяла реальную историю и описала свои знания и навыки 15 летней давности т.е. на момент выпуска из колледжа.

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

timers.promises в Node.js

Habr.com - Fri, 07/18/2025 - 21:08

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

Сегодня мы рассмотрим один из тех маленьких, но мощных апгрейдов Node.js, который вы, скорее всего, недооценивали. Речь о timers.promises — свежем и способе работать с setTimeout и setImmediate в асинхронных функциях.

Читать далее

Обзор Waveshare ESP32-P4-86-Panel-ETH-2RO: новый уровень DIY-панелей в контексте ESPHome

Habr.com - Fri, 07/18/2025 - 21:00

Недавно на просторах AliExpress появилось интересное устройство от Waveshare — ESP32-P4-86-Panel-ETH-2RO. В этой статье я поделюсь своими впечатлениями о работе данного устройства, расскажу о плюсах и минусах, рассмотрю, какие задачи может решать эта панель и что уже можно сделать с ней через ESPHome прямо сейчас.

Читать далее

Код красный: как разработчику превратить негативный фидбек в позитивный результат

Habr.com - Fri, 07/18/2025 - 20:33

Привет, читатели! Представьте: вы вложили душу в решение сложной задачи, отправили код на проверку... и получили разгромный комментарий: "Это решение не масштабируется", "Слишком сложно", "А где обработка ошибки Х?" или кууучу правок. Знакомо чувство, когда внутри всё сжимается? Негативная обратная связь — неизбежная часть работы. Но что, если вместо источника стресса она станет сырьём для профессионального апгрейда? Давайте порассуждаем, как превратить критику в суперсилу, используя данные науки и практики.

Читать далее

Who's online

There are currently 0 users and 0 guests online.
Syndicate content