#%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5

2025-10-09

TypeScript или Rust: когда переписывать сервис и какие выигрыши ждать

Вы тоже хоть раз ловили себя на мысли: «А может, ну его, этот Node.js — перепишем всё на Rust, и будет летать?» Поздравляю — вы не одиноки. Я тоже через это прошёл. В этой статье я разложу по полочкам, когда действительно стоит лезть в Rust , а когда лучше остаться на TypeScript и просто выспаться. Без фанатизма, маркетинга и с примерами из практики.

habr.com/ru/articles/954872/

#javascript #архитектура #фреймфорки #программирование #react #solid #принципы_разработки #вебразработа #чистый_код #легаси

2025-10-08

Модуль обработки и коммутации данных, с внешними управляющими устройствами по RS-485 на STM32

Привет, Хабр! В данной статье будет рассматриваться разработка коммутатора, для приема, обработки и передачи потока данных от GNSS-приемника и энкодера, осуществляться передача ведущему устройству будет по интерфейсу RS-485. Интерфейс RS-485 - представляет собой промышленный стандарт физического уровня передачи данных, широко применяемый в распределенных системах управления, телеметрии и автоматизации, его ключевая особенность - использование дифференциального сигнала, что обеспечивает высокую помехоустойчивость и надежность передачи данных на значительные расстояния (до 1200 метров). В основе работы лежит двухпроводная линия (выводы А и В), по которой передается информация в виде разности потенциалов: Логическая "1" фиксируется при условии, что напряжение на линии А ниже, чем на линии B; Логический "0" соответствует ситуации, когда потенциал линии А выше потенциала линии В. Такой метод передачи данных позволяет минимизировать влияние электромагнитных помех, так как внешние наводки одинаково взаимодействуют на обе линии и компенсируются при дифференциальном приеме.

habr.com/ru/articles/950818/

#программирование_микроконтроллеров #stm32 #gps #энкодер #modbus #rs485 #nmea #электроника_для_начинающих #программирование #проектирование_интерфейсов

2025-10-08

Как я свой макропад за 600₽ собирал

Собрал свой макропад за 600₽. Делюсь, как за пару вечеров создал программируемую мини-клавиатуру с 10 механическими кнопками, удобной эргономикой и RGB-подсветкой. Без дорогих плат, с 3D-печатным корпусом и Raspberry Pi Pico.

habr.com/ru/articles/954234/

#Макропад #Бюджетная_сборка #Механическая_клавиатура #Программирование #3Dпечать #Raspberry_Pi_Pico #Матрица_кнопок #Пайка #Прошивка #Эргономика

Космическая станция Аналитикиinitkfs@mastodon.ml
2025-10-04

Графический движок (SDL3, Cairo, Dlang). Трогаю SDL GPU.

Godot произвёл хорошее впечатление. Штука мощная, но противоречивая. Симуляторы требуют времени, а нужного опыта капает не так много. Игры - тем более, потерь времени больше, а результат ещё бесполезнее.

Пока использовать готовые движки не буду, перенаправляя время на собственный. Значит, нужно завозить 3D.

Заполучить 3D можно по-разному. В SDL3 появилась абстракция над графическими API - SDL GPU над Direct3D 12, Metal, Vulkan (да-да, OpenGL в списке нет).

Шейдеры не кроссплатформенные, но их можно накомпилить заранее. Даже сделали утилитку SDL_shadercross. Как линуксоид, я компилил из HLSL в SPIR-V.

Первым обычно рисуют "2D" треугольник, я тоже так сделал. Всё вроде как и везде: вершинный и фрагментный шейдеры собираются в пайплайн. Буфер вершин копируется в GPU через промежуточный на проходе копирования. В проходе рендеринга пайплайн и буферы биндятся и рисуется примитив.

#graphics_engine #dlang #dm #программирование

2025-09-26

Как настроить себе запуск Яндекс музыки на MacBook?

