Сообщество - ИТ-проекты пикабушников

ИТ-проекты пикабушников

590 постов 3 429 подписчиков

Популярные теги в сообществе:

4

Как улучшить настроение

Бывает ли у вас, что кажется вы что - то не успели, забыли сделать. Ощущение бесцельно прожитого дня немного фрустрирует, хотя на самом деле весь день был наполнен какими-то делами? У меня да.

Как улучшить настроение

Я много об этом задумывался, и постепенно из разрозненной информации в инете у меня сложилась картина. Во всем виноват дофамин - такой гормон, который отвечает за удовольствие от достижения цели, да и в целом за радость в жизни. Его легко сломать, алкоголем, запрещенными веществами, да и просто думскроллингом ленты, и сложно починить - для этого нужно много спорта и хорошего сна, ну и правильного образа жизни.

Позвольте поделиться моими идеями как улучшить дофаминовый баланс. Где -то я читал, что у скандинавских народов есть такой прием: берешь глобальную цель, дробишь ее на множество мелких, и каждый день делаешь по одной. Потом еще наткнулся на исследование, что дофамин лучше выделяется в процессе достижения цели, а не когда она глобально уже достигнута.

Так я понял что по сути ведение списка дел, и зачеркивание выполненных задач позволят в конце дня понять что он прожит не зря.

Ещё хотелось бы знать, что ты занимался чем то действительно важным. А не просто делал все подряд. Для этих целей Эйзенхауэр придумал табличку, где все дела делятся на 4 категории по признаку важности и срочности. У этой таблички неочевидная для многих идея, что сначала надо делать важные и срочные дела, а все остальные -потом.

А потом я подумал, почему бы не объединить все эти идеи, и не написать веб приложение, которое бы помогло людям вести их задачи, ранжировать их по срочности и важности, а может быть и делиться ими со своими коллегами и друзьями (ставить задачи)? И чтобы все это хранилось в облаке и не терялось?

В общем, у меня получилось вот что: https://www.planskeeper.com/

Сервис пока в процессе допиливания, но уже реализовано:

1) простой доступ без пароля как для создателя задачи так и для ее исполнителя. Логин происходит по ссылке из письма.

2) задачи можно бесконечно дробить и поручать их разным исполнителям (для этого достаточно email). При этом каждый пользователь наглядно воспринимает какие задачи являться именно для него важными и срочными.

3 ) нормальное отображение на мобиле

4) возможность работы офлайн и установки pwa приложения, даже на iOS.

В общем, буду рад если вы зайдёте и попробуете мое приложение для планирования задач. Ещё раз ссылка: https://www.planskeeper.com/

Всем хорошего дофамина!

Ps.Кстати приложение размещено на отечественном сервере так что оно, можно сказать, санкционноустойчиво.

Приложение сделано на технологиях angular, spring, mysql если это вам о чем то говорит.

Показать полностью 1
10

Прохождение собеседования с помощью нейросети

Запилили сервис, который без палева дает подсказки прямо во время собеседования. secstant.ru

Основное вопрос как это вообще продвигать?

Опыта в продвижении чего угодно - полный ноль.

Сделал статью на vc.ru, но какого-то ощутимого выхлопа от нее не будет похоже - по итогу новых регистраций нет, да и скачиваний тоже не слишком(прикрутил яндекс.метрику).

Посоветуйте куда копать, где поучиться или к кому пойти? Без посыланий, пожалуйста, в долгое пешее...

Буду признателен за конструктив.

Показать полностью
4

Нужен совет по движку для форума

Ситуация:

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

Я долго рассматривал различные форматы и шаблоны для создания такой площадки и пришел к выводу, что из всех возможных вариантов больше всего подходит формат Интернет-форума. Да эта модель электронной площадки считается устаревшей, пик популярности форумов закончился лет 15 назад, им на смену пришли социальные сети, блоги и месенджеры. Однако для решений поставленных задач, такой формат будет актуальным как сейчас, так и в ближайшем будущем и  альтернатив у него пока нет. Преимущества такого формата форума в том, что он позволяет участнику создавать новые темы, устанавливать правила ведения дискуссии, прикреплять дополнительные материалы (фото, видео, документы, ссылки, голосования), комментировать публикации без ограничений по количеству знаков, вставлять цитаты, отвечать в одном сообщении нескольким участникам на конкретные вопросы. Помимо этого он имеет множество других возможностей, которые позволяют вести удаленную дискуссию с максимальным удобством для всех её участников. Плюс к этому он  имеет более удобную навигацию позволяя создавать тематические разделы и подразделы, распределяя обсуждения по тематическим группам, также форумы имеют более удобный встроенный поиск, позволяющий быстро найти нужную тему или сообщение по ключевым словам и фразам. Не менее важным в работе такой площадки является возможность установки языковых плагинов, что позволяет всем участникам комфортно вести дискуссию, несмотря на языковые различия. 

