А этот
Пользуясь случаем, наваял такую демку: https://embed.ellie-app.com/n5M8wcPtxs/0 - это моя попытка сделать комбинаторную библиотеку для рисования векторной графики (наподобие той, что есть в
Ellie вполне неплох - даже довольно таки объемные "демки" переваривает. Правда, редактор на больших исходниках уже заметно подтормаживает :(Пользуясь случаем, наваял такую демку: https://embed.ellie-app.com/n5M8wcPtxs/0 - это моя попытка сделать комбинаторную библиотеку для рисования векторной графики (наподобие той, что есть в
Racket).Давно хочу сделать себе хотя бы простенькую копию этого костюма: https://www.youtube.com/watch?v=8HZFY4Xti7k
Глаза из LED-матричек, это совсем просто, такое я сумею :) А вот вокодер для голоса я всё никак не накостыляю.
Но теперь я уже на шаг ближе к цели: наткнулся на довольно простую реализацию pitch shifter на ATTiny85: http://www.technoblogy.com/show?1L02 Надо будет собрать аналог (85'ых у меня нет, но есть горстка ATMega48) и посмотреть его в деле!
Глаза из LED-матричек, это совсем просто, такое я сумею :) А вот вокодер для голоса я всё никак не накостыляю.
Но теперь я уже на шаг ближе к цели: наткнулся на довольно простую реализацию pitch shifter на ATTiny85: http://www.technoblogy.com/show?1L02 Надо будет собрать аналог (85'ых у меня нет, но есть горстка ATMega48) и посмотреть его в деле!
YouTube
Electronic Demon Costume - How To! #Adafruit
Electronic Demon Costume by Phil Burgess - mashup of animating multiple LED backpacks: http://learn.adafruit.com/animating-multiple-led-backpacksand the Wave...
Внезапно открыл для себя
Страничка проекта: https://freedoom.github.io/index.html
Да, многие знают, что исходный код doom engine давно находится в свободном доступе. Но, как обычно, свобода не коснулась ресурсов игры - текстур, спрайтов, карт, звуков и музыки. Поэтому source ports для оригинального DooM сууществуют с момента открытия исходников, но требуют
FreeDoom же свободен во всех смыслах. И поэтому его можно поставить, скажем, на
И да, FreeDoom поддерживает и многопользовательскую игру (deathmatch) :)
#game #linux
FreeDoom - проект по воссозданию DooM максимально близко к первоисточнику с использованием исключительно свободного контента!Страничка проекта: https://freedoom.github.io/index.html
Да, многие знают, что исходный код doom engine давно находится в свободном доступе. Но, как обычно, свобода не коснулась ресурсов игры - текстур, спрайтов, карт, звуков и музыки. Поэтому source ports для оригинального DooM сууществуют с момента открытия исходников, но требуют
(I)WAD-файлов (это такой формат хранения игровых ресурсов, используемый многими движками от Id) от оригинальной игры. Это не слишком большая проблема, т.к. прикупить DooM можно на том же GOG (https://gog.com), но, скажем, в репозиторий пакетов для Ubuntu их не положишь - лиценизия не позволит :(FreeDoom же свободен во всех смыслах. И поэтому его можно поставить, скажем, на
Ubuntu привычным способом: sudo apt-get install freedoom. С прочими линуксами та же история. На Windows / MacOS FreeDoom ставится скачиванием IWAD-архива и подключением оного к оному из source ports, например PrBoom (http://prboom-plus.sourceforge.net/).И да, FreeDoom поддерживает и многопользовательскую игру (deathmatch) :)
#game #linux
Gog
Welcome to GOG.com | best PC games DRM-free
Download the best classic and new games on Windows, Mac & Linux. A vast selection of titles, DRM-free, with free goodies and 30-day money-back guarantee.
Если вам вдруг захочется сделать свою
Минус упомянутого движка - невозможность редактирования непродвинутыми пользователями. Т.е. wiki получается статической.
Если же вам хочется настоящей
#wiki #haskell
WiKi, то возможно вам хватит https://dynalon.github.io/mdwiki/#!index.md - здесь весь "движок" построен на JS и работает полностью в браузере, на лету отображая markdown-файлы в виде wiki с гиперссылками и проч. Для начала работы нужно в "корень" хранилища, умеющего раздавать статические файлы, положить пару файликов и всё! Такое решение отлично подходит для выкладывания на GitHub Pages - сервера гитхаба сами раздадут контент.Минус упомянутого движка - невозможность редактирования непродвинутыми пользователями. Т.е. wiki получается статической.
Если же вам хочется настоящей
многопользовательской Wiki, но MediaWiki вас чем-то не устраивает, можете попробовать Gitit (https://github.com/jgm/gitit) - wiki engine, написанная на Haskell и хранящая весь контент в VCS! Умеет много чего - например, LaTeX - и открыта для расширения (примеры плагинов в репозитории есть).#wiki #haskell
GitHub
GitHub - jgm/gitit: A wiki using HAppS, pandoc, and git
A wiki using HAppS, pandoc, and git. Contribute to jgm/gitit development by creating an account on GitHub.
Если вдруг вам понадобится немного
#markdown
Markdown произвольного содержания - парсер захотите написать, или же наоборот, рендер - добавьте в закладки сервис Lorem Markdownum: https://jaspervdj.be/lorem-markdownum/ Сервис умеет генерировать разметку текста (да, это будет Lorem Ipsum) с цитатами, подзаголовками и списками. И даже псевдокод на псевдоязыках вставлять умеет!#markdown
Неплохая шпаргалка по
Каждый шаблон "объясняется" парой предложений и иллюстируется куском кода (не на PHP ли?), который решает реальную (более-менее) задачу.
Что же, местами довольно наглядно - тот же
Впрочем, это же github! Совместными усилиями можно добиться достаточной понятности :)
#pattern
паттернам проектирования (если вы ещё пользуете ООП в общепринятом смысле): https://github.com/kamranahmedse/design-patterns-for-humans Каждый шаблон "объясняется" парой предложений и иллюстируется куском кода (не на PHP ли?), который решает реальную (более-менее) задачу.
Что же, местами довольно наглядно - тот же
Flyweigth неплохо показан. А вот Bridge, например, не слишком развернуто объясняется (ИМХО).Впрочем, это же github! Совместными усилиями можно добиться достаточной понятности :)
#pattern
GitHub
GitHub - kamranahmedse/design-patterns-for-humans: An ultra-simplified explanation to design patterns
An ultra-simplified explanation to design patterns - kamranahmedse/design-patterns-for-humans
Ого! Игра на
Заметьте, движок у игры свой, самописный! И написан, по сути, одним разработчиком (его, кстати, можно найти в чате https://t.me/proRust) и только ресурсы делали уже несколько человек!
#rust #gamedev #game
Rust в Steam Greenlight! https://steamcommunity.com/sharedfiles/filedetails/?id=868228143Заметьте, движок у игры свой, самописный! И написан, по сути, одним разработчиком (его, кстати, можно найти в чате https://t.me/proRust) и только ресурсы делали уже несколько человек!
#rust #gamedev #game
Полезная библиотечка для PureScript
Пара примеров:
- арифметика со временем
- перевод скоростей между системами
#purescript #library
purescript-quantities (https://pursuit.purescript.org/packages/purescript-quantities) позволяет описывать физические величины и, помимо, собственно, декларации длинн, масс и прочих температур, предоставляет инструменты для синтеза сложных величин из простых (метры можно делить на секунды и получать скорость!) и конвертации между разными шкалами!Пара примеров:
- арифметика со временем
> showResult $ 2.0 .* minutes ⊕ 30.0 .* seconds
"2.5min"
- перевод скоростей между системами
> showResult $ (85.0 .* miles ./ hour) `convertTo` (meters ./ second)
"37.9984m/s"
#purescript #library
Делюсь ссылкой на недавно возникший бложик со статьями про
Наткнулся на него, увидев на
А ещё в блоге можно найти статьи про
Elm и разработку на нем, ориентированными на новичков: https://alpacaaa.net/blog/Наткнулся на него, увидев на
/r/elm статью "In depth overview of Elm and Purescript. Lessons learned porting a game from Purescript to Elm." (https://alpacaaa.net/blog/post/elm-purescript-in-depth-overview/). Собственно, эту статью и рекомендую - в т.ч. и тем, кто ни #elm ни #purescript не использует (пока 😉). Сравнение этих языков в статье несколько предвзято, но в целом вполне адекватно (что, увы, редкость).А ещё в блоге можно найти статьи про
написание на Elm простой версии Mastermind (по-нашему "быки-коровы") и ещё пары игр, что называется, from scratch - отличное чтиво для интересующихся новичков!alpacaaa
Marco Sampellegrini
А этот
В целом я не удивлен - это же
Из того, что прочитал недавно, поделюсь этим:
- "DOM elements with ID's are global variables"
(https://dev.to/buntine/dom-elements-with-ids-are-global-variables):
- "How I Git"
(https://dev.to/andydangerous/how-i-git - это репост, но пусть будет);
- "Don't wait for perfect"
(https://dev.to/mubashariqbal/dont-wait-for-perfect);
- "The Peace of not coding"
(https://dev.to/jonstodle/the-peace-of-not-coding - надо бы тоже научиться).
P.S. Команда dev.to рассылает бесплатные стикеры: https://dev.to/freestickers Я уже запросил ;)
Dev.to (https://dev.to) растет с заметной скоростью!В целом я не удивлен - это же
"правильный" Medium для погроммистов, разрешающий писать в привычном Markdown и вставлять код с указанием языка подсветки (да, Haskell тоже подсвечивается!). Если выживет, буду рад. На всякий случай профиль себе там завёл (http://dev.to/astynax), может даже сподоблюсь писать туда на своём корявом английском :) Пока же - просто почитываю.Из того, что прочитал недавно, поделюсь этим:
- "DOM elements with ID's are global variables"
(https://dev.to/buntine/dom-elements-with-ids-are-global-variables):
- "How I Git"
(https://dev.to/andydangerous/how-i-git - это репост, но пусть будет);
- "Don't wait for perfect"
(https://dev.to/mubashariqbal/dont-wait-for-perfect);
- "The Peace of not coding"
(https://dev.to/jonstodle/the-peace-of-not-coding - надо бы тоже научиться).
P.S. Команда dev.to рассылает бесплатные стикеры: https://dev.to/freestickers Я уже запросил ;)
DEV Community
A space to discuss and keep up software development and manage your software career
Я уже писал про
Проект находится в стадии активной разработки, но многое уже работает. Кстати, PX8 можно программировать не только на
#pico8 #rust #python #lua
PICO-8, а тут, оказывается, некто пилит свободный клон! На Rust! Смотреть сюда: https://docs.rs/crate/px8Проект находится в стадии активной разработки, но многое уже работает. Кстати, PX8 можно программировать не только на
Lua, но и на Python 3! Не то чтобы очень хотелось, но кому-то может понравиться ;)#pico8 #rust #python #lua
Гуголь заоперсорсил свою библиотеку для описания
Выглядит этот
Единственный плюс Fire, который сходу приходит в голову, это кол-во телодвижений, необходимое для прикручивания Fire-powered CLI к существующему коду, а точнее -
#python #cli #library
CLI: https://opensource.googleblog.com/2017/03/python-fire-command-line.htmlВыглядит этот
Fire не что чтобы революционно, да и "фич", на первый взгляд имеет поменьше, чем click от Ронахера (http://click.pocoo.org/). К тому же для последнего понаписано уже множество дополнений: чтение параметров из файла (https://pypi.python.org/pypi/click-configfile), или, скажем, раскраска вывода справки по командам и опциям (https://pypi.python.org/pypi/click-help-colors). И точно не стоит забывать про отличный пакет docopts (https://pypi.python.org/pypi/docopts) - этот не сильно наворочен, но за то сама идея - отличная!Единственный плюс Fire, который сходу приходит в голову, это кол-во телодвижений, необходимое для прикручивания Fire-powered CLI к существующему коду, а точнее -
практическое полное отсутствие этих самых телодвижений :) Конечно, эта простота возможна только в том случае, когда код уже оформлен в виде класса с методами и docstrings (я, скажем, не всегда классы пишу для утилоит командной строки - почти никогда, на самом деле), но кому-то непременно понравится! И интерактивный режим - тоже приятная штука, с этим не поспоришь. Т.о. как обычно - будем иметь в виду :)#python #cli #library
Google Open Source Blog
Introducing Python Fire, a library for automatically generating command line interfaces
Хмм, а я был неправ: оказывается, в
В случае, когда класс при инстанциировании Fire не указан, все публичные функции модуля
(Пример: https://github.com/google/python-fire/blob/master/examples/cipher/cipher.py)
#python #cli #library
Fire можно и без классов CLI городить!В случае, когда класс при инстанциировании Fire не указан, все публичные функции модуля
__main__ становятся соответствующими командами - всё, как я хотел!(Пример: https://github.com/google/python-fire/blob/master/examples/cipher/cipher.py)
#python #cli #library
Я всегда любил Жизнь...
Речь про
А уж сколько реализаций оной я писал! Первые - ещё на BASIC для моей "Электроника МС-1502" лет 20 назад.
И мне всегда интересно и удивительно смотреть на конфигурации вроде этой: https://codegolf.stackexchange.com/a/111932
Не поленитесь и обязательно запустите (в ответе написано, как это можно сделать прямо в браузере) эту прелесть!
#cellular_automata #cgol
Речь про
Conway's game of Life, конечно же 😉А уж сколько реализаций оной я писал! Первые - ещё на BASIC для моей "Электроника МС-1502" лет 20 назад.
И мне всегда интересно и удивительно смотреть на конфигурации вроде этой: https://codegolf.stackexchange.com/a/111932
Не поленитесь и обязательно запустите (в ответе написано, как это можно сделать прямо в браузере) эту прелесть!
#cellular_automata #cgol
Code Golf Stack Exchange
Build a digital clock in Conway's Game of Life
Your task is to build a Game of Life simulation representing a digital clock, which satisfies the following properties:
The clock displays the hours and minutes in decimal (e.g. 12:00, 3:59, 7:24)...
The clock displays the hours and minutes in decimal (e.g. 12:00, 3:59, 7:24)...
Оказывается, среди
Доку можно найти здесь: https://plt.eecs.northwestern.edu/pkg-build/doc/lindenmayer@lindenmayer/index.html
На первый взгляд пакет позволяет делать практически всё, что может потребоваться типичному фрактальному ботанику, даже
Если вы интересовались когда либо процедурной генерацией и вам хотелось нарисовать быстренько небольшой лесок, но вы не были знакомы с L-системами, настоятельно советую ознакомиться - концепция простая, но выразительная, да и результатя глазу приятны, наконец :)
#racket #fractals #lsystems
Racket-языков есть отдельный язык для описания L-систем - это такие простые фракталы, которые "рисуют деревья".Доку можно найти здесь: https://plt.eecs.northwestern.edu/pkg-build/doc/lindenmayer@lindenmayer/index.html
На первый взгляд пакет позволяет делать практически всё, что может потребоваться типичному фрактальному ботанику, даже
3d L-системы можно рисовать!Если вы интересовались когда либо процедурной генерацией и вам хотелось нарисовать быстренько небольшой лесок, но вы не были знакомы с L-системами, настоятельно советую ознакомиться - концепция простая, но выразительная, да и результатя глазу приятны, наконец :)
#racket #fractals #lsystems
На горизонте нарисовался потенциально интересный хакатончик:
https://twitter.com/5ht/status/839395772324065280
Предлагается похакатонить на #haskell, причем "с нуля", т.е. там ещё и научат этому самому хаскелю и дадут порешать реальные задачки в большом проекте.
https://twitter.com/5ht/status/839395772324065280
Предлагается похакатонить на #haskell, причем "с нуля", т.е. там ещё и научат этому самому хаскелю и дадут порешать реальные задачки в большом проекте.
Twitter
Namdak Tonpa
https://t.co/gwKm1sD7qf