Останні тижні працюю над лібою, яка рендерить чатик.
І я навіть не думав про те, наскільки складно реалізувати плавний чат з віртуалізацією.
Здавалось би цих чатів повно і мав би бути якийсь більш менш стандартний підхід, але ні.
Чому складно?
👉 Для плавного скролінгу історії потрібна віртуалізація - це вже саме по собі складно.
👉 Зазвичай ми скролимо сторінки зверху→вниз, а чати скроляться знизу→вгору. Це друга складність, яка накладається на попередню.
👉 Історія повідомлень має ліниво завантажуватись, коли ми гортаємо вгору. При цьому змінюється розмір віртуалізованого контейнера та кількість елементів у ньому. Історія починає "дригатись" і цього треба уникнути.
👉 Паралельно можуть одночасно приходити нові повідомлення.
👉 Тобто нові елементи у список повідомлень можуть прилітати з обох боків, а при цьому треба зберігати положення і плавність скролу.
👉 Крім цього, коли приходять нові повідомлення, нам треба вирішувати чи підскролюємо ми до нових повідомлень.
👉 Якщо прийшло багато нових повідомлень, то до якого повідомлення ми скролимо і як? Це теж окрема історія.
👉 А ще є лічильник нових повідомлень і кнопка, яка стрибає до нових повідомлень або в кінець історії.
👉 І є ще індикатор, який показує коли хтось набирає текст.
👉 А ще повідомлення можна видаляти з історії. При цьому вони можуть видалятись з будь-якого місця історії.
👉 Саме вікно чату при цьому може змінювати свої розміри, розгортатись і робитись великим або зменшуватись.
І ще безліч дрібніших проблем.
І я навіть не думав про те, наскільки складно реалізувати плавний чат з віртуалізацією.
Здавалось би цих чатів повно і мав би бути якийсь більш менш стандартний підхід, але ні.
Чому складно?
👉 Для плавного скролінгу історії потрібна віртуалізація - це вже саме по собі складно.
👉 Зазвичай ми скролимо сторінки зверху→вниз, а чати скроляться знизу→вгору. Це друга складність, яка накладається на попередню.
👉 Історія повідомлень має ліниво завантажуватись, коли ми гортаємо вгору. При цьому змінюється розмір віртуалізованого контейнера та кількість елементів у ньому. Історія починає "дригатись" і цього треба уникнути.
👉 Паралельно можуть одночасно приходити нові повідомлення.
👉 Тобто нові елементи у список повідомлень можуть прилітати з обох боків, а при цьому треба зберігати положення і плавність скролу.
👉 Крім цього, коли приходять нові повідомлення, нам треба вирішувати чи підскролюємо ми до нових повідомлень.
👉 Якщо прийшло багато нових повідомлень, то до якого повідомлення ми скролимо і як? Це теж окрема історія.
👉 А ще є лічильник нових повідомлень і кнопка, яка стрибає до нових повідомлень або в кінець історії.
👉 І є ще індикатор, який показує коли хтось набирає текст.
👉 А ще повідомлення можна видаляти з історії. При цьому вони можуть видалятись з будь-якого місця історії.
👉 Саме вікно чату при цьому може змінювати свої розміри, розгортатись і робитись великим або зменшуватись.
І ще безліч дрібніших проблем.
👍8🔥3
den the dev
🍿 Plex піднімає ціни починаючи з 29 квітня У своєму блозі Plex повідомили, що починаючи з 29 квітня у них змінюється цінова політика: - Зростає ціна на усі підписки. Зокрема, пожиттєва підписка дорожчає більш ніж вдвічі: з $119 до $249. - Для віддаленого…
Останній день щоб подумати 👆🏻
👍2
🗣️ Створив мітап у Києві, щоб приєднатись до Home Assistant Community Day.
Відмічайтесь тут: HA Community Day Kyiv meetup
Ліміт: 25 гостей (поки що)
З питанням локації та часу для події будемо розбиратись згодом.
Якщо маєте про що розповісти доповідь на 15 хвилин, пишіть мені.
Якщо маєте ідею для локації, яка може захостити наш безкоштовний івент, теж пишіть мені.
Відмічайтесь тут: HA Community Day Kyiv meetup
Ліміт: 25 гостей (поки що)
З питанням локації та часу для події будемо розбиратись згодом.
Якщо маєте про що розповісти доповідь на 15 хвилин, пишіть мені.
Якщо маєте ідею для локації, яка може захостити наш безкоштовний івент, теж пишіть мені.
❤10
den the dev
🗣️ Створив мітап у Києві, щоб приєднатись до Home Assistant Community Day. Відмічайтесь тут: HA Community Day Kyiv meetup Ліміт: 25 гостей (поки що) З питанням локації та часу для події будемо розбиратись згодом. Якщо маєте про що розповісти доповідь на…
Команда Home Assistant схвалила наш київський мітап як частину Community Day 👏🏻
🔥25👍2
🎙️ Нещодавно ходив на подкаст Hard & Soft
Хлопці якраз опублікували частину нашої розмову про термінали, девтули та опенсорс.
Другу частину про розумний дім, Home Assistant та селф-хостинг опублікують згодом, тож підпишіться на їх канал, щоб не пропустити.
Хлопці якраз опублікували частину нашої розмову про термінали, девтули та опенсорс.
Другу частину про розумний дім, Home Assistant та селф-хостинг опублікують згодом, тож підпишіться на їх канал, щоб не пропустити.
YouTube
H&S-4: Термінал на стероїдах: Zsh, Neovim та Open Source.
В гостях Денис Довгань, враховуючи тему, залишаю посилання на .config Дениса
https://github.com/denysdovhan/dotfiles
Також Денис в соц мережах
https://x.com/denysdovhan
https://t.me/den_the_dev
0:00:00 Вступ та обговорення рейтингів GitHub
0:01:11 Проект…
https://github.com/denysdovhan/dotfiles
Також Денис в соц мережах
https://x.com/denysdovhan
https://t.me/den_the_dev
0:00:00 Вступ та обговорення рейтингів GitHub
0:01:11 Проект…
🔥7❤1
👀 Нарешті мені приїхав Home Assistant Voice PE
Це експериментальна колонка для голосового асистента на Home Assistant.
Останні кілька тижнів я експериментую з голосовим керуванням, в тому числі українською 🤫
Це експериментальна колонка для голосового асистента на Home Assistant.
Останні кілька тижнів я експериментую з голосовим керуванням, в тому числі українською 🤫
👍24🔥7
den the dev
👀 Нарешті мені приїхав Home Assistant Voice PE Це експериментальна колонка для голосового асистента на Home Assistant. Останні кілька тижнів я експериментую з голосовим керуванням, в тому числі українською 🤫
Дуже короткий перший відгук:
👉🏻 Якість матеріалів та збірки значно вище ніж я очікував. По відчуттях ніби тримаєш у руках повноцінний продукт, а не preview-версію для задротів.
👉🏻 Процес онбордингу зроблений дуже добре. Дружелюбно навіть для новачків.
👉🏻 Динамік дуже поганий. Я не очікував від нього багато, але він гірше ніж я очікував. Можна підключити до нормальної аудіосистеми по 3.5mm, та використовувати як мікрофон, але на жаль у мого саундбара немає 3.5mm входу.
👉🏻 Мікрофони ловлять фрази добре, але залежить від ключової фрази. Найкраще розпізнає Hey/Okey Nabu, добре розпізнає Hey Mycroft, але Hey Jarvis у мене розпізнає 1 раз з 10. Можливо справа у акценті.
👉🏻 Голосовий асистент українською працює достатньо добре. Для мене точно не гірше ніж умовний Google Home. Поки ще тестую та експериментую, але точно буду користуватись.
В підсумку: планую користуватись щодня. Чекатиму на більш повноцінну версію з кращим динаміком.
Згодом постараюсь записати для вас кілька відео демок з тим як працює асистент українською.
👉🏻 Якість матеріалів та збірки значно вище ніж я очікував. По відчуттях ніби тримаєш у руках повноцінний продукт, а не preview-версію для задротів.
👉🏻 Процес онбордингу зроблений дуже добре. Дружелюбно навіть для новачків.
👉🏻 Динамік дуже поганий. Я не очікував від нього багато, але він гірше ніж я очікував. Можна підключити до нормальної аудіосистеми по 3.5mm, та використовувати як мікрофон, але на жаль у мого саундбара немає 3.5mm входу.
👉🏻 Мікрофони ловлять фрази добре, але залежить від ключової фрази. Найкраще розпізнає Hey/Okey Nabu, добре розпізнає Hey Mycroft, але Hey Jarvis у мене розпізнає 1 раз з 10. Можливо справа у акценті.
👉🏻 Голосовий асистент українською працює достатньо добре. Для мене точно не гірше ніж умовний Google Home. Поки ще тестую та експериментую, але точно буду користуватись.
В підсумку: планую користуватись щодня. Чекатиму на більш повноцінну версію з кращим динаміком.
Згодом постараюсь записати для вас кілька відео демок з тим як працює асистент українською.
❤14👍4🔥1
den the dev
🗣️ Створив мітап у Києві, щоб приєднатись до Home Assistant Community Day. Відмічайтесь тут: HA Community Day Kyiv meetup Ліміт: 25 гостей (поки що) З питанням локації та часу для події будемо розбиратись згодом. Якщо маєте про що розповісти доповідь на…
🔔 Оновлення по київському мітапу Home Assistant Community Day
Отже, ми знайшли місце та визначились з часом. Задля безпеки місце ми не розголошуємо публічно - воно доступне лише після реєстрації на подію. Час: 12:00-15:00.
Реєстрація на подію завершена. Максимум можемо вмісти 45 людей і всі 45 місць вже зайняті. Можна стати у список очікування, якщо хтось скасує свою участь.
Плануємо 4 короткі доповіді на тему HA і довколишніх технологій. Буде цікаво.
У випадку повітряної тривоги перервемо подію і попросимо перейти до укриття. Якщо тривога триватиме менше 30 хвилин, продовжимо зустріч. Якщо тривога триватиме довше - доведеться провести подію іншим разом. В будівлі, де буде проводитись мітап, є укриття.
Отже, ми знайшли місце та визначились з часом. Задля безпеки місце ми не розголошуємо публічно - воно доступне лише після реєстрації на подію. Час: 12:00-15:00.
Реєстрація на подію завершена. Максимум можемо вмісти 45 людей і всі 45 місць вже зайняті. Можна стати у список очікування, якщо хтось скасує свою участь.
Плануємо 4 короткі доповіді на тему HA і довколишніх технологій. Буде цікаво.
У випадку повітряної тривоги перервемо подію і попросимо перейти до укриття. Якщо тривога триватиме менше 30 хвилин, продовжимо зустріч. Якщо тривога триватиме довше - доведеться провести подію іншим разом. В будівлі, де буде проводитись мітап, є укриття.
🔥9❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Краса аналогового звуку: сучасна платівка запускається на ламповій радянській радіолі з 60-х.
Рипить, крекчить але грає.
А тепер уявіть: от через 50 років ви робите
Рипить, крекчить але грає.
А тепер уявіть: от через 50 років ви робите
npm install && npm start у своєму проєкті. Заведеться?😁18
🤖 Home Assistant Community Day у Києві відбувся!
Не дивлячись на жахливий нічний обстріл, люди таки прийшли на мітап і класно провели разом час.
Сподіваюсь моя розповідь про голосового асистента українською була цікавою.
Не дивлячись на жахливий нічний обстріл, люди таки прийшли на мітап і класно провели разом час.
Сподіваюсь моя розповідь про голосового асистента українською була цікавою.
❤28🥰1
📽️ Слайди до мого виступу про голосові асистенти українською
Так, я знаю що пройшов вже цілий тиждень з мого виступу. Друзі, прошу вибачення, минулі вихідні були складні, а майже весь поточний тиждень я хворів.
Публікую слайди до свого виступу ось тут:
Дивитись слайди онлайн • Репозиторій зі слайдами
Так, я знаю що пройшов вже цілий тиждень з мого виступу. Друзі, прошу вибачення, минулі вихідні були складні, а майже весь поточний тиждень я хворів.
Публікую слайди до свого виступу ось тут:
Дивитись слайди онлайн • Репозиторій зі слайдами
GitHub
GitHub - denysdovhan/slides-ukrainian-voice-assistant-haday2025: Slides for my talk about Ukrainian Voice assistant on Home Assistant…
Slides for my talk about Ukrainian Voice assistant on Home Assistant Community Day Kyiv 2025 - denysdovhan/slides-ukrainian-voice-assistant-haday2025
❤8👍2
Також виклав відео демку користування таким асистентом на YouTube, тож лайк, підписка, дзвіночок: https://youtu.be/2xszM5XWlZo?si=hspUML4H-7bS2PbP
YouTube
Український голосовий асистент на Home Assistant
Демо голосового асистента на Home Assistant:
- Home Assistant Assist
- Home Assistant Voice PE
- Google Cloud STT/TTS
- Gemini 2.0 Flash-Lite
Канал про технології: t.me/den_the_dev
- Home Assistant Assist
- Home Assistant Voice PE
- Google Cloud STT/TTS
- Gemini 2.0 Flash-Lite
Канал про технології: t.me/den_the_dev
🔥6
Таке вже хтось зробив.
Натрапив сьогодні на апку Open Health на GitHub, яка буквально це і робить: використовує АІ для парсингу документів про здоровʼя.
Лінк: OpenHealthForAll/open-health
Натрапив сьогодні на апку Open Health на GitHub, яка буквально це і робить: використовує АІ для парсингу документів про здоровʼя.
Лінк: OpenHealthForAll/open-health
GitHub
GitHub - OpenHealthForAll/open-health: OpenHealth, AI Health Assistant | Powered by Your Data
OpenHealth, AI Health Assistant | Powered by Your Data - OpenHealthForAll/open-health
🤔4👍1