Нужна консультация специалистов в выборе подходящего под данные задачи движка форума. Нагрузка будет небольшая, несколько сот, от силы тысяч пользователей, из них активных точно менее 1000, максимум одновременного пребывания до 100. Требования такие: простота установки и администрирования (так как делать всё буду сам), интерфейс, адаптированный минимум к трем языковым группам с перспективой улучшения возможностей многоязычности.

Я помониторил различные форумы (из тех, где указано на какой платформе они созданы), нашел две наиболее популярных:

1. PHP Bulletin Board (phpBB)

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

2. vBulletin

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

У кого есть опыт использования данных платформ, что посоветуете, какая будет лучше? Может быть, помимо этих двух есть еще какие-то «конструкторы» для создания форумов, менее известные, если да то какие?

Заранее благодарю за помощь.

Показать полностью
2

«Сотрудник, который работает 24/7»: как мы разрабатывали чат-бота — навигатора по 30 000 товарам

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

О нас

Мы BotCreators. Разрабатываем чат-ботов для популярных мессенджеров с 2018 года. И не просто чат-ботов, таких можно на любом конструкторе сделать, а чат-ботов, которые улучшают бизнес-процессы. За такими можно смело идти к нам.

О заказчике

IEK GROUP — российский производитель и поставщик электротехнического оборудования. В ассортименте компании представлены необходимые для бытового и производственного использования товары.

Задача

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

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

Например:

— кому-то изначально удобнее искать нужные детали самостоятельно. Тогда мы просто делаем удобный поиск прямо в мессенджере;

— кому-то хочется делать это ночью или в выходные дни. Тогда мы делаем такого бота, который бы мог отвечать на запросы в любое время;

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

Мы обсудили с заказчиком целевую аудиторию, составили список важных функций, которые обязательно должны быть в чат-боте, зафиксировали пожелания и написали детальное техническое задание.

Вот как выглядел список наших задач (специально под формат vc.ru мы сгруппировали похожие пункты и перевели с технического языка на простой):

Наши инструменты

Так как с заказчиком мы договорились делать чат-бота в Телеграме, нам понадобился API Telegram. Сам код писали на PHP и Java, базу данных загружали через PostgreSQL, репозиторий держали на GitLab, а для гибкой работы распределительных систем использовали Kubernetes.

Процесс разработки

Наш стандартный путь: обсудить ТЗ, распределить обязанности в команде и делиться промежуточными итогами.

«Осведомленность снимает нервозность, страхи, тревоги клиента о проекте и конечной цели, к которой вы вместе идёте»

Бот должен уметь многое. Функции, которые стояли в приоритете, были основаны на следующих пользовательских сценариях:

  • Получить данные о товаре через поиск по названию или артикулу

  • Ознакомиться с часто задаваемыми вопросами по товарам

  • Получить ссылку на необходимый калькулятор

  • Просмотреть информацию о сервисных центрах своего города

  • Получить ссылки на документы в формате PDF

  • Получить ссылки на технические решения

  • Получить ссылки на 3D и BIM модели

  • Посмотреть информацию о дистрибьюторах в своём городе

  • Перейти в онлайн-чат для получения консультации

  • Ознакомиться с контактами службы поддержки

Вот так выглядели сценарии «Документация» и «Калькуляторы»:

А всего их было 11: это и взаимодействие с информацией о товарах, и переходы по внутренним ссылкам, и связь с живым оператором.

На схеме нарисовали полный путь, который мог пройти пользователь, запустив чат-бота:

Почему увеличили сроки

Мы оценивали разработку в три месяца. Но полностью готовый бот у нас получился только через семь.

Нюансов было два.

Первый был связан с кастомным ПО заказчика, подобраться к которому можно было только через интеграцию самописных коннекторов. Облачные решения не подходили, потому что безопасность и всё такое. Поэтому здесь задержались, сначала изучая само ПО, а потом создавая для него новые коннекторы.

