brain_dump_etc
637 subscribers
99 photos
4 videos
3 files
383 links
Дампы мыслей, свалка ссылок, программизмы, вот это всё (ВНИМАНИЕ: много вкусовщины!)

Автор надампленых мыслей: @astynax

Чат к каналу: https://t.me/brain_dump_chat
Плейлист трансляций: https://youtube.com/playlist?list=PLUFoWyWge7mrg4GqHLMZV62gGC912PCGq
Download Telegram
Кинтайская инженерная мысль частенько удивляет. На это раз этим!

На одной плате форм-фактора #arduino сразу и привычная AVR'ка стоит и #esp8266. И более того, вторая здень не только в роли "WiFi over UART" может выступать, как это часто бывает - ESP может быть главной в связке SOC+MCU! На платке есть блок переключателей, которым можно коммутировать эти два мозга друг с другом и с программатором (USB-UART на CH340). Т.о. можно и на #nodemcu эту железку попрограммировать и на #micropython, и по-старинке на Wiring, конечно же :)

P.S. Давно думаю, чем бы мне мою старушку UNO заменить (не то чтобы она плохая, но хочется чего-то пофичастее), а тут такая красота!

P.P.S. Вот бы они ещё "Мегу" выпустили с ESP на борту - это ж какая прорва GPIO получилась бы!

#electronics
Я тут сижу и облизываюсь на железки на сайте TIndie - там, правда, есть на что посмотреть, если ты железячник - и вдруг вижу такое (см. первую картинку). Думаю, "размер как у #arduino Nano!". И название соответствующее - Interface Nanoshield (ага, "nano" в названии).

Проверил - "так и вышло". Это таки shield для плат в форм-факторе Nano. Я и раньше натыкался на подобные штуки на AliExpress, но мне всегда казалось, что мезонинная архитектура не очень удобна при таких размерах (особенно пугают торчащие разъёмы RJ45 на Ethernet Shield). Однако производитель платки на фото использует другой подход - все модули располагаются на плоскости бок-в-бок! Причём бывают как Base Boards (второе фото), предназначенные для установки в один из слотов той самой Arduino Nano, так и Base Boarduino (третье фото) - та же "база", но прямо с ATmega328 на борту, т.е. самостоятельная Arduino.

И, надо сказать, в таком виде форм-фактор - вполне привлекательный!

#electronics
Ну вот, похоже, напугал читателей железками :) Надо бы что-то программистское написать...
Я тут на PythonConf++ обретаюсь (увы, с докладом не срослось, поэтому просто посещаю). Если вдруг кто тоже тут будет - пингуйте!
Я люблю синтез музычки, а уж если оный сочетается с программирование в каких-то проектах - я просто счастлив!
Поэтому делюсь прекрасным - языком/средой Orca.

Итак, "Касатка" - это среда, в которой на бесконечном текстовом холсте-сетке с помощью односимвольных операторов создаётся программа в виде двухмерной схемы. В схеме периодически возникают bangs (как слово перевести-то? "всплески"?), переходят от блока к блоку и на выходе получается программно сгенерированная музыка! Весь процесс одновременно похож на FRP и на программирование на BeFunge (я про язык вспомнил и "аж прослезился" :)). По-хорошему это нужно видеть!

Выдавать музыку Orca умеет как в виде MIDI-сообщений, так и в виде сообщений по UDP-сокету. Вторым способом она может и сама управляться извне. И вообще по UDP касатку можно связать с другими интересными штуками, например с DotGrid или с SonicPi.

P.S. Orca открытая и кроссплатформенная.

#procedural_generation #music
🔥1
В дополнение к Orca (см.выше) существует синтезатор Pilot - простой 16-голосый синтезатор, управляемый по UDP. По UDP можно и играть ноты и менять параметры отдельных синтезаторов, а также управлять глобальными фильтрами вроде дисторшна и ревера. Звучит синтезатор довольно приятно и по-хорошему олдскульно - вот демонстрация.

P.S. Тоже открытая кроссплатформа.

#music
Forwarded from Хекслет
12 апреля в 19:00 по МСК на youtube-канале Hexlet пройдёт интервью с тимлидом и ФП-адвокатом в Evrone Павлом Аргентовым. Тема интервью - FP||!FP на работе.

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

Ведущий интервью - Алексей Пирогов, Hexlet.

