Как я делал «Твой Дневник» — или ситуация на рынке электронных дневников

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

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

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

Я долго смотрел вокруг и мучил себя мыслями о том, что российские школьники не получают доступ к качественному и красивому сервису для просмотра оценок.

Интересный анализ рынка


Создаётся впечатление, что в нашей стране всё равно на государственные сервисы в образовании. Да и вообще на государственные сервисы.

Положительные тенденции складываются только в Москве: там работает отличный портал «mos.ru» и, который как минимум можно считать нестыдым. В Подмосковье, справедливости ради, тоже есть задизайненный сайт.

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

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

В городах, которые отдалены от центра, работают разные виды электронных дневников. Самый популярных из них — «Дневник.ру» — уже почти 10 лет на рынке, и такое ощущение, что с этого времени, дизайн у них ни разу не поменялся. Посмотрите на их сайт.

image
Чувствуется особый вкус.

Что касается их приложения для мобильных устройств — нужно платить. Без оплаты Вы не сможете посмотреть ни домашнее задание, ни оценки. Легче зайти через сайт, не правда ли?
Я попробовал купить у них PRO версию. И за деньги этим пользоваться вам не рекомендую. Того не стоит.

Ну что… Тогда, может, сделать своё приложение?


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

Отлично. Так как давно хотел попробовать себя в iOS разработке, решил начать со связи Swift/PHP. И первая мысль, которая пришла в голову — «чёрт… это же парсинг...»

О да. Концепция следующая: клиент делает типичный запрос на сервер, указывая тип дневника формата «/scripts/type{DIARY_TYPE_NUMBER}_{DIARY_TYPE_NAME}?action={ACTION_TYPE = («getMarks», «getSchedule», etc.)}», а сервер уже отправляет JSON с типичным ответом, который парсит клиент.

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

Над дизайном решил поработать основательно. Попробовал сделать удобно, красиво, адаптивно. На мой взгляд, получилось нестыдно. Удобно и не стыдно. Сейчас в дневнике доступны три вида электронных журналов — московский «Дневник МЭШ», «Дневник.ру» и подмосковный «Школьный портал».

Скриншот приложения
image

Да. Вы напишете в комментариях два главных вопроса:

  1. Как это монетизировать?
  2. Ну это же простой парсер!..

И я отвечу: да, это парсер, но удобный и универсальный.

Однако вопрос с монетизацией довольно важен.

Как монетизировать?


«Твой Дневник» каждые 20 минут будет присылать уведомления об оценках. Так как это сервис-посредник, вы понимаете, что по факту, если у нас 200 пользователей, то серверу придётся делать 200 авторизаций/запросов по токену, 200 раз прогружать расписание детей, 200 раз сравнивать, есть ли id полученной оценки в базе данных и 200-old_marks раз отправлять уведомление на устройства.

Если поток пользователей, которые каждые 20 минут должны будут получать уведомления, превысит 100-200 тыс., то сами понимаете, на это нужны будут сервера. Мощные и подъёмные. Деньги. Одни деньги.

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

От рекламы непосредственно в виде баннеров я тоже отошёл.

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

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

Что же может быть такого интересного и нужного для ученика в простом дневнике с оценками?
Уведомления и советы!. Советы, кстати, это небольшие строчки, которые подсказывают обучающемуся, сколько ему осталось оценок для достижения того или иного результата (среднего балла). И отдавать мы их будем по принципу RewardedVideo. Смотри видео — получай услугу. Это решает несколько вопросов:

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

Для тех, кто не хочет смотреть рекламу, разумеется, доступно продление на 3-12 месяцев. Гибко и удобно. За просмотр одного рекламного ролика, к слову, можно получить 1 неделю уведомлений и советов.

image

Приложение есть. Что дальше?


Никогда не дружил с Android. Пока решил рекламировать то, что у меня есть. На iOS.

Больших бюджетов на рекламу нет. За неделю в AppStore приложение скачали 40 пользователей. Может быть, вы что-нибудь порекомендуете в комментариях? Как прорекламировать удобный и качественный продукт без космических денежных затрат?

