memory heap
374 subscribers
2.54K photos
520 videos
52 files
3.12K links
science ∩ art = wonder

all memory blocks here are allocated by @a_v_p

GitHub: https://github.com/artyom-poptsov
Mastodon: https://fosstodon.org/@avp

https://memory-heap.org/~avp/
Download Telegram
Руконожковые комиксы
Photo
Ну что, поздравляю нас с завершением очередного мерзкого года, где многие из нас всё же смогли быть менее мерзкими, чем окружающая действительность, вопреки ей.
🔥2🕊1
Руконожковые комиксы
Photo
#music

И выкиньте уже своё телевидение нафиг!.. Нечего всякую гадость смотреть, для нормального контента есть Интернет. Гиганты мысли из RHCP плохого не посоветуют.

Red Hot Chili Peppers, "Throw Away Your Television" (Live):
https://www.youtube.com/watch?v=PWvRu3K5QWY
🔥2
#emacs #llm #copilot

Justine Tunney опубликовала Emacs Copilot mode:
https://github.com/jart/emacs-copilot

Функция copilot-complete демонстрирует, что примерно 100 строчек кода на Лисп — это всё, что нужно для того, чтобы Emacs мог делать такие же штуки, которыми прославились GitHub Copilot или VSCode.

Emacs Copilot помогает вам делать парное программирование с локально-запущенной большой языковой моделью (LLM), которая генерирует код и дополняет его внутри буферов Emacs. LLM запускается, как подкоманда, которая помнит вашу локальную историю правок на уровне каждого файла. Токены поступают в ваш буфер без задержки по мере генерации и вы можете нажать C-g для того, чтобы прервать работу LLM в любое время.

Emacs Copilot работает с разными языками и язык программирования определяется по расширению файла.
🔥2
Как управляемые мозгом бионические руки совмещаются с телом:
https://www.youtube.com/watch?v=Ipw_2A2T_wg

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

Если например ставится протез руки, то за счёт датчиков на мышцах можно реализовать управление пальцами на протезе. Мышцы в данном случае служат усилителями сигналов, идущих от мозга по нервам. Если мышц недостаточно для управления всеми пальцами, то берутся обрубки других оставшихся нервов и их также заводят на сегменты мышц.

Вся электроника внутри тела человека делается био-совместимой. Титановые вставки врезаются в кости таким образом, чтобы кость со временем обрасла их, что делает крепление более надёжным.

Внутри тела человека нет никаких элементов питания электроники — всё питание поступает от подключаемой конечности, в которой стоят аккумуляторы.

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

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

#technology
1
memory heap
Похоже, нашёл баг в Guile-ZLib: https://notabug.org/guile-zlib/guile-zlib/issues/4 И уже сделал патч: https://notabug.org/guile-zlib/guile-zlib/pulls/5 #guile #patches
Ночью не спалось, придумал (не без подсказок Людовика Кортеса, конечно) и реализовал вроде бы хорошую эвристику для решения проблемы выделения памяти под распаковываемые данные в Guile-Zlib:
https://notabug.org/guile-zlib/guile-zlib/issues/4#issuecomment-40615

Собственно, коммит, который делает всё хорошо (я надеюсь):
https://notabug.org/a_v_p/guile-zlib/commit/9a32cef04aeb84c3b6fc60b78174399b10591a02

#dev #bugfix
👾2
memory heap
Ночью не спалось, придумал (не без подсказок Людовика Кортеса, конечно) и реализовал вроде бы хорошую эвристику для решения проблемы выделения памяти под распаковываемые данные в Guile-Zlib: https://notabug.org/guile-zlib/guile-zlib/issues/4#issuecomment-40615…
Как в старые времена, когда я сидел и программировал по ночам — потому, что меньше всего отвлекает ночью. Ради такого дела даже старую музыку раскопал, которую тогда часто слушал. Чувствую себя на удивление хорошо.

