👨💻 Мне дико нравится UI-паттерн "палитра команд".
Вот есть где-то куча возможных действий и хочется сделать какое-то одно из них — нажимаем одно сочетание клавиш и попадаем в поисковик, в котором перечислено *всё*, и который по мере ввода слов из описания (хоть по частям, хоть пропуская буквы) показывает наиболее близкие варианты. Бонус: под каждым вариантом подписана ещё и горячая клавиша (если есть).
Так вот. Берём: 1. Папку с исполняемыми скриптами, названными по тому, что они делают 2. Пишем точку входа — скриптик, который вызывает на этом списке скриптиков fzf, и привинчиваем в место, удобное для вызова
👨💻 Мне дико нравится UI-паттерн "палитра команд".
Вот есть где-то куча возможных действий и хочется сделать какое-то одно из них — нажимаем одно сочетание клавиш и попадаем в поисковик, в котором перечислено *всё*, и который по мере ввода слов из описания (хоть по частям, хоть пропуская буквы) показывает наиболее близкие варианты. Бонус: под каждым вариантом подписана ещё и горячая клавиша (если есть).
@dside мне очень нравится, как этот паттерн работает в vscode.
И с точки зрения UI/UX — я теперь совсем не могу воспринимать программы с кучей тулбаров с кнопками, или меню-подподменю. Если я знаю, что мне нужно сделать, я не ищу, куда для этого нажать, а просто пишу в палитру.
И с точки зрения API для расширений — даже если автор очень хочет, чтобы действие выполнялсь по кнопке в UI или сочетанию клавиш, ему приходится сначала зарегать для этого команду в палитре. И по ним всем работает нечеткий поиск, и любую можно поставить на любые сочетания клавиш.
@dside мне очень нравится, как этот паттерн работает в vscode.
И с точки зрения UI/UX — я теперь совсем не могу воспринимать программы с кучей тулбаров с кнопками, или меню-подподменю. Если я знаю, что мне нужно сделать, я не ищу, куда для этого нажать, а просто пишу в палитру.
И с точки зрения API для расширений — даже если автор очень хочет, чтобы действие выполнялсь по кнопке в UI или сочетанию клавиш, ему приходится сначала зарегать для этого команду в палитре. И по ним всем работает нечеткий...
Это цветовое пространство, похожее на HSL, но скорректированное так, чтобы цвета с одинаковым L воспринимались человеком с ≈нормальным цветовосприятием как близкие по яркости: https://www.hsluv.org/comparison/
Оценить контраст между цветами в этой модели можно тупо вычислив разницу по L между ними, и там не будет странностей вроде гораздо более яркого зелёного при вроде бы (численно) похожей яркости. Это позволяет проще экспериментировать с генерацией цветовых гамм.
Например, есть SyntaxEnvy, мгновенно генерирующий с помощью HSLuv приятные цветовые схемы подсветки кода по одному нажатию кнопки: https://www.syntaxenvy.com/
Это цветовое пространство, похожее на HSL, но скорректированное так, чтобы цвета с одинаковым L воспринимались человеком с ≈нормальным цветовосприятием как близкие по яркости: https://www.hsluv.org/comparison/
Оценить контраст между цветами в этой модели можно тупо вычислив разницу по L между ними, и там не будет странностей вроде гораздо более яркого зелёного при вроде бы (численно) похожей яркости. Это позволяет проще экспериментировать...
Я всё-таки пошёл копать, как устроен голос Larynx в #Rhasspy, с целью избавиться от странной аномалии, которая меня уже много месяцев донимает: произношения "шесть" как [шос].
Оказалось, что косяк случается ещё до того, как в дело вступает какой-либо машинлёрнинг. Там тупо в словаре для слова "шесть" были фонемы "ʂ oː s tʲ". Почему и откуда, вопрос тоже интересный, но для другого раза.
А что случается это *до* машинлёрнинга это *очень* хорошая новость — благодаря этому изменение несложно сделать руками в уже собранном и установленном языковом профиле, ничего тренировать не надо.
Больше никакого "шос градусов"!
Ни один SQL'ный update мне, пожалуй, ещё не приносил такого удовлетворения.
Я всё-таки пошёл копать, как устроен голос Larynx в #Rhasspy, с целью избавиться от странной аномалии, которая меня уже много месяцев донимает: произношения "шесть" как [шос].
Оказалось, что косяк случается ещё до того, как в дело вступает какой-либо машинлёрнинг. Там тупо в словаре для слова "шесть" были фонемы "ʂ oː s tʲ". Почему и откуда, вопрос тоже интересный, но для другого раза.
@dside блин, а я так silero и не завёл у себя. Несколько дней потратил на компиляцию более свежего gcc чтоб скомпилировать pytorch 1.10. А оно мне "ATTENTION: your model computation is overflowing" при запуске синтеза хотябы простого слова "собака"...
🗣️ Незадолго до того, как остаться без работы, я готовил для нашего корпоративного мероприятия свой рассказ о том, как я сталкивался с разным голосовым управлением, как меня это в итоге привело к #Rhasspy и что надо бы делать дальше.
А поскольку в задуманном ранее виде материал уже явно не увидит свет, а терять его жалко, я адаптировал его для блога.
Я там было указал 2022 год в качестве даты поста. А поскольку я там уже несколько лет ничего не писал, пост всё равно оказался последним, и я так этого не заметил, до самой публикации.
Уже починил. Как же хорошо, что у меня в URL постов нет даты.
…а ведь я с #Rhasspy (локальным голосовым помощником) двигался в ту же сторону. Просто те составные части, что использовал Брайс, пока ещё локально попросту не запустить, а жёстких внешних зависимостей я у себя в системе сознательно избегаю.
Я подхожу больше с прагматической стороны — напоминания о делах по дому, сводки на день и другая подобная информационная рутина.
И в отличие от Брайса, я сам с усам и останавливать меня некому, ы-ы-ы-ыхы-хы-хы-хы :blobfoxfloofdevil:
…а ведь я с #Rhasspy (локальным голосовым помощником) двигался в ту же сторону. Просто те составные части, что использовал Брайс, пока ещё локально попросту не запустить, а жёстких внешних зависимостей я у себя в системе сознательно избегаю.
Многое из того, что я делаю, для того, чтобы экономить людям время через делегирование компьютерам того, что они делают лучше.
И среди того, что они делают лучше условного среднего человека – память и учёт времени. Память может не в объёме или деталях, но определённо в стабильности и сохранности.
Мне кажется, что мало кому приятно регулярно мне о чём-то напоминать, видя, что это до сих пор не сделано. Им было бы проще внести это один раз в какой-нибудь списочек, о котором меня будет регулярно пинать специальная пиналка.
Или когда приходим к мысли, что кому-то надо что-то принести, а потом многократно забываем. Проблему решили просто: я завёл нам аккаунты в #Nextcloud, и когда что-то такое возникает, мы это записываем на общую доску в Deck и назначаем. Остаётся только привыкнуть посматривать туда, но одну привычку развить проще, чем вспоминать каждый раз разное.
Это именно то, что я называю "информационной рутиной". Если исключить её из общения, вроде и общаться приятнее становится.
Многое из того, что я делаю, для того, чтобы экономить людям время через делегирование компьютерам того, что они делают лучше.
И среди того, что они делают лучше условного среднего человека – память и учёт времени. Память может не в объёме или деталях, но определённо в стабильности и сохранности.
Мне кажется, что мало кому приятно регулярно мне о чём-то напоминать, видя, что это до сих пор не сделано. Им было бы проще внести это один раз в какой-нибудь списочек, о котором меня будет регулярно пинать...
Меня уже довольно давно задолбало объяснять одни и те же концепции раз за разом, рассказывая и про некоторые концепции в основе, в зависимости от того, что собеседник уже знает. Но я всё равно делаю это уже много лет, потому что это приносило пользу "здесь и сейчас".
Но мои собственные усилия конечны.
И вот я решил попытаться сделать распределённую энциклопедию — чтобы авторы статей могли размечать, знания каких тем ожидают от своих читателей и какие темы в них объясняют.
А поверх этого сделать штуку, которая предъявит, что читать и в каком порядке, чтобы на каждом этапе понимать происходящее. И будет запоминать, о чём вы уже читали, чтобы вам (хотя бы иногда) не приходилось пропускать участки, в которых вы ничего нового не узнаете.
Всё это только верхушка айсберга, но говорить об остальном пока ещё очень и очень рано.
Очень, *очень* ранний доступ к проекту, в котором ни единой строчки кода нет, только наброски и идеи.
Меня уже довольно давно задолбало объяснять одни и те же концепции раз за разом, рассказывая и про некоторые концепции в основе, в зависимости от того, что собеседник уже знает. Но я всё равно делаю это уже много лет, потому что это приносило пользу "здесь и сейчас".
https://en.wikipedia.org/wiki/Semantic_Web > The Semantic Web, sometimes known as Web 3.0 (not to be confused with Web3 :blobcatfingerguns: ), is an extension of the World Wide Web through standards set by the World Wide Web Consortium (W3C). The goal of the Semantic Web is to make Internet data machine-readable.
https://en.wikipedia.org/wiki/Web3 > Web3 (also known as Web 3.0 :blobcatfingerguns: ) is an idea for a new iteration of the World Wide Web which incorporates concepts such as decentralization, blockchain technologies, and token-based economics.
https://en.wikipedia.org/wiki/Semantic_Web > The Semantic Web, sometimes known as Web 3.0 (not to be confused with Web3 :blobcatfingerguns: ), is an extension of the World Wide Web through standards set by the World Wide Web Consortium (W3C). The goal of the Semantic Web is to make Internet data machine-readable.
И ведь что самое неприятное, простого выхода из этого нет. Их действительно так называли в разное время. А Википедия не обязана определять один термин исключительно одним образом. Если люди так не делают, с чего бы так делать ей?
Проще всего просто термин Web 3.0 не использовать, дабы не пускать дискуссии под откос обсуждениями определений. СемВеба и Веб3 вполне достаточно.
С нетерпением жду, когда кто-нибудь, наконец, сделает пародию на шаблонную сцену, где плохонькую запись с камеры увеличивают, чтобы разглядеть важные для расследования детали. По приказу "enhance!" или как там у них принято.
Но нюанс: что делает это какая-нибудь из современных арт-нейронок и выдаёт какой-нибудь сюрреализм типа перепутанных пальцев у подозреваемого, а персонажи с этого недоумевают.
Твиттер уже напоминал узел Федивёрса, решивший от всех дефедерироваться, так теперь ещё и кросспостеров запретил. И теперь давать ссылки на кучу первоисточников будет невозможно.
Отличный план! Не вижу никаких подводных камней или других неожиданных последствий. :tone_sarcasm:
Максимально просто и лениво. Если есть термощуп для мяса, а в идеале с пищалкой, запороть его практически невозможно.
Берём здоровенный кусок филе индейки. Тут >2кг. Берём посудину для запекания, смазываем маслом. Можно, но необязательно, сделать подложку. Я коробку шампиньонов выложил. (Надо было две.) Укладываем мясо. Посолить. Опционально поперчить. Можно пофантазировать и посыпать чем-то ещё, на фото карри и семена горчицы (не соусом, сухие). В духовку на, скажем, 180°, и воткнуть щуп максимально в середину мяса (куда нагрев дойдёт в последнюю очередь).
По термощупу следить, чтобы нагрелось до 69° или около. После чего выключить, на время (минут 15?) забыть, вернуться, достать.
Если вниз натечёт бульончик, им стоит залить мясо при укладке в контейнер и в холодильник. А то в одно лицо этот объём можно несколько дней есть, а без бульончика птица может ощутимо так подсохнуть.
Гарнир вообще любой. Вариант с карри близок к индийской кухне… рис?
Максимально просто и лениво. Если есть термощуп для мяса, а в идеале с пищалкой, запороть его практически невозможно.
Берём здоровенный кусок филе индейки. Тут >2кг. Берём посудину для запекания, смазываем маслом. Можно, но необязательно, сделать подложку. Я коробку шампиньонов выложил. (Надо было две.) Укладываем мясо. Посолить. Опционально поперчить. Можно пофантазировать и посыпать чем-то ещё, на фото карри и семена горчицы (не соусом, сухие). В духовку на, скажем,...
Как-то раз, в очередной раз сломав режим сна, я пошёл в два часа ночи делать котлеты.
И почему-то мне показалось хорошей идеей пропустить немного гречки через кофемолку и добавить в фарш (был куриный, но я думаю что любой сгодится) в качестве наполнителя и для вкуса.
Т. е. сделать буквально котлеты со встроенной гречей.
Кофемолка ещё жива, и даже не портит кофе. И котлеты тогда съел с удовольствием, но… какие они на вкус, не помню совершенно. Видимо, был очень голоден и съел не задумываясь, так что придётся повторить, чтобы оценить.
Приложил бы картинку, да её нет. Да и вкус картинкой всё равно не передать.
Как-то раз, в очередной раз сломав режим сна, я пошёл в два часа ночи делать котлеты.
И почему-то мне показалось хорошей идеей пропустить немного гречки через кофемолку и добавить в фарш (был куриный, но я думаю что любой сгодится) в качестве наполнителя и для вкуса.
Т. е. сделать буквально котлеты со встроенной гречей.
@dside@mastodon.ml в похожем состоянии создавал следующее: - чай с солью (странно, но норм) - жареные огурцы (тупо как кабачки, ничего интересного) - тушеные грибы, куда я в какой-то момент бахнул остатки молока (вышло вкусно)
Майкл Хэнсен, автор #Rhasspy, оказывается, теперь работает в Nabu Casa — это компания, основанная ядром разработчиков #HomeAssistant для развития открытых систем умного дома вокруг HA и будет помогать компании сделать 2023 "Годом Голоса".
Для контекста, ещё не так давно он работал над Mycroft, тоже голосовым ассистентом, тоже в основном открытым, но частично облачным.
Это всё происходит на фоне недавнего сокращения команды Alexa в Amazon.
Майкл Хэнсен, автор #Rhasspy, оказывается, теперь работает в Nabu Casa — это компания, основанная ядром разработчиков #HomeAssistant для развития открытых систем умного дома вокруг HA и будет помогать компании сделать 2023 "Годом Голоса".
Для контекста, ещё не так давно он работал над Mycroft, тоже голосовым ассистентом, тоже в основном открытым, но частично облачным.
Меня редко приводят в восторг трейлеры, чтобы пересматривать по десять раз в несколько сеансов. Но этот трейлер Terra Invicta — могуч.
Первые десять секунд оформлены очень душевно и рассказывают о главном, музыка и звук великолепны на всём протяжении, почти всё видео геймплейное (даже не особо зрелищная, но очень показательная возня в интерфейсе) и достаточно злободневный игровой мир — где внезапно прилетевшие инопланетяне стали всего лишь ещё одной стороной (пусть и сильно отличающейся) в и без того бушующих распрях среди людей.
Но головой я понимаю, что оно меня сожрёт. Это игра от создателей X-COM: Long War. Это игра, *перед* запуском которой стоит прочитать материалов объёмом с небольшую книжку, а знания из неё кроме как в этой игре вряд ли получится где-то применить. И мне это скорее всего понравится! Только времени играть в это у меня сейчас просто нет. А обидно :blobfoxcryreach:
Меня редко приводят в восторг трейлеры, чтобы пересматривать по десять раз в несколько сеансов. Но этот трейлер Terra Invicta — могуч.
Первые десять секунд оформлены очень душевно и рассказывают о главном, музыка и звук великолепны на всём протяжении, почти всё видео геймплейное (даже не особо зрелищная, но очень показательная возня в интерфейсе) и достаточно злободневный игровой мир — где внезапно прилетевшие инопланетяне стали всего лишь ещё одной стороной (пусть и сильно отличающейся) в и без...
Сегодня человек скинул в чатик источник датасетов со всякими географическими названиями. И у меня случился флэшбек – как аналитики на работе искали датасет из женских имён.
Я вспомнил, как для какого-то из пет-проектов копался в #RDF и встретил проект #Wikidata (https://wikidata.org/) – представьте себе Википедию, но для машин, где вся информация состоит из троек {субъект, предикат, объект} и даёт делать к ним запросы на языке #SPARQL.
Аналитикам я тогда достаточно быстро подогнал что они хотели. Запрос-то был простой: {X, является, женское имя} + {X, имя, [столбец в результате]}. Говорят, отлично сработало.
Но получить список городов и в каких они странах оказалось интереснее. Т. к. "все страны" в Wikidata это не только в настоящее время. Т. е. там и СССР есть, и Персидская Империя… я не проверял, но возможно там и страны из выдуманных миров есть!
Это как джинн из мира данных. Который ответит на твой вопрос, но узнаешь ты только то, что вопрос задал криво.
10/10, ещё вернусь.
Сегодня человек скинул в чатик источник датасетов со всякими географическими названиями. И у меня случился флэшбек – как аналитики на работе искали датасет из женских имён.
Я вспомнил, как для какого-то из пет-проектов копался в #RDF и встретил проект #Wikidata (https://wikidata.org/) – представьте себе Википедию, но для машин, где вся информация состоит из троек {субъект, предикат, объект} и даёт делать к ним запросы на языке #SPARQL.
Не удержался и всё-таки пробил, к каким типам сущности приписан Гондор из Властелина Колец. https://w.wiki/5Ung
Нет, country среди них нет. Фух.
- object - entity - fictional country - fictional location - group of fictional characters - fictional organization - location in a fictional work - artificial entity - non-physical entity - abstract object - fictional entity - fictional government - fictional object - group of fictional objects - fictional group of characters - country in a fiction work - fictional administrative territorial entity - non-existent entity - fictional kingdom - fictional artificial entity - fictional collective entity - group of fictional entities - fictional group of organizations
Не удержался и всё-таки пробил, к каким типам сущности приписан Гондор из Властелина Колец. https://w.wiki/5Ung
Нет, country среди них нет. Фух.
- object - entity - fictional country - fictional location - group of fictional characters - fictional organization - location in a fictional work - artificial entity - non-physical entity - abstract object - fictional entity - fictional government - fictional object - group of fictional objects - fictional group of characters - country in a fiction work - fictional administrative...
@dside по сути, эта ваша поллитра команд - это консоль для нищих :)
@dside мне очень нравится, как этот паттерн работает в vscode.
И с точки зрения UI/UX — я теперь совсем не могу воспринимать программы с кучей тулбаров с кнопками, или меню-подподменю. Если я знаю, что мне нужно сделать, я не ищу, куда для этого нажать, а просто пишу в палитру.
И с точки зрения API для расширений — даже если автор очень хочет, чтобы действие выполнялсь по кнопке в UI или сочетанию клавиш, ему приходится сначала зарегать для этого команду в палитре. И по ним всем работает нечеткий поиск, и любую можно поставить на любые сочетания клавиш.
@dside мне очень нравится, как этот паттерн работает в vscode.
И с точки зрения UI/UX — я теперь совсем не могу воспринимать программы с кучей тулбаров с кнопками, или меню-подподменю. Если я знаю, что мне нужно сделать, я не ищу, куда для этого нажать, а просто пишу в палитру.
И с точки зрения API для расширений — даже если автор очень хочет, чтобы действие выполнялсь по кнопке в UI или сочетанию клавиш, ему приходится сначала зарегать для этого команду в палитре. И по ним всем работает нечеткий...