Внезапная минутка лёгкого красноглазия: https://lpicentral.blogspot.com/2018/08/10-useful-ncat-nc-command-examples-for.html
По ссылке набор рецептов для использования netcat так и эдак. Присутствуют и обычные сценарии вида "поднимаем чатик мужду двумя машинами", но есть и поинтереснее варианты, например двунаправленное проксирование (через fifo-девайс).
Сам я netcat пользую редко, но иногда с немалой пользой. Однажды я даже передавал по сети видео-поток (с embedded компутера формата PC104), а на принимающей стороне воспроизводил силами mplayer - стриминг, однако! Не то чтобы это было очень нужно, но работало и как минимум было забавно!
#unix #cli #networks
По ссылке набор рецептов для использования netcat так и эдак. Присутствуют и обычные сценарии вида "поднимаем чатик мужду двумя машинами", но есть и поинтереснее варианты, например двунаправленное проксирование (через fifo-девайс).
Сам я netcat пользую редко, но иногда с немалой пользой. Однажды я даже передавал по сети видео-поток (с embedded компутера формата PC104), а на принимающей стороне воспроизводил силами mplayer - стриминг, однако! Не то чтобы это было очень нужно, но работало и как минимум было забавно!
#unix #cli #networks
Blogspot
10 useful ncat (nc) Command Examples for Linux Systems
ncat or nc is networking utility with functionality similar to cat command but for network. It is a general purpose CLI tool for reading, ...
🔥1
Меллотрон в деталях: https://www.youtube.com/watch?v=ByD8gH7kYxs
Именно такой The Beatles использовали в "Strawberry Fields Forever"
Очень своеобразная железка, люблю такое.
#music #synth
Именно такой The Beatles использовали в "Strawberry Fields Forever"
Очень своеобразная железка, люблю такое.
#music #synth
YouTube
Inside a Mellotron M400: How the Mellotron Works
Here's a look inside a Mellotron M400 we just restored and an explanation of how it works! The famous (or notorious) Mellotron M400, made in the 1970s, is a unique keyboard instrument in which every key plays back a recording of that note on actual magnetic…
Захотелось недавно #generative_art потворить.
Сначала взял #elm. Наткнулся на проблему с фатальным недостатком подхода к генерации случайных значений в стандартной библиотеке (которую можно решить сторонней либой, но я тогда про неё ещё не знал). Потом ещё и 0.19 вышла, где "всё сломали". И на package.elm-lang.org теперь меня не пускает без проксирования.
Решил, "хватит с меня Elm, слишком сложно для простой задачи погенерировать картинки".
Вспомнил про Quil - это такая надстройка над Processing/ProcessingJS, которые как раз и предназначены для generative art. Подумал, "Пусть без типов, но и результат сразу виден, так что проживу как-нибудь". "Расчехлил" lein, создал проект из шаблона, запускаю REPL. Внутренняя ошибка внутри либы.
Пошел смотреть в Issues. Оказалось, что проблема с #processing: оный не работает на Java 9+. Что-то у них сломалось из-за изменений в рантайме. Но чинить совместимость с Java 9 смысла нет, потому как она уже не поодерживается. А в последующих версиях уберут (убрали уже?) средства для работы с GUI - по крайней мере те, которые используются в Processing. Авторы Processing не знают, когда получится сделать поддержку какой-то из более поздних версий рентайма. Вот такая вот стабильная платформа с долгим сроком поддержки...
Может быть я ещё вернусь к Quil - #clojurescript-версия использует ProcessingJS. Но эта библиотека отстаёт по фичам от "старшего брата". ClJS не умеет макросы в рантайме. Есть и пачка других ограничений. Да и toolchain вокруг ClJS не вызывает у меня приятных воспоминаний. А когда хочется "быстренько покреативить", то отвлекаться на настройку инструментария не хочется совершенно...
В итоге я взял #racket. И там просто всё работает :) Да, есть своя специфика и язык менее красив, чем #clojure. Но графическая библиотека 2htdp/image - отличная. В JS не скомпилить, поэтому в браузер генераторы картинок уже не экспортируешь. Но жажду творчества утоляет :)
Сначала взял #elm. Наткнулся на проблему с фатальным недостатком подхода к генерации случайных значений в стандартной библиотеке (которую можно решить сторонней либой, но я тогда про неё ещё не знал). Потом ещё и 0.19 вышла, где "всё сломали". И на package.elm-lang.org теперь меня не пускает без проксирования.
Решил, "хватит с меня Elm, слишком сложно для простой задачи погенерировать картинки".
Вспомнил про Quil - это такая надстройка над Processing/ProcessingJS, которые как раз и предназначены для generative art. Подумал, "Пусть без типов, но и результат сразу виден, так что проживу как-нибудь". "Расчехлил" lein, создал проект из шаблона, запускаю REPL. Внутренняя ошибка внутри либы.
Пошел смотреть в Issues. Оказалось, что проблема с #processing: оный не работает на Java 9+. Что-то у них сломалось из-за изменений в рантайме. Но чинить совместимость с Java 9 смысла нет, потому как она уже не поодерживается. А в последующих версиях уберут (убрали уже?) средства для работы с GUI - по крайней мере те, которые используются в Processing. Авторы Processing не знают, когда получится сделать поддержку какой-то из более поздних версий рентайма. Вот такая вот стабильная платформа с долгим сроком поддержки...
Может быть я ещё вернусь к Quil - #clojurescript-версия использует ProcessingJS. Но эта библиотека отстаёт по фичам от "старшего брата". ClJS не умеет макросы в рантайме. Есть и пачка других ограничений. Да и toolchain вокруг ClJS не вызывает у меня приятных воспоминаний. А когда хочется "быстренько покреативить", то отвлекаться на настройку инструментария не хочется совершенно...
В итоге я взял #racket. И там просто всё работает :) Да, есть своя специфика и язык менее красив, чем #clojure. Но графическая библиотека 2htdp/image - отличная. В JS не скомпилить, поэтому в браузер генераторы картинок уже не экспортируешь. Но жажду творчества утоляет :)
Обычно #racket я пользую через DrDacket - родную среду разработки с отличным REPL и возможностью "копипастить картинки из интернета" :)
Вот вам #daily_art (минут 20 экспериментов в REPL, четыре строки кода (в отформатированом виде побольше, конечно)) :)
2019-09-17-carpet.png
81.4 KB
Самоповтор с самоповторяющимся #daily_art (исходник) :)
Сделал на своём #web сайтике-долгострое раздел для #daily_art.
Индекс и странички генерируются с помощью shake-скрипта из mustache-шаблонов (это всё на #haskell). Подсветка синтаксиса для Racket-кода делается вызовом CLI-утилитки из пакета pygments (это уже #python). А картинки рендерятся непосредственно вызовом #racket. Вот такой вот монстр Франкенштейна :)
Загружал первую версию контента через web interface редактора сайтов прямо на NeoCites (на нём сайтик хостится). Но в будущем воспользуюсь из API - или сам реализую клиентскую часть, или официальный CLI-tool возьму (который на Ruby написан - ещё один зверь в зоопарк). А в конце это всё можно будет упаковать в Docker-контейнер для красоты и модности
Индекс и странички генерируются с помощью shake-скрипта из mustache-шаблонов (это всё на #haskell). Подсветка синтаксиса для Racket-кода делается вызовом CLI-утилитки из пакета pygments (это уже #python). А картинки рендерятся непосредственно вызовом #racket. Вот такой вот монстр Франкенштейна :)
Загружал первую версию контента через web interface редактора сайтов прямо на NeoCites (на нём сайтик хостится). Но в будущем воспользуюсь из API - или сам реализую клиентскую часть, или официальный CLI-tool возьму (который на Ruby написан - ещё один зверь в зоопарк). А в конце это всё можно будет упаковать в Docker-контейнер для красоты и модности
:)В кои-то веки выходные провёл как настоящий программист - оба дня кодил что-то (по паре часов всего в день, но всё же
В прошлый раз мы писали Conway's Game of Life: получилось это. Работали двумя парами и та, в которой был я, отвечала за логику. Сделали всё на множествах через операции над ними (пересечение, объединение). Всем понравилось.
В этот же раз писали игру 2048 втроём, поэтому решили не делиться - за одним компьютером вместе творили. Решили сделать упор на логику, а интерфейс пользователя (который сразу решили сделать текстовым
P.S. Понравилось, планирую продолжать посещать.
P.S. Надо бы написать статейку про Shake для ruHaskell.
;)).****************В Субботу ходил во второй раз на Dojo по #clojure. В этот раз на команды разбивались случайным образом, что, на мой взгляд, значительно интереснее. И полезнее для networking - на clojure-тусовки я попадаю редко, поэтому лишний шанс познакомиться с людьми, которым небезразлично ФП, меня однозначно радует :)
В прошлый раз мы писали Conway's Game of Life: получилось это. Работали двумя парами и та, в которой был я, отвечала за логику. Сделали всё на множествах через операции над ними (пересечение, объединение). Всем понравилось.
В этот же раз писали игру 2048 втроём, поэтому решили не делиться - за одним компьютером вместе творили. Решили сделать упор на логику, а интерфейс пользователя (который сразу решили сделать текстовым
;)) оставить на потом. Логика игровая получилось довольно компактной: сделали только "сдвиг влево", а остальные операции получили через транспонирование и отражение матрицы! Тесты делать было лень, поэтому разработка проходила "по локти" в REPL, что тоже добавило веселья. В установленное время мы уложились и наша реализация 2048 вышла вполне играбельной :) У "соперников" были вариант на #clojurescript в браузере и реализация с "текстовым UI" в отдельном графическом окне (на этой штуке рогалики бы писать!).P.S. Понравилось, планирую продолжать посещать.
****************
В Воскресенье я к генератору подсайтика с #daily_art прикрутил генерацию миниатюр. А потом решил, что текущие правила для #shake "костыльноваты" и решил переписать :) Получившийся вариант генерации динамических правил мне нравится и важные фишки shake, вроде кэширования результатов сборки, так же работают. Результат можно посмотреть тут, а здесь можно глянуть на исходники.P.S. Надо бы написать статейку про Shake для ruHaskell.
Meetup
Clojure DOJO
Sat, Sep 22, 2018, 4:00 PM: Всем привет!На прошлой встрече мы попробовали новый формат проведения наших мероприятий и он настолько нам понравился, что мы решили его повторить.Напомню, это был формат C
Ещё #daily_art
https://astynax.neocities.org/daily-art/2019-09-24-circuit-board.html
Этот простенький, но мне показался интересным
https://astynax.neocities.org/daily-art/2019-09-24-circuit-board.html
Этот простенький, но мне показался интересным
Оказывается, для #racket в teachpack'е для курса HTDP, помимо библиотеки 2htdp/image, с помощью которой я свой #daily_art рисую, а также 2htdp/universe, с помощью которой можно нарисованные картинки анимировать и даже превратить в игру(!), есть библиотечка тайлов (tiles) Planet Cute в виде racket-библиотеки 2htdp/planetcute!
Сам "Planet Cute", это набор изображений "строительных блоков", с помощью которых можно делать игры. И сами изображения и исходные макеты свободно доступны. Каждый блок представлен отдельным изображением. Все изображения имеют одинаковый размер и отлично (и очень просто!) компонуются (не нужно возиться с tileset'ом). На мой взгляд, это отличный стартовый набор для начинающего игростроителя
Сам "Planet Cute", это набор изображений "строительных блоков", с помощью которых можно делать игры. И сами изображения и исходные макеты свободно доступны. Каждый блок представлен отдельным изображением. Все изображения имеют одинаковый размер и отлично (и очень просто!) компонуются (не нужно возиться с tileset'ом). На мой взгляд, это отличный стартовый набор для начинающего игростроителя
:)
P.S. Мне уже не терпится что-то написать с использованием images/universe/planetcute. М.б. даже законченную игру :)
#gamedevworld.png
231.7 KB
Вчера поигрался с
planetcute, получилось это (исходник).Челендж #daily_art продолжается, почти каждый день "рисую"! Но проблема придумывания подписей уже начинает напрягать. Нынешнюю картинку, впрочем, поименовал сразу. Знакомьтесь, "кунжутная халва"
:)Кстати, пока я искал альтернативы для
bat, это такой
Приятно, что таких проектов становится больше: rq, ripgrep, fd, а теперь ещё и bat (автор тот же, что и у fd, кстати). Я считаю, что нам нужны современные версии "рабочих лошадок", работающие быстро и стабильно - да такие, в которые и поконтрибутить приятно!
pygments, мне подкинули интересный вариант на замену: batbat, это такой
cat(1), только написанный на #rust, и умеющий красиво подсвечивать синтаксис разных форматов файлов с помощью схем подсветки от SublimeText (использует библиотеку syntect).Приятно, что таких проектов становится больше: rq, ripgrep, fd, а теперь ещё и bat (автор тот же, что и у fd, кстати). Я считаю, что нам нужны современные версии "рабочих лошадок", работающие быстро и стабильно - да такие, в которые и поконтрибутить приятно!
GitHub
GitHub - sharkdp/bat: A cat(1) clone with wings.
A cat(1) clone with wings. Contribute to sharkdp/bat development by creating an account on GitHub.
https://www.youtube.com/watch?v=y-xgWLYQc4g
Simon Peyton Jones как весгда прекрасен! И тема доклада лично меня равнодушным не оставила - всегда чувствовал в себе тягу к образованию других :) Доклад касается обучения CS в целом, также повествует про подвижки образовательной машины Великобритании в сторону правильного преподавания CS ученикам прямо со школы. Саймон призывает делать упор не на технологии, как это было в прошлом (оказывается, там тоже детей учили использованию MS Office), а на основы и идеи. В конце доклада можно найти кучу ссылко на расличные инициативы в озвученной области, а частности на Project Quantum - попытку сделать единый вопросник для тестирования изучающих CS.
Настоятельно рекомендую к просмотру!
#education #talk
Simon Peyton Jones как весгда прекрасен! И тема доклада лично меня равнодушным не оставила - всегда чувствовал в себе тягу к образованию других :) Доклад касается обучения CS в целом, также повествует про подвижки образовательной машины Великобритании в сторону правильного преподавания CS ученикам прямо со школы. Саймон призывает делать упор не на технологии, как это было в прошлом (оказывается, там тоже детей учили использованию MS Office), а на основы и идеи. В конце доклада можно найти кучу ссылко на расличные инициативы в озвученной области, а частности на Project Quantum - попытку сделать единый вопросник для тестирования изучающих CS.
Настоятельно рекомендую к просмотру!
#education #talk
YouTube
"Shaping our children's education in computing" by Simon Peyton Jones
Few things matter more to us than the education we give our children, to equip them for life in a rapidly changing world.
In our subject discipline, everything is in flux. England, for example, has radically overhauled the school computing curriculum, and…
In our subject discipline, everything is in flux. England, for example, has radically overhauled the school computing curriculum, and…
Минутка #retrogaming
На Internet Archive теперь доступна библиотека игр для C64. В общей сложности 10К игр. Всё как обычно работает прямо в браузере (на обраузереном силами emscripten эмуляторе Vice).
На Internet Archive теперь доступна библиотека игр для C64. В общей сложности 10К игр. Всё как обычно работает прямо в браузере (на обраузереном силами emscripten эмуляторе Vice).
Образовательный набор "собери свой телефон": https://www.kickstarter.com/projects/albertgajsak/makerphone-an-educational-diy-mobile-phone
MAKERphone, это настоящий тетефон, только старой школы. Никакой ОС не имеет. "Думает" с помощью ESP32, умеет запускать MicroPython. Звонит и шлёт SMS через GSM-модуль. Звук выводит через отдельный модуль с ЦАП и усилителем. Корпус собирается из листов оргстекла, паяются только детали с монтажём в отверстия (SMD-компоненты уже распаяны).
Нацелен набор на детей от 11 лет. И целью имеет не дать ребёнку средство связи, конечно же. Но показать, что телефон, это не магическая коробочка, а всего лишь система, состоящая из небольшого кол-ва понятных модулей. Причем система открытая, делающая то, что захочет маленький инженер, который её соберёт.
Одобряю.
#diy #electronics #kit
MAKERphone, это настоящий тетефон, только старой школы. Никакой ОС не имеет. "Думает" с помощью ESP32, умеет запускать MicroPython. Звонит и шлёт SMS через GSM-модуль. Звук выводит через отдельный модуль с ЦАП и усилителем. Корпус собирается из листов оргстекла, паяются только детали с монтажём в отверстия (SMD-компоненты уже распаяны).
Нацелен набор на детей от 11 лет. И целью имеет не дать ребёнку средство связи, конечно же. Но показать, что телефон, это не магическая коробочка, а всего лишь система, состоящая из небольшого кол-ва понятных модулей. Причем система открытая, делающая то, что захочет маленький инженер, который её соберёт.
Одобряю.
#diy #electronics #kit
Kickstarter
MAKERphone - an educational DIY mobile phone
MAKERphone is an educational DIY mobile phone designed to bring electronics and programming to the crowd in a fun and interesting way.
Авторы MAKERphone до этого уже собирали деньги на подобный проект. Это был MAKERbuino: https://www.kickstarter.com/projects/albertgajsak/makerbuino-a-diy-game-console
Это Arduino-совместимая плата с кнопками и монохромным LCD-экраном, выполненная в форм-факторе портативной игровой консоли. Нацеленная на использование в качестве оной же - после того, как устройство соберут и прошьют соответствующим ПО. Как минимум "змейки" и "тетрис" с "арканоидом" на таком железе можно реализовать :)
Ах да, корпус и здесь собирается из слоёв огрстекла. Это вообще довольно популярная среди хоббистов технология корпусирования.
P.S. Эти наборы можно купить. Со временем и MAKERphone будут продавать, думаю.
#diy #electronics #kit #gamedev #retrogaming
Это Arduino-совместимая плата с кнопками и монохромным LCD-экраном, выполненная в форм-факторе портативной игровой консоли. Нацеленная на использование в качестве оной же - после того, как устройство соберут и прошьют соответствующим ПО. Как минимум "змейки" и "тетрис" с "арканоидом" на таком железе можно реализовать :)
Ах да, корпус и здесь собирается из слоёв огрстекла. Это вообще довольно популярная среди хоббистов технология корпусирования.
P.S. Эти наборы можно купить. Со временем и MAKERphone будут продавать, думаю.
#diy #electronics #kit #gamedev #retrogaming
Kickstarter
MAKERbuino - a DIY game console
MAKERbuino is a handheld retro gaming device that you can build yourself. It's 8-bit, fun, educational and hackable.