Лежу я тут недавно, в 5 утра, а сам понимаю, что вставать-то мне в 9. А сплю я ну очень крепко. И в целом мне сложно проснуться. И я осознаю, что нужна тяжёлая артиллерия! Что-то из давно себя зарекомендовавшего. А единственное, что меня стабильно хорошо будило - это AIMP на ноуте, который запускал мой плейлист на полную катушку в заданное время. А теперь у меня Macbook, а вместо скачанного архива музыки - Яндекс Музыка. Решение, казалось бы, найдено. Открой приложение, да настрой запуск по таймеру, да? А вот как бы не так! В ЯМузыке такой фичи нет, крутитесь как хотите. Настроить что-то такое через Календарь и другие штатные приложения мне не удалось. Потраченные в пустую пол часа моего драгоценного сна! Чёрт! Надо решать как это сделать, это уже дело принципа! -Что же, что мы умеем? -Мы умеем писать автотесты на Java! -Как нам это тут может помочь? -Ну хз... Ага! Фреймворк Robot. Вроде штатная Java либа. Давайте раскручивать с чем умеем работать. Вооружаемся гуглом и Perplexity. Ещё пол часика умствований и у нас уже запускается приложение Яндекс Музыка. Теперь остался вопрос, а как заставить его запускаться в нужное время и включать воспроизведение музыки? Ну с запуском по времени не сложно Calendar и Timer. А вот как запустить воспроизведение вообще не тривиально. Клик на пробел - не работает, на enter - не работает. После прокликивания всех кнопок вычисляем, что запускается по клику на "K". Ну всё, теперь-то вообще нет проблем, да? Робот кликнет на любую кнопку - только скажи, что тыкнуть. Дописываем, компилим, запускаем - хрен там плавал а вот вы и не угадали, не работает! Клик по кнопке происходит не в последнем открытом окне, а на рабочем столе.

habr.com/ru/articles/951136/

#яндексмузыка #тестирование #программирование #бессонница

2025-09-26

[Перевод] Используйте простейшие рабочие решения

Занимаясь проектированием систем ПО, идите самым простым путём из возможных. Причём эту рекомендацию можно применять на удивление широко. Я искренне верю, что так можно делать всегда. Эта техника подходит для исправления багов, обслуживания имеющихся систем и проектирования новых. Многие инженеры, продумывая дизайн системы, представляют себе некий её «идеал»: что-то стройное, практически бесконечно масштабируемое, удобно распространяемое и так далее. Я же считаю, что это абсолютно ошибочный подход к проектированию ПО. Напротив, нужно вложить всё это время в глубокий анализ имеющейся системы, а затем реализовать простейшее рабочее решение.

habr.com/ru/companies/ruvds/ar

#ruvds_перевод #программирование #разработка #оптимизация_кода #повышение_надежности #простой_код

2025-09-26

Почему Фараон остается лучшей игрой в серии

В 90-х и 2000-х студия Impressions Games выпускала отличные исторические градостроительные симуляторы. Я играл во все игры этой серии от незабываемого Caesar 3, который вообще был первой моей компьютерной игрой на отцовском компуктере, до Императора про древний Китай. Но египетский Pharaoh и греческий Zeus запомнились намного четче, но вот почему я сказать не берусь. Единственное серьёзное отличие между Фараоном и Зевсом в нетехническом плане — это были графические ресурсы, внутри же там полностью сменилась вся команда и со слов старожилов сменился движок, но серия уже была известна и многочисленные отличия по возможности скрыли, перенеся практически без изменений разные механики из Фараона в Зевс, да похоже перестарались, и многим сейчас игра покажется скорее дополнением, а не полноценной номерной частью серии. Ностальгии пост и много скриншотов

habr.com/ru/articles/950938/

#разработка_игр #программирование #c++11 #ненормальное_программирование

2025-09-26

Модуль datetime в Python для начинающих с домашним заданием

Работа с датами и временем в Python — базовая задача, которая часто вызывает трудности у начинающих. В этой статье мы с нуля разберем встроенный модуль datetime, который элегантно решает большинство проблем. Вы научитесь получать текущее время, выполнять операции с датами, а главное — парсить строки и форматировать вывод с помощью strptime и strftime. Это пошаговое руководство для новичков, с практическим заданием на GitHub в конце.

habr.com/ru/articles/950914/

#python #datetime #python_для_начинающих #программирование #strptime #strftime

Дима ЛинкDimaLinkRus
2025-09-25

School Freeware – Фри Паскаль и Лазарус уроки

В этом году, я больше стал учиться. По вопросу программирования. Наконец-то, в этом году прошел серию уроков по Фри Паскаль. Лазарус. Это как Делфи. Давно хотел, как говорится. Стал больше учиться в этом году.

