Диаграммы Ганта онлайн, читалка для книг на английском, красивые данные для отчетов – эти и другие российские стартапы
10 новых российских проектов для управления проектами, финучета в бизнесе, 3D презентаций товаров и услуг, геоаналитки, ускорения индексации сайтов и многого другого. Битва за «Продукт недели» началась!
Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд.
Это площадка, где энтузиасты из мира технологий делятся своими идеями, обсуждают и создают вместе новые продукты, чтобы делать жизнь людей лучше.
Победители прошлой недели
Сервис для проведения онлайн-тестирований, анкетирования, маркетинговых и продуктовых исследований
🥈SVET
Помощь людям с тревожными расстройствами. Обучение самопомощи и техникам лечения.
🥉2TA
Ищите блогеров для рекламы вашего бренда по параметрам целевой аудитории среди 300 тысяч площадок.
21-й набор «Радара»
26 февраля 2024 на сайте Product Radar были опубликованы свежие 10 проектов, которые поборются за ТОП-3 места по итогам недели. Победители получат значки «Продукт дня №1,2,3», а также отдельные посты в тг-канале Радара.
Следующий «набор» появится на сайте через неделю, вы еще можете поучаствовать в нем или выбрать другую дату для размещения. Заполняйте заявку сейчас. Это бесплатно!
Участники 21-ого набора Product Radar
26 февраля – 3 марта 2024 года
Читайте описания, кликайте на название проекта, голосуйте и комментируйте его на Радаре. Ваша поддержка очень важна основателям 🙂
Проверятор
Мониторинг сайтов с уведомлением о сбоях в Telegram и по почте
Решаемая проблема: Сайт может стать недоступен. SSL сертификат может просочиться. Из-за этого можно потерять клиентов, если вовремя не отреагировать
2Index
Сервис ускорения индексации сайтов и внешних ссылок в Google, Яндекс и Bing
Решаемая проблема: Низкая скорость индексации сайтов и обратных ссылок
Arty-Farty
Загрузи любое изображение и получи картину на холсте в комплекте с удобным сборным подрамником.
Решаемая проблема: Все генерируют картинки, появляются нейро-художники, но данные изображения так и остаются на экране компьютера. Сгенерированные изображения, не подходят для печати и просто заказать печать не могут
Поддерживает проект: Илья Тимонин – его блог про нейросети @neuro_art0
Adesk
Понятный сервис автоматизации финансового учета для предпринимателей и собственников бизнеса
Решаемая проблема: Свести все денежные потоки в одном месте, поддерживать актуальность финансовых данных, распределять операции по статьям и проектам, собирать отчеты — скучно, долго и энергозатратно 😞
Поддерживает проект: Вадим Д. – и его блог о полезных сервисах @ITResearcher
Site3D Configurator
Облачный сервис создания 3D презентаций товаров и услуг
Решаемая проблема: Низкая конверсия онлайн-продаж
Linga
Приложение-читалка для книг на иностранных языках, плюс удобный переводчик и тренажер новых слов
Решаемая проблема: Раньше вам приходилось использовать несколько разных приложений для чтения электронных книг, перевода, тренировки и изучения новых слов.
Платформа Torrow
Конструктор услуг для взаимодействия с клиентами: онлайн-запись, аренда, заказы, интернет-магазин
Решаемая проблема: Ускорение продаж, упрощение и снижение затрат на взаимодействие с клиентами, прием платежей за услуги, информирование об услугах, сплитование платежей при организации маркетплейса
АвтоГантт
Диаграммы Ганта онлайн бесплатно и без регистрации
Решаемая проблема: Быстро прикинуть расписание проекта показать Клиенту или шефу в виде диаграммы Ганта.
Slider AI
Визуализируй данные при составлении регулярных отчётов в 10 раз быстрее!
Решаемая проблема:
-Ручная обработка данных;
-Ручное обновление данных excel;
-Вероятность ошибок;
-На составление отчетов требуются часы работы.
BST Organica
Система геоаналитики: прогнозирование выручки, повышение эффективности, открытие новых точек
Решаемая проблема:
1) Неудовлетворительное качество: трафика, среднего чека, выручки, наценки, срока окупаемости
2) Долгий анализ локаций, недостаточная скорость открытия новых, потеря выгодных помещений
Поддержите проекты из подборки и Радар
Лайкните этот пост и поделитесь ссылкой на сайт Product Radar с друзьями и коллегами, чтобы как можно больше людей узнало о классных продуктах на русском языке!
Как еще поддержать Радар можно узнать на 👉 специальной страничке.
Подписывайтесь на тг-канал площадки – Product Radar — лучшие стартапы России и разборы новые выпуски подкаста про ИТ-бизнес «Стартап-секреты».
👋 До новых встреч, стартап-пока!
Продолжение поста «Продолжение поста "Продолжение поста "Продолжение поста "Продолжение поста "Продолжение поста "Приглашаю к изучению python"""""»
Так, ну что там с обучением. Продолжаю грызть гранит джанги. Разбираюсь с орм и принципом mtv в питонячем фреймворке. А то сайт написал, а как он работает, не понимаю. Сейчас прочитаю теорию и снова за практику.
Задача на 15 минут. Как она может вылиться в год разработки
Привет всякому входящему! Сегодня хочу рассказать о том, как сложно спрогнозировать вроде бы простые задачи, на которые по словам «экспертов с интернета» уходит пару дней. Я поделюсь примерами из жизни, когда клиент просит сделать быстренько на коленке, а ты погрязаешь в рутине переделок.
Изображение честно сделал GIgachat Сбера. Порой Кандинский генерирует совсем уж упоротые картинки, но эта плюс минус похожа на моё состояние после 10 успешно профуканных дедлайнов.
У нас с командой есть такой проект, как homecrm. ru Мы долгое время работаем над автоматизацией бизнеса и уже получили много опыта, на основе которого можно проводить хоть какую-то экспертизу и прогнозирование плюс минус паровоз. За 7 лет разработки можем поделиться накопившемся багажом знаний, кучей получившихся проблем и путями их решений на основе этого стартапа.
С чего начинается идея
5 лет назад к нам приходит клиент и говорит: "Парни, я хочу собирать объявления с сайтов в один клик. Вот у меня список сайтов, на которые рекламируются все, кому не лень. Соберите мне всю информацию в реальном времени. Я готов заплатить за это 30 тысяч рублей."
Ну мы люди не гордые, провинциальные, можем и посмотреть. Заходим в интернет, видим статьи про парсинг на php, радуемся как ужаленные. ТЗ никакого нет, заказчик не составит его, т. к сам ничего в этом не понимает. Для него есть конечная цель и ему совершенно фиолетово, какие мы технологии используем, и как оно будет работать. Лишь бы был достигнут результат. В принципе, это типичный клиент, ему и не нужно ни в чём разбираться. Это сейчас я понимаю, что надо было писать тех задание, а тогда был зеленый, неопытный.
Так вот. Мы, одурманенные чувством простой прибыли, на коленке за 5 дней сделали парсер. Простой скрипт, который проходит и собирает список объявлений с сайта (с ави*о. ру, никому не скажем об этом). Ставим на сервер, по крону запускаем раз в час — всё работает. Получаем деньги и идем пить пиво.
Проходит 3 дня. Клиент позвонил и говорит: "Парни, а там больше не работает ничего. Я же деньги дал, а вы чего пытаетесь кинуть меня чтоли." Лезем в код — поменялась вёрстка на сайте. Следовательно и скрипт перестал работать. Мы переделали и запустили заново. Ну вот сейчас то точно ничего не произойдёт (-нет).
Прошла еще неделя. Снова звонок и снова доработки. И так по кругу в течение полугода. Нам повезло, что клиент разорился и уехал жить в Краснодар. Иначе бы мы никогда с ним не закончили.
Вообще, мы читали в интернете и на всяких интернет-курсах, что парсинг — это просто. Там вообще не надо ни с чём долбаться. Просто собирай огромный объем данных и продавай их. Нюансов то вообще нет, а клиентов просто тьма тьмущая. Сейчас точно могу сказать — ЭТО НЕ ТАК.
Мы решили, что в нашу crm’ку тоже нужно добавить парсер недвижимости, а то 2 из 3 людей просят парсер. Вроде бы и опыт есть уже, и скрипт писали. Провели опрос среди наших клиентов, собрали список самых приоритетных задач (это же бизнес нам сказал, что важно и полезно, как можно бизнесу то не верить), погнали разрабатывать. По срокам реализации посчитали около 1 месяца кропотливой работы.
Далее я постараюсь описать таймлапс, по которому можно будет понять этапы разработки. Сразу говорю — точного ТЗ у нас нет, мы сами придумываем процесс и пытаемся его автоматизировать. Ни один клиент не смог нам рассказать все нюансы своей работы, т. к описать процесс в хоть сколь-нибудь адекватном виде является невозможной мукой.
1-я стадия MVP
Мы спарсили 3 сайта. На крон навесили задание, которое каждый день собирает инфу в одну большую базу для нашего города. Проработало 3 дня.
Список полученных проблем:
Забанили IP, по которому мы парсили. Пришлось купить прокси. Добавили просто массив в код с логинами паролями.
Скрипт может оборваться и перестать работать. Нужно понимать что мы спарсили, а что нет для его возобновления. Стали складывать в базу по урлам со статусами Успех, Не успех, Успех с ошибками.
Надо распарсить строку с адресом и положить к нам в систему. У нас под капотом кладр, который четко вписан в общую концепцию. А на сайтах просто строка. Долго искали адекватное решение, решили использовать сторонний сервис для распознавания строк.
Параметры не бьются на сайтах с нашими. У нас в системе определенные списки с параметрами, например с ремонтами. А тут с какого-то сайта вылазит ремонт с типом Хороший, Красивый, Нежный, Мягкий. Куда его присоединять? Пришлось извращаться и писать алгоритм соединения для каждой площадки отдельно.
2-я стадия полной переработки
Вроде бы работает MVP. Но тут видим, что 80% запросов отдаёт ошибку. Оказывается, что все сайты внедрили систему для распознавания ботов и парсинга. Полезли в интернет и на то время нашли Selenium. Пришла пора полного переписывания проекта.
Мы ставим 3 месяца проект на новые лыжи, с php на python. Прошли десятки бессонных ночей, но мы не могли добиться адекватного сбора данных. Все сайты постоянно банили запросы, а сам селениум из себя представлял один огромный костыль, который переписывается всеми, кому не лень. На гите можно найти тысячи форков, которые сверху реализации набрасывают свои костыли. На этой стадии мы хотели бросить проект т. к отказоустойчивости не было никакой. и мы не могли обещать качественный сервис своим клиентам.
Здесь мне помог мой товарищ, который скинул статью с описанием библиотеки Playwright. Он оказался в разы приятнее и функциональнее старого селениума, что позволило заново воскресить проект и начать его переписывать.
Через 2 месяца всевозможных тестов у нас получился вроде бы рабочий парсер. Но снова возникли проблемы.
Список новых проблем:
Кривая архитектура синхронных запросов. Никогда не делайте синхронные запросы для таких больших проектов! Нам пришлось поднять RabbitMQ для разграничения по очередям запросов. Отдельно для каждой площадки, для каждой категории недвижимости. Это было очень сложная задача, за 2 месяца плюс минус управились. Но теперь у нас много воркеров, которые могут параллельно смотреть новые объекты по каждой категории.
Нам нужно обновлять старые объекты. Несколько клиентов одновременно начали просить архив за прошлые месяцы. Они хотели видеть все изменения по цене и параметрам. Объявление удалилось с сайта — должно пропасть и у нас. Решили отдельно создать очередь для таких объектов. Даже выставили приоритетность обновления. Пример: скачали объект, после через час проверили его на актуальность, далее через день, далее через 3 дня и там уже раз в неделю.
Из 2 проблемы пришла другая — постоянное накопление архива и увеличение количества объектов для парсинга. Архив копится, лавэха не мутится, ресурсы утилизируются, терпение кончается. Это самое узкое место на сегодняшний день, т. к мы не смогли найти решения, кроме как увеличить количество серверов, проксей и т. д
3-я стадия разработки
Один за одним сайты начали банить прокси. Мы начали анализировать и пришли к следующему списку проблем и решений.
Новые проблемы:
Бан одновременных прокси. Нельзя было обращаться в одно и то же время с одной прокси разными воркерами. Т. е мы не можем загружать 5 страниц с разных браузеров с одного ip одновременно, это распознается как парсер страницы сторонними средствами. Пришлось внедрять ротацию проксей, чтобы она занималась и отдавалась по времени.
Воркеры могли зависнуть. Можно было попасть в тот в момент недоступности прокси, либо браузер просто зависал и т. д Проблем с этим куча и они решились только перезапуском воркеров по таймауту. Грязное, но рабочее решение.
Прокси стали банить на долгое время. У нас кончилось 150 проксей. Просто все было заблочено на некоторых сайтах на неделю. Решение было найдено благодаря Максиму Кульгину, за что ему огромное спасибо. Мы стали использовать мобильные прокси. Да, это дорого. Но это того стоит. Получилось побороть полный бан по ip.
С увеличением количества площадок и сайтов стали кончаться ресурсы. Представьте запускать 30 гугл хромов одновременно. Процессоры не вывезут, память кончится и всё станет колом. Решение простое — увеличение серверов. На данный момент мы тратим около 50 тысяч на сервера в месяц. Но это мы только в начале этого сложного пути.
На данный момент мы решаем такие нюансы, как:
Парсер сайтов Казахстана. Нашли там коллег и выходим на их рынок. Там просто огромная проблема с адресами и отсутствием стандартизации всего и вся.
Увеличение доступных площадок и городов. Все упирается в серверные ресурсы и деньги.
Несколько месяцев назад к нам пришёл клиент, который попросил дать ему парсер, который будет в режиме реального времени собирать объявления с 20 сайтов и выводить в онлай-форму. Он подключит колл-центр и будет обзванивать продавцов. Главное правило — объявление должно появиться в системе не более, чем через 5 секунд после публикации на сайте. Вы вообще представляете объёмы работы? На опыте я могу сказать, что это либо невозможно, либо очень дорого. Ну и заплатить он был готов не более 50 тысяч рублей т.к "на том же кворке такое же делают за 5к парочка студентов". До сих пор видимо никого не нашёл.
Заключение
Вроде бы есть понятная задача бизнеса, которая по статьям из интернета решается за пару дней. Но она имеет такой огромный айсберг проблем, о котором без опыта ты даже не сможешь догадаться.
Проблемы не кончаются никогда. Это закон бизнеса. Мы стараемся сделать продукт таким, чтобы он был удобным, быстрым и безотказным. У меня просто совести не хватит продавать то, от чего ты не получишь душевного экстаза.
Буду рад любой обратной связи. Мы умеем парсить всё, до чего дойдут руки. Пишите , поболтаем :-)
P.S. Никакого парсинга персоналки и незаконной инфы. Я ещё молод, чтобы сидеть.
Подписывайтесь на мой телеграмм-канал, я пишу много интересного про IT и бизнес в целом
Собственный язык программирования
В контексте написания собственного движка для игр, возник вопрос о минималистичном языке программирования для скриптов и процедур.
Проблема в том, что что-то сложное реализовать достаточно просто, а что-то простое очень сложно.
Пример. Какие операторы нужны? И понеслась... Сложение, вычитание, умножение, возведение в степень, извлечение корня степени... это по минимуму.
Типы данных. И тут вагон вариантов. Сейчас мне нужны только целые и только положительные, а потом?
В результате я пришел к варианту minPRG: язык должен быть прост, читаем, определять все возможные варианты переменных без каких либо альтернатив.
Текущий вариант включает все возможные переменные, отрицательные значения оных, дробные и все необходимые математические функции.
Итого: 1 тип (условный, включающий все варианты положительных/отрицательных и дробных, максимум в 13 значимых цифр, включая точку), 9 математических функций. Добавлены операторы работы с цветом, позицией символа, таймером и минимальной работы с выводом.
Получился исполнитель линейного кода. Работает шустро, а толку чуть.
p.s. Пинайте ногами, без толку это все.
Исходный код
В телеге выложил ссылку на проект Заря ОС на ГитХабе
Обучение программирование
Всем привет! Хочу спросить совета у знающих людей. Хочу поменять профессию и уйти в айти. Не знаю с чего начать, где лучше учиться и как выбрать профессию. Нашел бесплатный курс, в питоне решаю самые базовые задачки, начальный уровень. Может кто нибудь подсобить чем сможет? Не знаю как вообще в этой сфере обстоит дело с образованием как это делать лучше и тд
Поиграем в бизнесменов?
Одна вакансия, два кандидата. Сможете выбрать лучшего? И так пять раз.
Облако слов
Ради интереса решил построить облако слов на основе комментариев в пул реквестах.
Нашёл пару подходящих библиотек:
- react-tagcloud — нет типов для тайпскрипта, и облако само по себе выглядит не очень красиво
- react-wordcloud — типы есть, облако выглядит неплохо, использовать легко
<ReactWordcloud
size={[1000, 500]}
words={data}
maxWords={350}
options={{ fontSizes: [10, 120] }}
callbacks={{
onWordClick: (e) => {
onClick(e.text);
},
}}
/>