Второй нюанс был связан с интеграцией данных каталога товаров через API внутренней системы заказчика. Тут сложность была неочевидной, потому что изначально мы сделали так, чтобы при каждом вызове функции для получения данных отправлялся новый запрос к сайту, чтобы чат-бот мог показать самую свежую информацию.

Например, пользователь хочет посмотреть список товаров в категории «Ящики управления электродвигателями». Тогда бот отправляет запрос на сайт и возвращается с тем количеством товаров, которые доступны для заказа прямо сейчас.

Но мы быстро поняли, что с таким решением рано или поздно упадёт или сайт, или сам чат-бот. Поэтому придумали кое-что другое.

Раз наша цель — оптимизировать нагрузку на сайт, тогда лучше воспользоваться кэшированием. Это когда в определённое время, в нашем случае каждую ночь, информация по данным с сайта сначала собирается в кэш, а затем в течение дня отдаётся по запросу пользователя.

Решение оказалось элегантным, потому что информация на сайте обновляется не так часто — соответственно, и запросы можно делать не постоянные.

Что в итоге у нас получилось

Результаты

Для чат-бота мы реализовали ~ 10 функций

Интеграций к кастомному ПО заказчика добавили ~ 4, включая коннектор к Битрикс24 для связи с живым оператором

Всего пользовательских сценариев ~ 11

Доступно для покупки в каталоге товаров ~ 30 000 артикулов и наименований

Запрашивают информацию у чат-бота ~ в среднем 150 человек каждый день

Потенциальная экономия ~ 525 рабочих часов в месяц

В статье мы указали только те детали, которые не попадали под NDA. Пощупать чат-бота клиента можно по этой ссылке.

Можно также пощупать наших внутренних чат-ботов (делали для своей команды, но внешний доступ открыт для всех):

🤖 Trigger-бот для создания триггерных сообщений

🤖 Reminder Art для напоминаний

🤖 Мониторинг-бот для мониторинга ботов

Что по ценам и вообще можно узнать:

— Написав в бота BotCreators

— Позвонив по телефону: 8 800 550 47 15

— Оставив заявку на сайте BotCreators

Показать полностью 6
4

Я создал Телеграм бота (FYTT), который ищет Телеграм каналы всех ваших подписок на ютубе. DELUXE-версия статьи

бот - https://t.me/FYTTproject_bot

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

Опыта мало в разработке, поэтому стек особо не выбирал:

  • Node.js, библиотека telegraf.js

  • MongoDB, mongoose

  • Express.js

Алгоритм работы бота, такой:

Пользователь пишет /start, ему выдается приветственное с 2 кнопками: "Найти Youtube-каналы в Telegram" и "Связаться Youtube-канал с Telegram-каналом". Также, пользователь сразу же добавляется в базу данных с сохранение его chatId, для дальнейшей связи, в случае чего и awatingChannels, о котором рассказал ниже.

При нажатие на первую, пользователь получает кнопку с ссылкой на авторизацию в Google, после авторизации отправляется ответ на сервер на "/oauth2callback", запуская функцию поиска:

Далее функция возвращает ответ и запускается функция, которая проверяет есть ли данный канал в базе данных бота (чтобы в будущем, с увеличением базы, ускорить выдачу каналов).

Если канал не найдется в базе данных, то запустится функция для парса телеграм каналов из раздела "ссылки" на ютубе. Хотелось бы использовать для этого Youtube API аж 3 версии, но там нет функционала, для получения этих данных 🙃, поэтому я нашел стороннее API - YouTube operational API (lemnoslife.com), с которым приятно работать. Автору респект!

Далее новый канал добавляется в базу данных, а после бот выдает несколькими сообщениями все ютуб-каналы, на которые он подписан и через тире их телеграм каналы. В первых версиях, бот рассчитывал только на отправку одного сообщения, но оказалось, что у моего тестового аккаунта подписок сильно больше, чем ограничение на длину сообщения в телеграм. Недолго подумав, я просто решил отправлять всю информацию несколькими сообщениями. (Других вариантов, как будто нет)

Была одна надоедливая проблема, которую я костыльно решил: при авторизации в google аккаунт запрос на сервер отправляется дважды, если пользователь дважды нажимает на выбор аккаунта. Сложно объяснить, но думаю, те кто работал сталкивался с этим. Эта проблема появляется только, если у человека несколько аккаунтов. Поэтому, чтобы сообщения не отправлялись дважды, я стал записывать в документ пользователя в базе данных переменную awatingChannels. При нажатии на кнопку найти каналы ее значение становилось true, а при получение каналов меняло на false, что решило проблему. Думаю, нужно было реализовать это через сессии, что я и пробовал изначально, но что-то пошло не так и я решил по-быстрому все сделать так.