dimalinkrus.blogspot.com/2025/

уроки

Май Тэлнцmtelnts
2025-09-25

Роскомнадзор сходит с ума. Блокирует сайты, не по теме. Я наткнулся на два сайта, которыми раньше пользовался. Itch.io и Godot.org 😒😟😕

2025-09-24

«Перловый ренессанс»: почему забытый язык Perl снова в деле

Представьте: вы сидите за терминалом, перед вами — гигабайт логов, и нужно за минуту вытащить ключевые паттерны, сгенерировать отчет и не утонуть в коде. Python? Можно. Но есть инструмент, который справится быстрее, лаконичнее и без лишних библиотек. Это Perl — язык, который многие из вас оставили еще в нулевых. Но в 2025 году он неожиданно выстрелил, взлетев с 27-го на 10-е место в рейтинге Tiobe. Что за магия, что произошло? Давайте разбираться.

habr.com/ru/companies/ru_mts/a

#perl #разработка #программирование #прогнозы_в_it

2025-09-23

Новая профессия в IT: «чистильщик кода» после ИИ. Как она появилась и что из себя представляет

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

habr.com/ru/companies/ru_mts/a

#программирование #прогнозы_в_ит #искусственный_интеллект #чистильщик_кода #разработка #ai

2025-09-23

Издательство «БХВ» теперь на Хабре. С чем мы к вам пришли

Приветствуем, коллеги! Вы читаете первую статью от имени издательства « БХВ » (BHV) из Санкт-Петербурга, которое наконец-то решило официально обосноваться на Хабре и попробовать систематизировать нашу работу на этой великолепной платформе, объединив рекламный контент, тизеры и спойлеры в корпблоге. Меня зовут Олег Сивченко, я тружусь в БХВ менеджером проектов в области компьютерной литературы 4+ года, одновременно работаю в редакции Хабра, где веду небесспорный, но очень интересный научно-популярный блог @OlegSivchenko и блог с IT-переводами @Sivchenko_translate Кроме меня в команде БХВ есть ещё один маститый хабровчанин, пишущий под псевдонимом Валентин Холмогоров @Holmogorov —ведущий редактор журнала «Хакер», ранее работавший в отрасли кибербеза, руководил командой технических писателей. Так что, феномен хаброблога и хабрааудитории для нас не в новинку. Далее — немного о нашем издательстве.

habr.com/ru/companies/bhv_publ

#книги #издательство #программирование #авторы #маркетинг

2025-09-23

Издательство «БХВ» теперь на Хабре. С чем мы к вам пришли

Приветствуем, коллеги! Вы читаете первую статью от имени издательства « БХВ » (BHV) из Санкт-Петербурга, которое наконец-то решило официально обосноваться на Хабре и попробовать систематизировать нашу работу на этой великолепной платформе, объединив рекламный контент, тизеры и спойлеры в корпблоге. Меня зовут Олег Сивченко, я тружусь в БХВ менеджером проектов в области компьютерной литературы 4+ года, одновременно работаю в редакции Хабра, где веду небесспорный, но очень интересный научно-популярный блог @OlegSivchenko и блог с IT-переводами @Sivchenko_translate Кроме меня в команде БХВ есть ещё один маститый хабровчанин, пишущий под псевдонимом Валентин Холмогоров @Holmogorov —ведущий редактор журнала «Хакер», ранее работавший в отрасли кибербеза, руководил командой технических писателей. Так что, феномен хаброблога и хабрааудитории для нас не в новинку. Далее — немного о нашем издательстве.

habr.com/ru/companies/bhv_publ

#книги #издательство #программирование #авторы #маркетинг

2025-09-23

Утилита Find и регулярные выражения

Про find можно писать много и долго, а если еще перевести мануал и снабдить каждый параметр развернутыми примерами, то материала получится на целую книгу. Пока эту книгу никто не написал, я решил рассказать о некоторых особенностях работы утилиты с регулярками и другими функциями. Регулярки освоить нетрудно. Буквально за пару часов можно получить почти средний уровень владения и научиться читать и писать выражения для поиска ip-адресов, e-mail, html-тегов, телефонных номеров, дат и прочих несложных конструкций. Я думаю, все это вам знакомо, но на всякий случай в конце статьи я добавил несколько ссылок для изучения. Я уже прошел «курс молодого бойца» по регуляркам, написал свою, вставил в find, и она не сработала. Но пойдем по порядку.