Одну из композиций, взятую в своё время из журнала "Хакер", скинул у комментарии к посту.
👾4
Выпустил новую версию своей книги "Автомато-программато-компарадио-кружок":
https://github.com/artyom-poptsov/SPARC/releases/tag/v2.0.0

В новой версии:

- Новая глава "Язык общения машин". В данной главе рассматриваются протоколы коммуникации между микроконтроллером и внешними устройствами. На данный момент описан в достаточно подробных деталях протокол I2C, но в будущем планирую добавить описание COM-порта, SPI и 1-Wire.

- Переименована глава "Основные принципы электротехники" — теперь она называется просто "Основы электроники".

- Доработка раздела про ЖК-дисплей. В разделе подробнее расписано взаимодействие микроконтроллера с жидкокристаллическим дисплеем, добавлены ссылки на подраздел про I2C в главе "Язык общения машин". Общее улучшение изложения материала в разделе.

- Доработка раздела про последовательный порт: добавление скриншотов из Arduino IDE 1.8 с описанием, добавлен новый подраздел "Визуализация данных" с описанием плоттера по последовательному соединению.

- Добавлены задания для самостоятельного решения в раздел "Белый шум".

- Часть блоков исходного кода помещена в LaTeX-блок "listing", к ним добавлены подписи. Это позволило сформировать в конце документа список примеров кода.

- Исправление мелких ошибок


PDF-версия книги доступна на странице релиза, также скину копию в комментарии к этому посту.

#sparc_book
🔥8
memory heap pinned «Выпустил новую версию своей книги "Автомато-программато-компарадио-кружок": https://github.com/artyom-poptsov/SPARC/releases/tag/v2.0.0 В новой версии: - Новая глава "Язык общения машин". В данной главе рассматриваются протоколы коммуникации между микроконтроллером…»
По-приколу реализовал в рамках Guile-PNG low-pass фильтр (по найденному примеру на C++ из интернета) для реализации эффекта "Размывания" ("Blur").

Левое изображение — оригинал, правое — результат обработки.

Не во всех случаях пока корректно работает, требуется тестирование. Но уже радует, что что-то получилось.

#projects #graphics #guile #png
👾2
Forwarded from CADR SPACE (Artyom "avp" Poptsov)
История получила неожиданный поворот — нашу статью про починку осциллографа частично перевели на английский и опубликовали на hackaday, усилиями пользователя Arya Voronova:
https://hackaday.com/2024/01/02/explosion-scarred-scope-gets-plastic-surgery-hackerspace-style/

#projects #tools #repair
🔥6
memory heap
По-приколу реализовал в рамках Guile-PNG low-pass фильтр (по найденному примеру на C++ из интернета) для реализации эффекта "Размывания" ("Blur"). Левое изображение — оригинал, правое — результат обработки. Не во всех случаях пока корректно работает, требуется…
Научил Guile-PNG читать чанки неизвестных типов без ошибок.

Вот тут нашёл неплохой обзор внутренностей формата PNG:
https://github.com/corkami/formats/blob/master/image/png.md

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

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

Вот примеры публичных расширений формата PNG:
ww.libpng.org/pub/png/spec/1.1/pngext-1.1.0-pdg.html

#projects #graphics #guile #png
Попробовал перчик "Хабанеро". Действительно супер-острый, не обманули — от 100'000 до 350'000 единиц по шкале жгучести Сковилла, судя по Википедии. Острый не только, когда ешь, но просто на коже ощущается, когда руками после перца касаешься лица, например.

К обычному перцу чили я уже видимо привык, такого эффекта у меня давно уже нет, а вот с "Хабанеро" прямо пробрало. Для сравнения — у "обычного" перца чили, с длинными красными стручками, жгучесть примерно 50'000-100'000 единиц.

По моему опыту самый хороший способ хранения перца чили (и думаю это на "Хабанеро" тоже распространяется) — это мыть после покупки и замораживать в морозилке. Хранится долго, и при необходимости всегда под рукой. С болгарскими перцами этот трюк тоже отлично работает.

#food
🔥5