Кнопка: "Связать Youtube-канал с Telegram-каналом" позволяет пользователю вручную добавить связку ютуб-канал + тг-канал, если автор ютуб-канала не оставил ссылку на свой тг в описании. (Сначала запрос отправляется на модерацию мне, а потом, при принятии попадает в общую базу данных).

Для логирования ошибок, впоследствии, стал использовать pino.

Теперь бот работает и выполняет свою функцию. У него есть еще несколько команд, такие как:

  • /submit (text) - для связи со мной

  • /faq - ответы на вопросы

  • /send - чтобы я мог связаться с пользователем

Еще несколько системных и мой прикол - /jericho (иерихон)

bot.command('jericho', async (ctx) => { if (ctx.message.chat.id == MODERATOR_CHAT_ID) { ctx.replyWithVideo(`https://i.gifer.com/370.gif`) throw new Error() } else { %*%secret%*% } })

Которая вызывает ошибку, а вместе с ней прекрасную гифку для меня: https://i.gifer.com/370.gif

Теперь есть работающий бот, но Google не дает доступ к API тем, про кого не знает (только для тестов). Поэтому нужно пройти проверку. У тебя должен быть сайт, политика, terms и прочее.

Начал я с логотипа и отправил им это

Google сказал, что это лого не отражает вашу индивидуальность. (видимо, из-за слишком явного использования автарок телеграма и ютуба).

Тогда я решил показать всю свою индивидуальность:

Они это приняли, я пошел быстренько сделал сайт, попросил ChatGPT написать политику и отправил. Оказалось надо быть владельцем домена, на котором размещен сайт, поэтому пришлось купить. Подключил сертификаты через certbot. И отправил снова.

На этот раз им не понравилась политика, они жестко ответили, мол: Вы написали, что "Google продает данные пользователей.". Я перечитал все, что ChatGPT написал, не нашел там такого, попросил переделать, отправил снова и теперь уже все приняли :). Еще надо было сделать им демо-видое работы, ну ладно без проблем - FYTT — Найди Ютуб каналы в Телеграмм (Полезный бот в Telegram) | @FYTTproject_bot - YouTube

Потом я решил продвинуть бота и записал два смешных shorts:

  • https://youtu.be/MlXEUIDBhE0 - Speech to speech моей записи на ии оригинального голоса Рика из Рика и Морти (сделал на этом сайте).

Ну и написал первую версии статьи: Я создал Телеграм бота (FYTT), который ищет Телеграм каналы всех ваших подписок на ютубе / Хабр (habr.com)

Получил много положительной реакции, до статьи у меня было 37 человек, которые запустили бота, а теперь 235 из которых 93+ использовали его функционал.

Ссылки:

Бот - https://t.me/FYTTproject_bot

Исходный код - https://github.com/VitoSperansky/FromYoutubeToTelegram

Сайт - fytt.tech:3000 (порт 3000, потому что порты ниже 1024 по умолчанию закрыты для установки серверов, их можно открыть, но это угроза безопасности. По-хорошему мне надо было сделать переадресацию с 443 порта (он дефолтный для https сайтов, поэтому скрыт в поисковой строке и пользователи его не видят) с помощью ngrok например, но я не стал тратить силы, так это все равно заглушка для гугла).

Связаться со мной по вопросам или просто - https://t.me/vitosperansky

Показать полностью 6 2
1

Рекомендации по резюме за 1 клик от тг-бота плюс чек-лист идеального резюме для самопроверки

По работе часто общаюсь с начинающими IT-специалистами и прям много людей (20 человек с кем лично пообщался) стали говорить, что не могут найти работу уже больше 5 месяцев. Стал выяснять, что именно и как они делают, плюс посмотрел их резюме. Сюда решил выписать самые частые ошибки, которые увидел, и рекомендации, как их исправить. А также сделать анонс, своего телеграм-бота, который проверяет ваше резюме по всему чек-листу ниже и дает понятные рекомендации, как исправить: https://t.me/rezyume_ai_bot