habr.com/ru/companies/lanit/ar

#программирование #ланит #регулярные_выражения #regex #java #квантификаторы #регулярки

2025-09-22

Простота и Гласность

В именах Masha , Rodion и Ekaterina насчитываем 2, 3 и 5 гласных букв - это всё простые числа. Гласными в рамках этой задачи считаются aouie , без y (хотя это дискриминация). Представьте, даны две строки одинаковой длины, например abbas и abzac - они задают некий диапазон всевозможных строк (этой же длины) в алфавитном порядке: abbas, abbat, ..., abyzz, abzaa, abzab, abzac Сколько в этом диапазоне строк, имеющих "простое" количество гласных? Тут даже ребёнок легко сосчитает - всего 7289 :) А как посчитать если ограничение на длину строки - до 150 символов? Приглашаем попробовать новую задачу на CodeAbbey от Клайва Фрэйзера: Prime Vowel Count - она хороша тем что демонстрирует довольно общий подход к целому классу подобных задач (не обязательно даже про строки). Читать далее нечего

habr.com/ru/companies/codeabbe

#строки #программирование #задачи #задачи_для_программистов

2025-09-21

Проблема, о которой вы даже не подозревали: print(.1+.2)

Как следует отображать на экране результат деления 3.0 на 10.0 ? Сколько цифр следует вывести, если пользователь не указал точность? Скорее всего, вы даже не знали, что вывод чисел с плавающей запятой — это сложная проблема , настолько сложная, что по ней написаны десятки научных статей, причём последний прорыв был относительно недавно, в 2016 году. На самом деле, это одна из самых сложных частей поддержки чисел с плавающей запятой в среде выполнения языка. Давайте продолжим разговор о самой неоптимизированной в мире библиотеке эмуляции плавающей точки при помощи целочисленной арифметики. Первую статью читать тут .

habr.com/ru/articles/948556/

#float #плавающая_точка #числа #программирование #floating_point

2025-09-21

С чего ты взял, что айти не твое?

Наверное многие слышали фразу, что для того, чтобы стать разработчиком, надо иметь определенный склад ума и тому подобное. Что я думаю об этом? И да, и нет. Конечно, у людей, которые уже работают в сфере, постепенно формируется определённый стиль мышления, и приобретается навык, помогающий решать задачи. Но вопрос в другом: был ли он у них изначально или появился с опытом? Возможно, кому‑то действительно повезло, и они с самого начала обладали такими способностями. Лично я таких людей не встречал и сам к ним не отношусь. Но, как ни странно, и я, и мои знакомые вполне успешно работаем в IT‑компаниях, и нас до сих пор никто не уволил. Всё дело в том, что это навык, который можно развить. Я называю его «алгоритмическим мышлением». По сути, это умение разбивать большие задачи на более мелкие, представлять в голове алгоритм их решения и доводить его до результата. При этом важны не только логика, но и воображение с креативностью, без этого тоже никуда.

habr.com/ru/articles/949108/

#программирование #обучение #айти #карьера #мотивация #разрабо #алгоритмическое_мы #новичкам #старт_в_it

2025-09-21

В поисках идеального терминала

Сколько часов в день вы проводите в терминале? Часто задумываетесь о том, что какую-то операцию можно сделать быстрее? Любите привлекать внимание коллег необычным видом своего рабочего стола? Сегодня я решил собрать не просто интересные приложения, позволяющие повысить продуктивность работы, но и те, которые однозначно вызовут внимание окружающих и вопросы в стиле «а что это за софтина такая?». Так что временно отвлекитесь от работы и мигающего курсора, налейте себе кофейку и посмотрите, какие эмуляторы терминала позволят вам вывести рабочие процессы на новый уровень, а заодно прокачать визуальное и информационное пространство используемой оболочки.

habr.com/ru/companies/ru_mts/a

#программирование #open_source #терминал #работа

2025-09-21

Динамическая память и реализация динамического массива в C

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

habr.com/ru/articles/949024/

#массив #память #динамическая_память #си #структуры_данных #программирование #динамический_массив

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst