ProstoDiary: NLP и ML с dialogflow

Отправлено 20 июн. 2018 г., 3:16 пользователем Deni Baskovsky

На днях в рамках задачи изучал возможности внедрения в ProstoDiary технологий распознавания естественного языка. На стол попали три технологии: Microsoft LUIS, Facebook wit.ai, Google dialogflow. Все они имеют бесплатный режим пользования, поддержку русского языка, javascript sdk и интеграцию с популярными мессенджерами.

Из всех них wit.ai мне показался самым простым, но у него была сложность с интеграцией с созданным проектом. Короче, из-за возможностей Google Cloud я остановился на dialogflow. Уже первые тесты показали мощности ML по-сравнению с RegEx`ами. Учится нейронка достаточно быстро (возможно, только вначале), есть возможность выгрузки интентов (чтобы затем мигрировать на другой сервис) и только недавно зарелизилась v2 версия API. Пока все нравится, но есть опасение, что Google прикроет Dialogflow или смержит в Firebase. Это, конечно, не история с Parse от фейсбука, но пока все же.

https://sites.google.com/site/sajtdenisa/news/_draft_post/Screen%20Shot%202018-06-20%20at%2012.14.49.png

Вместе с этим заюзал еще одну либу - franc, для умного извлечения используемого языка из запроса. Тоже рекомендую.  

Как я увеличил размер JS бандла со 122кб до 288кб и не пожалел об этом

Отправлено 5 мая 2018 г., 2:08 пользователем Deni Baskovsky

Давно стояла задача переделать gotois лэндинг на компоненты. Вариант использования ванильных инструментов себя перестал оправдывать в связи с возрастающей сложностью написания стилей и скриптинга. Сначала был вариант использовать rscss для стилей и Polymer 3. Но учитывая формат кодовой базы я решился остановиться на riot.js. 

Riot.js позиционирует себя как легковесная альтернатива всяким риактам и полимерам. На деле, действительно, код получается более простым и читаемым. Потратив пару дней на перевод в новый формат, перехерачив всю систему сборки (о, ужас!), бандл стал весить более чем в два раза больше прежнего.


Попутно поломалась система Lazy загрузок изображений в swiper'е и поехали к чертям анимации заголовок. Еще непонятно как быть с линтовкой и что делать с неработающей подсветкой синтаксиса .tag файлов в вебшторм. 

В остальном, я скорее доволен, переездом на этот фреймворк.

Qweeto: ретроспектива за 5 лет

Отправлено 10 апр. 2018 г., 13:46 пользователем Deni Baskovsky

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

За эти 5 лет скатился Foursquare, Facebook сегодня испытывает давление со стороны общественности, Instagram сделал прорыв от хипстерских фоточек еды и гламурных отфильтрованных телочек к стадной массе быдла, которые уже не знают что публиковать в своих stories. Qweeto находится в стазисе, а я застрял в Москве намного дольше чем планировал. Зато теперь, высматривая Презентацию которую когда-то делал с друганом, легко заметить, что есть идеи, которые проходят вместе с человеком, и только от него зависит, сможет ли он, словно олимпиец, провести этот огонь от идеи к чаше реализации.

ProstoDiary: projects

Отправлено 10 апр. 2018 г., 12:33 пользователем Deni Baskovsky

Не секрет, что проект я веду открыто и трачу на кодинг времени меньше, чем на обдумывание той или иной фичи. Количество Issues ушло за тридцатку и поэтому решил перевести их на проекты. Пока проектов три:
  1. Watch - служит для проектирование портрета пользователя и считыванием всего доступного боту данных (email, прикрепленные аккаунты, перемещение и пр.). Идея в том, чтобы бот знал своего пользователя.
  2. Control - все что связано с финансами и оплатой/контролем и доступными ресурсами. Идея в том, что бот руководит ресурсами/финансами пользователя.
  3. IOT (будущая Qweeto) - бот как посредник между пользователями. Идея в том, что боты могут общаться между собой, совершая разные действия, основываясь для этого на первых двух идеях (Watch/Control). 

ProstoDiary: логирование от Coralogix

Отправлено 27 мар. 2018 г., 4:01 пользователем Deni Baskovsky

Как оказалось, на Heroku с логированием все плохо. Таких сред как Graylog нет, поэтому приходится брать то, что есть в аддонах. Потратив несколько часов на установку разных логов, остановился на Coralogix, который удалось связать в упряжку с winston 3, пока еще находящящийся в состоянии релиз кандидата. Морда у Coralogix некрасивая и неудобная, но пока все работает. Использовать в других проектах категорически не советую. 

ProstoDiary начал понимать КПП

Отправлено 10 мар. 2018 г., 6:41 пользователем Deni Baskovsky

Это ускоряет запись потраченного, и в будущем позволит хранить дубликат чека не используя отдельные государственные приложения. Пока работает в тестовом режиме, ничего не записывая в БД. Изменение структуры БД сейчас ставится приоритетной задачей.

Добавил безопасности блогу

Отправлено 9 мар. 2018 г., 22:38 пользователем Deni Baskovsky


Теперь по взрослому крутится на https

Перевел лэндинг на Polymer 3

Отправлено 21 февр. 2018 г., 2:26 пользователем Deni Baskovsky   [ обновлено 21 февр. 2018 г., 2:29 ]

Ничего особенного, просто перевел старый лэндинг на новую (пока еще тестовую версию) Polymer. В качестве бонуса теперь сайт открывается на iOS 11.
landing

Еще существенно ускорена загрузка.

Не так давно возникла идея приложения

Отправлено 16 февр. 2018 г., 22:36 пользователем Deni Baskovsky

Часто случается, что при знакомство на вечеринке хочется поделиться контактами. Не знаю как у вас, но у меня с этим проблема: меня нет вк, фб использую только для работу, инсту давно забросил, а телега пока не такая популярная. Короче, приходится записывать стандартный номер телефона. И тут в очередной раз после тусы я подумал, а почему бы не создать приложение, в котором ты записываешь свои социальные профили и при встрече с другими человеком можешь в одну кнопку расшарить контакт? 

Babylon Virtual Gamepad buttons

Отправлено 19 дек. 2017 г., 12:54 пользователем Deni Baskovsky

Была мега интересная задачка по работе - сделать передвижение камеры по виртуальным кнопкам для мобильных девайсов. Накатал простенькую либу, пока без подключения camera.inputs.add.

1-10 of 154