В 2017 году я начал изучать Java. И, чтобы как-то визуализировать результат трудов, я решил сделать десктопное приложение.
Поразмыслив, чего мне не хватает, я захотел создать свой новостной агрегатор. Конечно, такие программы на тот момент уже были: и десктопные, и веб, но они мне показались сложными, а хотелось получать нужные новости по одному клику, да и лучшего варианта для изучения я не придумал.
Функциональность планировалась такая:
Поиск всех новостей за период
Поиск по ключевым словам
Поиск по введённому слову
В актуальной версии приложения добавлен ассистент
На тот момент я ждал каких-нибудь новостей по рефинансированию ипотеки и дождался, программа принесла пользу в реальности! Моя жена — трейдер, и у неё ключевые слова связаны с этой деятельностью. Она и сейчас пользуется программой, но деньги за лицензию платить отказывается.
Утром открыли News.exe, нажали одну кнопку, почитали заголовки, посмотрели на Топ-10 слов, проверили, почему слово «подписал» в топе, и стали в курсе основных событий на текущий момент. Или прочитали новость, что продаётся квартира Семёна Слепакова в Москве (потратили 3 секунды своей жизни на прочтение и 3 секунды на мысль «зачем мне эта информация»), добавили правой кнопкой в Excluded «слепаков», и больше новостей с ним вы не получите. Есть риск потерять важную информацию, добавляя слова-исключения, но, думаю, вряд ли Семён изобретёт полезное лекарство или выплатит дивиденды :) Однако, если изобретёт, то в таблице «Топ-10» вы это точно увидите!
Умножьте 6 секунд на 100 или 200 бессмысленных заголовков, которые вы прочитаете за весь день, вот вам и экономия времени... позвоните близким! Вопрос с поиском новостей я решил за вас (а Павел Дуров не решил... читаю в Telegram много лишнего... Павел, добавьте пожалуйста возможность создавать слова-исключения как у меня :)
С актуальными возможностями программы можно ознакомиться на сайте. Там же можно скачать и опробовать демо-версию (windows, linux).
Возможности демо-версии
Поиск всех новостей с отсевом, поиск по одному слову и поиск по ключевым словам (3 источника RSS, период, за который ведётся поиск — 24 часа)
Добавление слов для отсеивания заголовков при поиске всех новостей (нажать правую кнопку мыши на заголовке и выбрать Excluded)
Три ключевых слова для поиска
Просмотр всех новостей в архиве по слову (даблклик) в таблице анализа «Топ-10» (за 24 часа). В «Топ-10» применяется метод схожести строк Джаро-Винклера.
Удаление/восстановление слов в «Топ-10»
Демонстрация работы приложения
Эволюция интерфейса
Первый, представленный небольшой публике:
Промежуточный (его я выложил в посте на Хабре, где меня отругали за некрасивый UI):
Приняв критику, я произвёл доработки! Теперь интерфейс выглядит ещё хуже:
❯ Государственная регистрация программы для ЭВМ
Как много бюрократии в этом мероприятии, подумаете вы подсознательно, и будете категорически НЕ правы! Завершив разработку программы, я решил закрепить её за собой официально.
Предупреждение! Мой пост — мой путь! Проверяйте информацию прежде чем принимать решения.
Первый шаг. Оформление электронной подписи.
Подпись я оформлял здесь, выбрав вариант «Для ФЛ - Для личных целей» (подходит для получения патента, включения в реестр российского ПО и т.д.). Заплатил онлайн около 1600 рублей только за саму подпись, т.к. у меня уже был их токен (красная флешка, на которую записывают ключ). Токен стоит тоже около 1600 р., уточняйте.
Скрин с выбором типа электронной подписи
Также съездил в удостоверяющий центр, сфотографировался, записал ключ на токен. Всё быстро и понятно.
Второй шаг. Подача заявки.
Варианта подачи заявки два: через Госуслуги и через Федеральный институт промышленной собственности (далее ФИПС). Я решил действовать через ФИПС... не знаю, почему.
Зарегистрировался на сайте ФИПС, подал заявку. Её заполнение интуитивно понятно (о себе, о программе, документы). К заявке приложил:
-
чек об оплате пошлины
Как физическому лицу мне это стоило 3000 р. Я открывал Сбербанк Онлайн и по инструкции ФИПСа сверял все реквизиты. Сбер многое подсказал, спасибо, но я перепроверил. В наше время верить нельзя никому, порой даже самому себе... мне — можно!
реферат (самый важный документ, т.к. то, что вы в нём напишете, будет в окончательном пакете документов, а делается просто в ворде и сохраняется как pdf)
Пример реферата
РЕФЕРАТ
Автор: Фамилия Имя Отчество.
Правообладатель: Фамилия Имя Отчество.Программа: «Аванди Ньюс Анализ».
Аннотация: Десктопная программа, которая анализирует частоту употребления слов в новостных заголовках для понимания "картины дня" за выбранный период, а также рассчитывает общий эмоциональный фон по заранее установленным правилам. Также имеется возможность подключения сторонней базы данных SQLite для оффлайн работы приложения.Тип ЭВМ: IBM PC-совмест. ПК
Язык: Java
ОС: Windows 10
Объем программы: 85 Мегабайт
Согласие на обработку персональных данных
Остальные материалы. Я приложил скриншот интерфейса и весь код из Intellij Idea (File - Print. Чтобы уменьшить размер файла, надо убрать галочку "Print as graphics". Далее выбираем имя принтера "Microsoft Print to PDF". Если такого нет - установите)
В завершение подписываем заявку электронной подписью.
Третий шаг. Ждём решения по заявке.
FAIL: через 3 недели пришло письмо с замечанием.
Суть такая, что я указал в реферате: Также возможна оффлайн-работа приложения с архивом благодаря использованию встроенной базы данных SQLite.
Замечание: «Таким образом, можно предположить, что представленное произведение содержит некую совокупность самостоятельных материалов и что в рамках данной заявки, помимо программы для ЭВМ, была представлена и база данных.»
И предложили вернуть деньги.
Я переписал эту часть реферата на: «Также имеется возможность подключения сторонней базы данных SQLite для оффлайн-работы приложения.» и отправил исправленный реферат, предварительно подписав его электронной подписью.
Через неделю пришло уведомление на электронную почту, что мне выдано Свидетельство о государственной регистрации моей программы (в бумажном виде документы пришли заказным письмом через две недели).
Свидетельство
Итоги
И где бюрократия? Может, я и не описал некоторые мелочи, но вся информация есть на сайтах, которые я приложил. Берём и делаем, всё. Вот он, успех — в действии. И, скорее всего, программу сочли полезной, т.к. был обязательный пункт, где указываешь, что она делает и в какой области её можно применить. Я также уверен, что такая программа как новостной агрегатор вряд ли бы прошла проверку на уникальность, их пруд пруди, а вот как анализатор новостей — вполне себе!
P.S. Я знаю, что в заявке надо было писать название программы как «Аванди Ньюс Анализис», но «ис» я благополучно потерял почему-то.
❯ Реестр программного обеспечения (российского ПО)
Многим знакома ситуация, когда идёшь на экзамен в надежде получить хотя бы 3, получаешь 4 и негодуешь — почему не 5. Вот и я, получив Свидетельство о регистрации, решил продолжить и подал документы на включение программы в реестр российского ПО, т.к. ничего похожего в нём не нашёл!
Официальный сайт реестра. Я зарегистрировался, используя учётную запись Госуслуг. Здесь так же! Без электронной подписи (УКЭП) — никуда. Далее на главной странице выбрал «Подать заявление» — «Заявление о включении сведений». Открылась страница на пункте 1/13 «Основные сведения».
Я подавал заявку 3 раза. Здесь последний вариант заполнения с моими комментариями:
Пример заполнения
FAIL: через неделю пришли замечания:
1) На репозиторий GitHub нельзя ссылаться, а в первом заявлении я сделал именно так. Пока не пришли эти замечания, я делал сайт, т.к. знал, что GitHub точно не пройдёт. Но мне было важно с чего-то начать, чтобы мне показали, где и что дорабатывать. Разведка боем, как говорят.
2) На тот момент я ещё не сделал полную инструкцию и не описал, как пользователь может обратиться к разработчику в целях устранения неисправностей или с предложениями по улучшению программы. Замечание справедливое.
3) Ну здесь я не сразу понял, что автоподставленный сайтом ноль != нолю вбитому руками (а надо руками, оказывается), написал «0,01 копейка» в двух полях, что, само собой, является 100% суммой выплат в пользу иностранных лиц. Просто ошибся я, но иначе заявление было не подписать, была ошибка, что этот раздел заполнен некорректно.
Данные нарушения я исправил, отозвал старое неправильное заявление (автоотмена происходит не сразу, а новое не подашь, пока старое не отзовёшь... кстати, отзыв тоже надо подписывать электронной подписью). Что удивительно — по заявке с замечаниями был статус «Передано на регистрацию». Я написал в поддержку реестра и мне ответили, что я могу вручную отозвать заявление или же дождаться, когда его статус поменяется на «Отказано».
Через 4 дня пришло новое заключение о проверке и, открыв его, я обнаружил во всех полях зелёное «Да». Статус — «Передано на регистрацию».
Прошло 3 дня, и статус поменялся на «Зарегистрировано» и тут же сменился на «Готовится экспертная оценка» (уведомления о смене статуса приходят на электронную почту от Госуслуг).
Ещё через две недели статус сменился на «На доработке заявителем».
FAIL: Первое замечание (написано как комментарий в самой заявке): «Ссылка на экземпляр: Такой страницы нет (404)». Ссылка на файл с дистрибутивом должна быть активна на протяжении всей проверки. Я в процессе синхронизации её запорол.
Второе: «Проверьте корректность указания Правообладателя на экземпляре ПО, в частности: в мета-свойствах файлов дистрибутива; в файлах лицензий (COPYRIGHT, LICENSE, EULA и т.п.); в окне «О программе» и т.п.». Указал свои ФИО как в Свидетельстве о регистрации везде, где мог, в том числе писал и на латинице (с кириллицей кодировка местами шалит).
Третье: «В заявлении указано: Liberica JDK, в составе дистрибутива - Java 8 SE».
Всё поправил, подписал электронной подписью свой комментарий, что всё готово, прям в заявке, и стал ждать новых замечаний. Статус снова: «Готовится экспертная оценка».
Замечаний не последовало, и через день статус сменился на «Дана экспертная оценка».
FAIL: через пару дней пришло уведомление от Госуслуг (2 раза), что заявление закрыто. Без объяснения причин! Я разозлился (а некоторые предпочитают поплакать) и уже представлял как пишу гневное письмо в Минцифры. Зашёл купить кофе, матерясь в мыслях, и до меня дошло почему пришло 2 раза. В тот день утром я удалил с сайта Реестра 2 старые заявки, это по ним и пришёл статус. Третья заявка была активна. В общем, не спешите с выводами как я, господа! :)
Прошло 2 недели, статус — «Подготовка голосования».
Ещё 2 недели, статус — «Принятие решения» и через 5 минут «Включено в реестр».
Заявление подано 30.03.2023, закрыто — 17.05.2023. Итого — полтора месяца (не забываем, что было много праздников и выходных).
Ссылка открывается только из РФ: https://reestr.digital.gov.ru/reestr/1483979
Мишн комплитед! Теперь надо как-то это продавать. Или как быть, коллеги?
I need help
1) Если ты хочешь помочь с дизайном и владеешь JavaFX или у тебя есть другие идеи, как сделать интерфейс стильным, модным и молодёжным, то с радостью приму тебя в свою команду! Мне этим заниматься просто нецелесообразно, т.к. я уже несколько лет работаю в Oracle PL/SQL и развиваюсь в его сторону. Джавулька — для души!
Мой дизайнерский "уровень" привёл к такому наброску
2) Если ты хочешь переписать это на Андроид - милости просим!
3) Веб версию делать не планировал, т.к. много таких агрегаторов, но если ты хочешь, то давай попробуем!
4) Запустите кто-нибудь jar на Mac, если установлена Java. Отпишитесь, будет ли работать :)
P.S. Мой пост считаю мотивационным и хочу, чтобы вы не тратили время на те мелочи, которые описал я. Следующий мотивационный пост будет про то, как я захотел стать диджеем и стал, конечно же, потому что я не только хочу, а ещё и пробую, как вы заметили, да и музыку уже лет двадцать сотворяю на досуге: Avandy Electronics
Комментарии (23)
anonymousmaharaj
25.05.2023 11:15+2Крутой гайд. Хорошая работа (помимо UI, как говорится).
vdo2000
25.05.2023 11:15+1А что дает всё это? Какой с этого профит вы хотите получить в дальнейшем?
В статье так и не увидел задачи, для чего вообще вам понадобился патент
mrprogre Автор
25.05.2023 11:15+2Хороший вопрос! Патент для того, чтобы попасть в Реестр российского ПО.. а в реестр для того, чтобы продавать ПО юр.лицам без НДС в 20%. Я считаю, что любая работа должна оплачиваться! А для ИТ-сообщества я не обфусцировал свой код с алгоритмами.. любой джавист легко добавит мой джарник себе как библиотеку и позаимствует что нужно :)
Wrench_IT
25.05.2023 11:15Промежуточная версия программы работала с СУБД Оракл. Я когда-то давно решил переделать на SQLite и не ошибся. С Ораклом в реестр не попасть.
А не подскажите, где можно посмотреть полные требования? Нагуглил некую методичку-рекомендации, но она двухгодичной, минимум, давности, и сам сайт на Тильде убрали, только в кэше Гугла и остался. Или там любое ПО с открытым кодом подойдет? Dotnet актуальный, например, допустим?
mrprogre Автор
25.05.2023 11:15+1Все документы смотрел здесь.Я эту методичку и пытался использовать, но закрыл её навсегда :) По ней совершенно непонятно как подавать заявку.. нет нюансов, которые очевидны только тем кто её писал! Я в комментариях расписал более менее. А так можно ещё на Госуслугах поискать информацию.Я так понял с открытым кодом иностранное можно, но опять же, кто знает в частностях..
Drobotun
25.05.2023 11:15+4Это не патент. Это свидетельство о государственной регистрации программы для ЭВМ. Программы для ЭВМ являются объектами авторского, а не патентного права. Патент можно получить либо на изобретение (это способ или устройство) либо на полезную модель (это устройство). Более подробно это описано в четвертой части ГК РФ.
schulzr
25.05.2023 11:15Добрый день! Спасибо. А есть очевидная польза от таких бумаг физическому лицу? Мне вот не приходит на ум пока что :)
mrprogre Автор
25.05.2023 11:15+2Добрый день! Преимущество при гос. закупках. Объясню.. Когда я делал десктопное приложение, я подумал - а кто его купит? Очевидно что обычному пользователю удобнее приложение на телефоне или веб приложение. Кому вообще нужно десктопное приложение!?Вот как раз юр лицам и нужно - некоторым, специфическим. А для физ лиц я сделал платно, т.к. когда тебе дают, к примеру, книгу бесплатно, чаще всего она пылится на полке, а вот если ты купил книгу за две тысячи, то ты её даже читать будешь с некоторым трепетом и дочитаешь :) моя прога реально очень полезная, я сам ей пользуюсь каждый день!
Drobotun
25.05.2023 11:15+3Если вдруг захочется защитить диссертацию, то свидетельства о регистрации программ или баз данных приравниваются к публикациям основных результатов диссертационного исследования в изданиях, рекомендованных Высшей Аттестационной Комиссией.
ELENA_CHE
"о, сохраню себе в закладки"
mrprogre Автор
Спасибо, жена :)