Кстати, может, что хочет помочь с разработкой? Пишите ВК, если что.

Конечно, нельзя сказать, что я полностью уверен, что это именно то, что нужно пользователям.
Я встречал за последнее время много ребят, которым рассказывал про своё приложение, а мне отвечали железным «И чё?». Есть процент, и я пока точно не знаю какой, пользователей, которые не помнят и помнить не хотят свои пароли от электронных дневников. Для них это рутина, которую они не видят и не хотят видеть.

Почему есть такие ребята?


Как часто, когда вы учились в школе, вы спали на уроках?

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

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

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

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

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

Заключение


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

Если будут какие-то новости или другие, иные рассказы про разработку, обязательно ещё отпишусь.

Удачного дня, побольше улыбок и радости!
Поделиться публикацией

Комментарии 39

    +16
    такое ощущение, что с этого времени, дизайн у них ни разу не поменялся. Посмотрите на их сайт. Чувствуется особый вкус.
    Смотрю на скриншот и никакого «особого вкуса» не чувствую. Каким сайт должен быть? С кучей свистелок и перделок и «личным консультантом» во всплывающем окошке сбоку?

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

    По поводу портала mos.ru: на старой версии была форма ввода счётчиков. На новой версии сделали новую форму, красивую, с дизайном и оформлением, даже пример, в каком формате вводить, сделали — целая часть, потом точка, потом дробная.
    Только вот точка в поле ввода не ставится. И запятая не ставится. А в образце заполнения она есть. Вот и думай, что там писать. Ах да, и ещё в новой версии убрали историю предыдущих показаний с возможностью редактирования данных — видимо, на это времени не хватило уже. Зато всё теперь красивое такое и отдизайненное.

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

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

        +2
        Ну это Ваш набор параметров, причём все они субъективные. Для меня вот красота в дизайне находится где-то в самом конце списка, а лаконичность в этом списке вообще отсутствует. Мне нужно, чтобы работало, быстро грузилось и чтобы слово «бл#» при работе с ресурсом звучало пореже. И как только такое состояние достигнуто — ИМХО, дизайн нужно заморозить и не менять вообще без веской причины.

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

        Примеры моей личной боли:
        — с mos.ru уже написал;
        — с личным кабинетом Ростелекома: за три года они раза четыре минимум что-то там меняли, в итоге каждый раз приходится вбивать пароль заново, а данные грузятся дольше;
        — с ozon.ru: одно время они сделали окно входа в каком-то динамически всплывающем элементе, в результате чего сохранять пароль в браузере стало нельзя вообще;
        — и ещё примеры есть, тысячи их.

        Впрочем, ладно, давайте я пока остановлю брюзжание. Напишите список, что Вам не нравится в текущем сайте dnevnik.ru — и посмотрим, что там окажется.
          +1
          Здравствуйте!

          Спасибо большое за обратную связь.

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

          Теперь давайте посмотрим на мобильную версию сайта портала «Дневник.ру». Она выглядит следующим образом:
          Скриншот «мобильной версии» Дневник.ру
          image

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

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

          Ну и простите. Дизайн — это не последняя штука. Адаптивность и удобство — тоже. Именно за это платят, за это переплачивают.
      +7

      По поводу дневников мне вспомнилась поучительная история: Сначала они воруют, а когда ты побеждаешь, то тебя убивают

        –1

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

          +5
          Хорошо бы. Интересно было бы, если б InkOut написал, чем там дело кончилось.
            0
            Кажется, что дело там ничем не кончилось. Отстали.
        0

        Из любопытства: почему «дневник» с заглавной?

          –1
          Здравствуйте!

          Спасибо за вопрос. Большая буква во второй части названия встречается и у других сервисов: «YouTube», «Яндекс. Такси», «Тинькофф Банк». Многие сериалы пишет так же: «Breaking Bad», «The Big Bang Theory».
        +2

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

          0

          Уточните, пожалуйста, Вы заходите через сайт или приложение?


          В любом случае, Вы — первый человек, от которого я слышу слово «нормально» в отношении «Дневник.ру»

            +1

            Через сайт раз в неделю. Не вижу смысла мониторить оценки с точностью до минуты.

              –1
              Здравствуйте!

              Спасибо большое за Ваш вклад.
          +3

          200 запросов? Это при 40 скачиваниях? А когда будет 1000? А 100 000? Вам серверов Гугл не хватит всё это поддерживать, вам нужно будет писать своего робота планировщика, который будет планомерно распределять нагрузку между всеми серверами. От запросов каждые 20 минут начнут умирать серверы дневника, и они начнут банить ваши подозрительные ip, потому-что никто не рассчитывал, что ученики будут каждые 20 минут проверять свои оценки.
          Мой вам совет: парсинг перенести на клиентскую часть, прямо в телефон. Запросы слать гораздо реже — например каждые 4-6 часов. Одного уведомления о новой оценке за день обычно хватает, чем "уведомления об оценке в онлайн режиме". Парсить с телефона сложнее, и энергоемко, но это единственный способ не быть забаненным по ip.

            0
            Здравствуйте!

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

            Подскажите, пожалуйста, каким образом я могу оффлайн от имени телефона парсить запрос на сервер дневника? Каким образом мне динамически подстраивать изменяющийся API?

            Отмечу также, что я сказал, что скачиваний 40. Однако дальше я написал: «Если у нас 200 пользователей, будет делаться 200 запросов». Таким образом я исключил тот факт, что на 40 пользователей приходится 200 запросов.

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

            Что касается распределения нагрузки на сервера «Твоего Дневника», то да, такое решение будет предпринято при повышении объёмов скачивания приложения.

            Удачного Вам дня!
              0
              каким образом я могу оффлайн от имени телефона парсить запрос на сервер дневника?

              Почему оффлайн? У телефона что, интернета нет? А как же он тогда от вашего сервера уведомления получает?
              Телефон пусть через свой мобильный интернет делает всё тоже самое, что делает ваш сервер (парсят странички дневника). В итоге вам понадобится 0 серверов, и ненадо будет страдать от нагрузки.

                –1

                Вы хотите сказать, что телефон пользователя должен вручную парсить страничку дневника или его апи?


                1. Сколько в таком случае будет весить приложение?
                2. Как быстро удастся исправить ошибку в апи или подстроиться под новое?
                3. Как быстро получиться добавить новый дневник?
                4. Телефон получает уведомления от сервиса уведомлений. Если бы была возможность без ограничений сидеть в интернете от имени телефона, разработчики бы ушли в отрыв.

                Тут комментаторы такие, что складывается впечатление, что это одни диванные аналитики, очень сложно, если честно, отвечать не столь очевидные и глупые комментарии.

                  +1
                  Сколько в таком случае будет весить приложение?
                  Немногим больше. Парсинг страниц — это лишь дополнительный код. Вы же не сохраняете в приложении весь трафик и картинки сайта который нужно парсить, а просто дописываете логику.
                  Как быстро удастся исправить ошибку в апи или подстроиться под новое?
                  Столько-же, сколько вы будете исправлять это на сервере, плюс время на upload в маркет (2 недели). Если api часто меняется, то изменяете алгоритм — выкладываете на сервере инструкции, по которым клиенты(телефоны) будут получать обновы. Тогда срок обновления уменьшится еще короче.
                  Как быстро получиться добавить новый дневник?
                  Не понял вопроса. Новый дневник от нового сервиса? Если так много сервисов различных появляется, то делаем соответственно пункту 2 — инструкции парсинга получаем с сервера.
                  Если бы была возможность без ограничений сидеть в интернете от имени телефона
                  Поэтому сидеть не постоянно, а лазить каждые 6 часов. Знаю, что в IOS существует ограничение на время работы, но вы также можете каждые 6 часов рассылать уведомления, чтобы приложение просыпалось и лезло в интернет за обновлениями.
                  Плюс вы забываете, что для загрузки дневника не обязательно качать и сопутствующий хлам в виде картинок и стилей. Реальных данных накопится дай бог на 1 мбайт.
                  Тут комментаторы такие, что… отвечать на глупые комментарии
                  Давайте вы не будете переходить на личности, и я не буду? Я вам вполне конкретные и адекватные вещи говорю, как можно сделать без содержания целой кучи серверов, и не клянчить с юзеров бабло на такой парк серверов-парсеров, которые превратятся в тыкву сразу же, как ваши IP сочтут вредными и забанят. Тогда вы подумаете либо юзать прокси или торы, либо перекидывать логику на телефоны пользователей.
                    0
                    Здравствуйте!

                    Спасибо большое за Ваш комментарий.

                    Ни одна служба модерации Apple не даст мне от имени телефона делать запросы на сервер. Это запрещено. Это неправильно. Каждые 6 часов рассылать уведомления смысла не вижу.
            +2
            Создаётся впечатление, что в нашей стране всё равно на государственные сервисы в образовании.

            Как монетизировать?

            Хмм… Интересно, почему же так происходит.
            Теперь минутка историй из жизни. Никому не нужен электронный дневник. Ни ученикам, ни учителям.
              0
              Здравствуйте!

              Спасибо за обратную связь. Тот факт, что никому не нужен электронный дневник, печален. Именно это мы и стараемся исправить.
                0
                Удачи! Советую начать с обучения компьютеру 50ти+ летних преподавателей сразу после очистки дневников от дыр, ошибок и уязвимостей.
                  0

                  Здравствуйте!


                  Спасибо за совет.

              0
              «Твой Дневник» каждые 20 минут будет присылать уведомления об оценках. Так как это сервис-посредник, вы понимаете, что по факту, если у нас 200 пользователей, то серверу придётся делать 200 авторизаций/запросов по токену, 200 раз прогружать расписание детей, 200 раз сравнивать, есть ли id полученной оценки в базе данных и 200-old_marks раз отправлять уведомление на устройства.

              Почему бы не отправлять уведомление когда оценка будет выставлена? И не придется проверять новые оценки каждые 20 минут.
                0
                Здравствуйте!

                Спасибо большое за обратную связь. Подскажите, пожалуйста, каким образом можно стороннему сервису узнавать об изменении базы данных в другом сервере?
                +1
                Сейчас уже более модная тема — одежда со встроенными чипами и интеллектуальное видеонаблюдение в классах на предмет поиска отвлекающихся.
                  0
                  Здравствуйте!

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


                    Ну это сильно зависит от того, какой и куда чип вставить.
                  0

                  Не очень понял один момент из статьи. Подскажите, вы с клиента обращаетесь по API, или парсите страницы?

                    0
                    Здравствуйте!

                    Большое спасибо за интерес к статье. Первое верно. Второе будем делать при отсутствии API.
                    0
                    В моем регионе электронный дневник — это сложная тема для пользователей, то он не висит, то отображает только часть информации, UI аля 90е.
                      –1

                      Здравствуйте!


                      А тут набрались комментаторы, которые такие дневники защищают. А потом ставят дизлайки на мои ответы

                      +1
                      Вам же четко написали, что скриншот из статьи сайта «дневник.ру» выглядит отлично. Он не перегружен новым, модным оформлением, которое зачастую тормозит(прим. недавно проводили редизайн gmail, он стал менее отзывчивым, чем был до этого). Нужно заниматься улучшением стабильности, а не изменением всего UI полностью на «более лаконичный», пользователям же потом переучиваться!
                      И да, Вас сильно не минусовали, лишь немного намекнули, что Вы не правы.
                        –1
                        Здравствуйте!

                        Спасибо большое за обратную связь. Я выше описал, почему «Дневник.ру» — это унылое вещество.

                        0
                        Почему не написали свой сервис с нуля? Ожидал, что статья будет именно про это. Это быстрее и проще поддерживать, чем парсер чужого сайта.
                          –1

                          Здравствуйте!


                          Спасибо за обратную связь. К сожалению, рынок уже распределён на неудобные, но широко распространённые электронные дневники.

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

                        Самое читаемое