Эта история началась с того, что я допиливал свой пет-проект по обработке данных. В ходе работы мне попался старый, но надежный мультиметр. Я долго им пользовался ранее, изучая электронику. Сам прибор неплохой, но софт под него сильно устарел, да и заточен он только под Windows. Так я занялся реверс-инжинирингом, отладкой обмена сообщениями и сборкой библиотек для телефона. Подробности — под катом! Для подобного проекта можно использовать любую платформу, для которой получится собрать Qt-прил…
Когда вы в последний раз ремонтировали электронику дома? Приятно осознавать, что ты можешь вернуть девайс к жизни. Но есть нюанс: в погоне за компактностью, сложностью и специализированностью электроника становится все менее и менее ремонтопригодной. Производители припаивают SSD к материнским платам ноутбуков, делают батареи — одни из самых больших точек отказа — незаменяемыми пользователем и т. д. Ремонтировать что-либо стало дорого: два-три обращения в мастерскую с ремонтом ноутбука могут вы…
Около полутора лет назад я опубликовал на Хабре статью под названием "Слово Божие — функциональное программирование как основа Вселенной", в которой я рассказывал про лямбда-исчисление и про то, как программу любой сложности можно свести к алгоритму на базе всего трёх SKI-комбинаторов или же одного единственного йота-комбинатора. В ней мы разобрались с алфавитом божественного языка, на котором написана книга мироздания. Теперь же пришло время разобраться с его грамматикой.Красота абстра…
Привет, Хабр! Меня зовут Леша Жиряков, я техлид бэкенд-команды витрины KION, а еще в МТС я возглавляю Python-гильдию.В 2025 году Python остается одним из самых популярных языков программирования, а его возможности для создания графических интерфейсов (GUI) продолжают радовать разработчиков. В этой подборке — шесть лучших инструментов, которые выделяются функциями, активностью сообщества и фишками. Погружаемся в мир кнопок, окон и виджетов — от проверенной классики до ярких новичков GitHub.Tkint…
ДИСКЛЕЙМЕР: Статья написана на основе интервью с основателем производства аромасвечей А. Суворовым В 2020 году умирал мой бизнес – фитнес-студия. Мы не могли работать в коронавирус, абонементов продали, а оказать услугу не могли. Копились долги, и тогда у меня родилась дочка. В общем, сильно были нужны деньги. Жена показала фотографию бетонной свечи на Pinterest, и я подумал:Может быть, вот оно? В подсобке фитнес-клуба 5 кв. м. сделал свои первые свечиКупил цемент, а вместо воска натер самые п…
Go предлагает уникальный и прямолинейный подход к обработке ошибок, отличающийся от try-catch в других языках. Он основан на явной проверке возвращаемых значений, что требует больших проверок, но ведет к более надежному коду. Рассмотрим основы, современные инструменты пакета errors и лучшие практики. Если вам интересен процесс и вы хотите следить за дальнейшими материалами, буду признателен за подписку на мой телеграм-канал. Там я публикую полезныe материалы по разработке, Go, советы как быть …
defer в Go — это мощный механизм для очистки ресурсов, закрытия файлов и разблокировки мьютексов. Вы наверняка слышали, что defer делает код чище и безопаснее.Когда вы открываете файл через os.Open() или os.Create(), Go выделяет ресурс операционной системы — дескриптор файла.И вот в чём важный момент:Этот дескриптор нужно обязательно закрыть через file.Close().Иначе файл останется "висеть" открытым — ресурсы будут утекать, программа начнёт захлёбываться или упадёт.Мьютекс (mutex = MUTua…
Если вы уже освоили основы написания Composable в Vue, то следующий шаг — собрать коллекцию лучших и самых полезных паттернов, расширив свой инструментарий для решения задач:Паттерны для улучшения управления состояниемОрганизация Composable (не всегда нужен отдельный файл!)Улучшение опыта разработчика, например поддержка одновременно асинхронного и синхронного поведенияВ этой статье мы рассмотрим семь различных паттернов для написания более эффективных Composable.1. Паттерн Data Store (Хранили…
"JavaScript отстой, потому что '0' == 0!"— буквально каждый когда-либоДа, эта часть JavaScript действительно ужасна, но сегодня в любом проекте есть линтер, который тут же заворчит на вас за такой код.Вместо этого я хочу поговорить о более странных особенностях JavaScript — о таких, которые гораздо более коварные, чем эта ☝️ - о вещах, которые вы не найдете ни на r/ProgrammerHumor, ни в обычном учебнике по JavaScript.Все эти странности могут возникнуть в любом окружении JavaScri…