Трансляция доступна по ссылке: https://youtu.be/P1YWeLJCarI. Подписывайтесь на канал и ставьте колокольчик, чтобы не пропустить.
Опять буду вебинарить. На этот раз - в режиме диалога! Заодно новый микрофон опробую
Forwarded from Хекслет
18 апреля в 19:00 на канале Hexlet стартует стрим с преподавателем профессии "Python-разработчик" Алексеем Пироговым. Что будет - код в прямом эфире и рассказ про Elm.

Ссылка на стрим: https://youtu.be/M-iZOAnlTBM.
Подписывайтесь на канал и ставьте колокольчик.
Постримлю #elm, как-то так
Антон Холомьёв (@anton_kho) поделился свежим видео: https://www.youtube.com/watch?v=0np4mOkfDgE

Антон - автор "Учебника по Haskell" и хаскельной же обёртки для CSound (CSound - это такой движок для программного синтеза звука), а по ссылке можно как раз понаблюдать работу CSound Expressions под управлением MIDI-контроллера.

Как мне кажется, demo получилось очень показательное. Надеюсь, что кого-то оно сподвигнет таки попрограммировать музычку на Haskell.

#haskell #procedural_generation #music
Принёс немного прелестной дичи: язык legit (спасибо за наводку, дорогой некто).

Legit - эзотерический язык программирования, программа на котором кодируется структурой git-репозитория!
Язык, как водится, стековый, активно пользует гитовы теги как именованные метки, умеет простой ввод-вывод. А ещё - компилируется в LLVM! Да, помимо интерпретатора есть ещё и транслятор в LLVM IR, так что можно даже исполняемый бинарник получить :)

Позабавило одно интересное свойство программ на Legit, цитирую:
A fun consequence of programs defined by a Git history is that you can’t properly track versions, because they already are Git repositories. All you can do is force-push a new version to GitHub.
На мой взгляд, это прекрасно!

#programming #fun
🤔1
Интерпретатор brainfuck, реализованный на legit! И его можно скомпилить в бинарник и получить уже самодостаточный интерпретатор brainfuck. Остаётся забутстрапить Legit, чтобы он был написан сам на себе и скомпилен в бинарник, опять же...
"Опять доклады"
Forwarded from Хекслет
24-25 мая в Казани пройдёт конференция по функциональному программированию FPURE. 25 докладов, 2 воркшопа, и среди докладчиков преподаватель Hexlet Алексей Пирогов. Тема его доклада: "Функциональный дизайн и паттерны ФП".

Регистрируйся для участия здесь: http://amp.gs/U9Yn
Фух, перевёл-таки свой пакетик tea-combine на elm-0.19!

Увы, без инфиксных операторов eDSL стал похуже выглядеть, но тут уже ничего не попишешь, как говорится.

#elm #library
Хороший доклад про внедрение #elm, а следом и #haskell в рабочий процесс: https://www.youtube.com/watch?v=5CYeZ2kEiOI

Описаны цели и профиты от внедрения, но доклад не останавливается на этом. Говорится и про проблемы найма сотрудников, и про сложность обучения — и самое главное — про то, как преодолевать такие трудности.

Отдельно можно отметить подход к внедрению новой технологии, который в NoRedInk использовали при рассмотрении Elm и Haskell (в качестве замены для React и RoR соответственно):

- взять некритичную но реальную задачу и переписать с использованием новой штуки,
- довести до production,
- взвесить плюсы и минусы смены инструментария.

Кмк, вполне адекватно и масштабируемо на любые "внедрятельные" мероприятия!
Добрался наконец до Wasmer/WAPM/Rust и накидал учебный проектик.

О чем это всё? Итак, есть такая штука — WASI, интерфейс для взаимодействия WebAssembly-кода с системой без участия браузера. У WASI есть не несколько реализаций, одну из которых я и решил попробовать. Wasmer — это универсальный рантайм WebAssembly, совместимый со спецификацией WASI и имеющий свой пакетный менеджер WAPM.

Wasmer позволяет запускать .wasm-бинарники на различных ОС — Linux, Windows, macOS — без перекомпиляции и потенциально может быть хорошим вариантом для "ультрапереносимых" программ. Написан на #rust, что отдельно радует.

Rust же, в свою очередь, в своей nigtly-ипостаси умеет собирать .wasm-бинарники. Которые затем можно опакетить WAPM и/или запустить на Wasmer.

Это я и решил проверить и получил в итоге упомянутый в начале проектик. Отмечу, что весь инструментарий поставился и заработал сразу без каких-либо проблем — очень неплохо!

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

#wasm