Ошибки в резюме

  1. Нерелевантные должности в опыте работы
    Например, я ищу работу разработчиком, но в резюме у меня есть позиция «руководитель складом».

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

  3. Не описаны достижения
    Чаще всего их просто нет, но когда попадались, описаны были неправильно, например, сделал проект или запустил рекламу, или нарисовал дизайн.

  4. Опыт работы меньше на одном месте 6 месяцев
    Такое бывает, но HR это настораживает, потому что это может быть связано с тем, что вы часто меняете работу или просто не справляетесь с обязанностями.

  5. В описание «о себе» написано про хобби и то, что не относится к работе.
    Например, увлекаюсь музыкой, нравится ходить по паркам, путешествовать и узнавать новое.

  6. Нет всех контактов и ссылок
    Написан только телефон или только почта

  7. Резюме оформлено с использованием разных графических элементов и шрифтов
    Часто, такое резюме сделано через какие-то сервисы, где можно выбрать ДизАйН

Ошибки в поиске работы

  1. Не пишут сопроводительные письма совсем

  2. Пишут шаблонные сопроводительные письма

  3. Делают меньше 10 откликов в день

Это основное, теперь попробую описать, что с этим делать, если у вас ест такие ошибки. Поверьте, исправление всех ошибок увеличит приглашение на собеседование в разы!

Чек-лист

  1. Релевантные должности в опыте работы
    Если вы откликаетесь на вакансию Java-разработчик, то как минимум последнее место работы больше 1 года должно быть Java-разработчик. Весь опыт работы, который не мэтчится с этой ролью, можно смело удалять. Единственное исключение, когда вы хотите показать, как именно пришли на позицию разработчика. Например, вы работали проектным менеджером и пересекались с разработкой, т.е этот опыт работы дает вам плюс в понимании всего процесса разработки и такое считается

    Что делать, если нет опыта работы в данной должности? Два пути:
    а) Пойти на фриланс и найти заказчика хоть забесплатно.
    б) Сделать собственный проект. Если вы менеджер/дизайнер найдите разработчика и сделайте проект вместе, который поможет обоим.

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

  3. Достижения
    Идеально, если достижения стыкуются с обязанностями и обязательно направлены на бизнес результат. Например, снизил время отклика с 1 секунды до 0,5, что увеличило конверсию в покупку на 3%.

    Что делать, если вы не можете измерить достижения? Два пути:
    а) Написать бывшему или текущему работодателю, узнать, как моя работа влияет вообще на общее положение дел в компании
    б) Попробовать пообщаться с чатом гпт выяснить, какие вообще могут метрики для вашего бизнеса, и прикинуть, как вы на них влияете.

  4. Удалить опыт работы меньше 6 месяцев
    Если такое место работы есть и оно похожее с каким-то другим, можете смело соединить эти два места работы, так как задачи выполняли примерно одинаковые.

  5. О себе
    Этот блок нужен, но нужно писать там правильные вещи. А именно чем вы занимаетесь в свободное время, что помогает вам в профессиональной деятельности. Например, вы выступаете на конференциях или вы ведете блог, который рассказывает про вашу деятельность. В общем, здесь нужно дополнительно «продать» себя и рассказать какой вы молодец.

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

  7. Оформление
    HR нужно посмотреть сотни резюме в день, у него буквально меньше 10 секунд на одно резюме. Они не вчитываются в то, что написано, а сканируют и смотрят на ключевые вещи. Если вы оформили "красивое" резюме, то есть высокий шанс, что HR не сможет найти нужную информацию.

    Просто оформите резюме текстом в гугл документе черными буквами, одним шрифтом, вот шаблон: https://docs.google.com/document/d/1LgbP4ZpOCMEf1BFswqFsFke3...

Поиск работы

  1. Поэтому нужно обязательно писать сопроводительное. Не надо длинное, просто подсветите, что вы ознакомились с вакансией и подтвердите на примере, что умете выполнять работу, которая требуется в вакансии.

  2. Откликайтесь на 10 вакансий в день. Не обязательно выбирать прям лучшую вакансию и откликаться только на нее — шансы низкие. Лучше откликаться на все вакансии, которые вам более менее подходят, и пробовать проходить интервью, чтобы:
    а) Понять насколько хорошо составлено резюме (вообще приглашают на интервью или нет)
    б) Понять какие вопросы задают
    в) Научиться на них отвечать

Не забывайте, что поиск работы — тоже работа, причем эмоционально очень тяжелая. Но проделав эти шаги, вы сильно упростите себе жизнь. Также напоминаю, что можно воспользоваться моим ботом, чтобы получить все рекомендации автоматом: https://t.me/rezyume_ai_bot

Спасибо)

Показать полностью
Отличная работа, все прочитано!