xaker
Вредоносный пакет загрузили из PyPI более 1000 раз

В Python Package Index (PyPI) найден вредоносный пакет под названием set-utils, который похищал приватные ключи Ethereum, перехватывая функции создания кошельков, и выводил средства жертв через блокчейн Polygon.

  • вторник, 11 марта 2025 г. в 00:00:14
habrahabr
Micro Pocket SSB приемник на базе ESP32 и SI4732. Что за девайс и для чего?

Что-то, а китайцы впереди планеты всей по части удешевления техники. Я до сих помню тот шок, который испытал, приобретя свой первый USB-брелок RTL-SDR за 3 $. Чувствительностью и селективностью он не особо отличался. Тем не менее это был девайс, позволявший видеть, что происходит в эфире на соседних частотах. А еще он отлично работал с любыми антеннами.Совсем недавно на многих маркетплейсах Поднебесной появился еще один любопытный приемник, который чем-то напомнил знаменитую Belka-DX. Я не смог…

  • вторник, 11 марта 2025 г. в 00:00:12
habrahabr
История еще одного патча: зависшая батарея

Ноутбук засыпает, ноутбук просыпается, батарея «зависает» — более не отдает ни уровень заряда ни другие показатели, вне зависимости от подключения к сети. Патч ядра Linux и три года изысканий, рассказываю как это было.Божественные Вайнона Райдер и Натали Портман, работы нейросети. Ну и пропатченное ядро.ВводнаяАвтор очень давно использует самые разнообразные версии и вариации Linux и UNIX‑систем для работы и диких развлечений, в том числе на ноутбуках, поэтому старается решать все найденные про…

  • вторник, 11 марта 2025 г. в 00:00:11
habrahabr
Как malloc() и free() управляют памятью в C

Привет, Хабр!Сегодня рассмотрим, почему free() не всегда освобождает память, как работает malloc(), когда glibc действительно возвращает память в ОС, и как избежать фрагментации хипа. А так же напишем кастомный аллокатор. mallocВызываете malloc(42), думаете, что получили 42 байта и живёте счастливо. Но всё гораздо сложнее. malloc() — это не просто «дай мне N байтов», а целая система управления памятью, которая старается минимизировать фрагментацию, уменьшить системные вызовы и ускорить выделени…

  • вторник, 11 марта 2025 г. в 00:00:10
habrahabr
Загадочные проблемы браузинга: почему некоторые сайты не грузятся в Chrome?

Привет, Хабр!Меня зовут Эрик, в данный момент я инженер технической поддержки в компании Shortcut. Недавно я столкнулся с интересным тикетом: пользователи жаловались, что некоторые сайты не открываются в Google Chrome, но при этом прекрасно работают в других браузерах.Кажется, что если сайт работает в одном браузере, он должен работать и в другом. Но это не всегда так. Иногда Chrome упорно отказывается загружать страницы, которые спокойно открываются в Firefox или Edge. Недавно я столкнулся с …

  • вторник, 11 марта 2025 г. в 00:00:09
habrahabr
Самые отбитые проекты Github

За долгое время, проведенное «в раскопках» на Github, собралась коллекция удивительных проектов, самое лаконичное описание для которых — лютая дичь. Небольшую часть этой коллекции автор заботливо собрал, запустил и затем описал в этой статье. Так что заваривайте чаю с ромашкой и запасайтесь успокоительными — с такой подборки поплохеет многим.BossSensorhttps://github.com/Hironsan/BossSensorПрограмма с помощью вебкамеры, компьютерного зрения и нейросети определяет приближение начальника к рабоче…

  • вторник, 11 марта 2025 г. в 00:00:08
javascript
Кастомные хуки в react

React хуки произвели революцию в том, как мы пишем компоненты, особенно новые хуки из 19 версии для форм. Но помимо встроенных хуков, мы можем создавать собственные, чтобы переиспользовать логику между компонентами. Давайте разберемся, как это делать.Что такое кастомный хук?Кастомный хук - это обычная функция, название которой начинается с "use", и которая может вызывать другие хуки. Рассмотрим простой примерconst useBoolean = (initialValue = false) => { const [value, setValue] = u…

  • вторник, 11 марта 2025 г. в 00:00:06
javascript
Глубокое Погружение в Работу с Таймерами в React

Работа с таймерами в React требует понимания нескольких ключевых концептов. Давайте разберем, как создать надежные таймеры с нуля, и познакомимся с готовыми решениями. Базовые Принципы Работы с ТаймерамиПри реализации таймеров в React важно учитывать:Очистку ресурсов при размонтировании компонентаКорректную работу с замыканиямиОбработку изменений состояния компонентаПочему useEffect и useRef Так Важны для Таймеров?При работе с таймерами в React, комбинация useEffect и useRef решает несколько к…

  • вторник, 11 марта 2025 г. в 00:00:05
github
mfontanini / presenterm

A markdown terminal slideshow toolpresenterm presenterm lets you create presentations in markdown format and run them from your terminal, with support for image and animated gifs, highly customizable themes, code highlighting, exporting presentations into PDF format, and plenty of other features. This is how the demo presentation looks like when running in the kitty terminal: Check the rest of the example presentations in the examples directory. Documentation Visit the documentation to ge…

  • вторник, 11 марта 2025 г. в 00:00:03