В этой статье я хотел бы поделиться своим опытом создания SaaS-сервиса на базе LAMP стека, Postio и доведения сервиса до состояния, когда он стал приносить 3 700 долларов ежемесячно (до обрушения рубля было почти 7 000). Сразу надо сказать, что эта история не имеет ничего общего с инвесторами, с золотой лихорадкой Кремниевой долины и с какой-то сверхсовременной технологией. Просто незамысловатая история от независимого разработчика о создании прибыльного SaaS-сервиса, который может сделать любой. Этот веб-сервис был сделан для внутреннего рынка России, поэтому я перевёл всё на английский и в доллары для удобства (пожалуйста, обратите внимание, что это перевод моей статьи, которая изначально была написана для англоязычной аудитории). Но, с другой стороны, этот опыт является довольно универсальным и может быть применён везде. По сути, это инструкция по созданию проектов такого рода.

Три года назад я решил заняться SMM, и самым простым способом сделать это показалось запустить свою собственную группу в какой-нибудь нише и попытаться развить её. Facebook был уже, мягко говоря, довольно конкурентным на тот момент, поэтому я запустил свою тестовую группу на базе «ВКонтакте». Я выбрал очень популярную нишу, потому что всё, что я хотел, — это научиться, а не доминировать на рынке.

Наверное, я должен немного отвлечься и сказать, что VK.com имел и до сих пор имеет процветающую «экосистему» таких групп, которая приносит прибыль их владельцам. Это — своеобразный рынок, который Facebook прикрыл уже давно. И этот базар является прекрасной средой для обучения и экспериментов.

image

Пример группы на VK.com

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

Во всяком случае, я никогда особо не любил ручной труд и решил сделать небольшой инструмент, чтобы помочь себе извлекать контент с постов моих конкурентов (которые делали то же самое с другими источниками) и публиковать их в моей группе на регулярной основе. VK.com имеет хорошо сделанный API, поэтому всё было чрезвычайно лёгким. Я «прошерстил» множество постов и сделал небольшой интерфейс, который помогал мне двигаться по постам и удалять неподходящие, например, посты со ссылками, с непристойными выражениями и с очень малым числом лайков. Я также избавлялся от постов, которые были явно украдены у какого-то легко идентифицируемого источника.

image

Инструмент для отсортировки и обработки постов для моей группы

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

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

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

Это было начало.

Выбор стека и фреймворка


Я чрезвычайно счастливый разработчик, потому что из всего веб-девелоперского инструментария, я знаю лишь LAMP, jQuery и Codeigniter. Но знаю этот стек очень хорошо и могу создавать системы в рекордно-короткие сроки. Поэтому выбор здесь был очевиден.

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

Кстати, вы не поверите, какое количество веб-разработчиков боятся начинать свои проекты, поскольку думают, что их скилл недостаточно высок. Это, разумеется, полный бред, и я знаю случаи, когда люди создавали продукты, приносящие $15000 в месяц, через полгода после того, как впервые познакомились с PHP.

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

Создание программы с минимально необходимым функционалом (MVP)


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

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



Я подготовил краткий список функций моей программы с минимально необходимым функционалом (MVP). Он оказался довольно длинным, поскольку я решил включить в него некоторый материал, который я обычно не держу в MVP (например, автоматизированные платежи и все дополнительные интерфейсы). Вот то, что мне было нужно и что я имел, в конечном счёте:

Платёжный сервис. Поскольку стартап был предназначен для работы на рынке России, я выбрал один из самых популярных соответствующих шлюзов — Робокасса. Можно было обратиться к Stripe, но они не работали в России в тот момент (и до сих пор не работают), а возиться с созданием компании где-нибудь в Делавере не имело особого смысла с позиции финансов и хлопот.

image

Сборы Робокассы

Комиссии Робокассы были не очень подходящими, и я к настоящему времени уже перешёл на «Яндекс.Кассу»; но тогда для начала они были приемлемыми.

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

Система управления публикацией. Сеть VK.com была первой и, вероятно, самой большой (помните, что рассматривается только российский рынок) социальной сетью, для которой я должен был обеспечить поддержку. Однако я понимал, что в будущем, необходимо поддерживать также Facebook, Twitter и «Одноклассники», поэтому следовало добавить своего рода ответвления для них. В конце концов, я просто сделал единую функцию, которая вызывала методы API восходящей социальной сети для каждой группы, готовой к обслуживанию, и добавил её вызов в CRON. CRON срабатывал через каждые 15 минут.

Здесь показан элемент этой функции:
<?
function process() {
  $groups = $this->Group_model->getReadyToPublish();
  foreach ($groups as $group) {
    switch ($group->type) {
      case 'vk':
        $result = $this->Pub->vk();    
      break;
      case 'ok':
        $result = $this->Pub->ok();    
      break;
      case 'tw':
        $result = $this->Pub->tw();    
      break;
      case 'fb':
        $result = $this->Pub->vk();    
      break;
    }
    switch ($result->error){
      case 1:
        // process error
      break;
      case 2:
        //process error
      break;
      ...
      case 0:
      // charge user and move to next group
      break;
    }
  }
}
?>

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


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

image

Месячная статистика после полутора лет работы; строки представляют дни месяца.

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

Биллинг. Некоторые из социальных сетей (да, я смотрю на вас, VK.com и OK.com) были весьма ненадёжными, поэтому я решил не использовать модель подписки и отказался от неё в пользу взимания платы с пользователей на основе каждого поста. Таким образом, я мог не беспокоиться, если не смогу доставить контент моим клиентам из-за проблем, связанных со сбоями социальных сетей.

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

Запуск


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

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

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

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

image

Один из рекламных постов (только как пример)

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

Результат был впечатляющим: почти 70% владельцев, которым я предложил посты, зарегистрировались в Postio. Почти 60% из тех, кто зарегистрировался, пополнили свой баланс в системе. Некоторые из них даже нашли меня в социальных сетях и поблагодарили за сервис. Эта часть была самой удовлетворительной для меня.

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

В конце месяца статистика была следующая:

image

Пополнение баланса и доход приведены в долларах США

Это было хорошо, но я всё ещё не выяснил, сколько надо взимать с моих клиентов. Пришло время разобраться с этим.

Установление цены


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

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

Вот так это выглядело в коде:

image


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

Вскоре я получил следующую статистику:

image


Помните, что исходной валютой был не доллар США, поэтому колонка платежа за сервис выглядит не совсем ровно. В рублях все было красивее.

Этот сплит-тест выявил довольно интересные моменты:

  1. Цена один цент имеет наибольшее количество опубликованных постов.
  2. Цена два цента оказалась наиболее прибыльной.
  3. На данном этапе было бесполезно тестировать цены, превышающие два цента за пост.
  4. Люди, получившие цену два цента, пополняли свой баланс в два раза чаще. Это могло бы означать, что они были удовлетворены первой попыткой использования этого сервиса и сделали дополнительное пополнение.

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

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

Особенности программы, расширяющие возможности


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

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

image


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

Алгоритм, реализовывавший эти эффекты, был сравнительно простым. Это была просто функция с множеством аргументов и некоторая программа внутри, базирующаяся на ImageMagick.

image


Я добавил в таблицу статистики дополнительную колонку, показывающую, какие эффекты пользователи применяли и как часто они делали это. Эта функция набрала обороты довольно быстро.

image

Слева — пример статистики, а справа — динамика изменения

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

Расширение трафика


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

image


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

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

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

Все эти действия подняли поисковый трафик:

image


Кстати — основная часть этого трафика пришлась на одну статью о том, как сделать меню в группе Vk.com. Это привело к тому, что я сделал ещё один SaaS-сервис для создания меню, Menumake. Я описал процесс его создания в другой статье (переведенная версия здесь). Посмотрите её, там тоже есть довольно любопытные моменты.

В завершении, я ввёл партнёрскую программу. Это было довольно просто: пользователи имели свою уникальную ссылку, которую они использовали, чтобы пригласить других пользователей и получить 10% партнёрской платы на свои расходы. Вроде бы ничего особенного, но этот источник не только дал 15% всех регистраций, но и обеспечил для Postio несколько высококачественных обратных ссылок из различных источников. И это, несомненно, только на пользу рейтингу сайта в поисковых системах.

Потребовалось 14 месяцев, чтобы достичь ежемесячной прибыли 3 700 долларов (тогда это было ещё 7 000), и единственной крупной потерей было значительное снижение курса валюты, с которой работал этот сервис.

Как работать с API систем, который постоянно падают


Управление Postio никогда не было легкой прогулкой. Наверное, вы можете себе представить, что клиенты и слушать не хотят отмазки из разряда “Простите, что вы остались без постов — у нас соцсеть упала”. Таких случаев хочется иметь как можно меньше.

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

К примеру, главная функция публикации в Postio — та, которая раз в 15 минут пробегается по всем группам и находит те, которым нужны посты — за все время работы сервиса увеличилась раз в 20. Именно за счет необходимости обрабатывать невероятное количество сбоев и ошибок 4-х социальных сетей. Да, ее давно пора структурировать и написать отдельный модуль для работы с исключениями, но у меня не хватает на это времени.

Правило антихрупкости очень простое, весь его секрет кроется в двух скучных словах — методичность и систематичность. Конкурентам Постио (мир праху их) этого как раз и не хватало.

Заключение


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

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

Спасибо за прочтение!

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

Комментарии (100)


  1. mskvsk
    18.02.2017 14:28
    +28

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

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


    1. KurtRotzke
      18.02.2017 16:06

      Замечательная статья, спасибо за информацию. Мы с товарищем работаем над похожим сервисом, было очень интересно почитать о вашем опыты. Удачи!


      1. mskvsk
        18.02.2017 16:29

        Спасибо, удачи и вам! Если будут какие-то специфичные вопросы, буду рад помочь.


    1. JustRoo
      18.02.2017 16:40

      Я правильно понимаю, что для тебя поиск и эксплуатация таких маленьких бизнес-ниш является основным направлением деятельности? Или просто совпало?


      1. mskvsk
        18.02.2017 16:49

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


    1. webmascon
      20.02.2017 10:48

      я что то так и не понял чтотваш сервис делает?


      1. mskvsk
        20.02.2017 12:27

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


    1. rkosolapov
      21.02.2017 17:18

      Привет, статья гут, чувствуется бэкграунд вот в этих вот делах (SMM или как это называется правильно?)

      Насколько вообще опыт был важен конкретно в этом сервисе? Как ты думаешь, если бы ты был просто программистом, то у тебя получилось бы, или ты бы налажал, например, в ценообразовании? Или вообще не увидел бы нишу?

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


      1. mskvsk
        22.02.2017 01:45

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

        Практика творит чудеса :)


    1. homocomputeris
      21.02.2017 17:18

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

      Поправьте: функционал -> функциональность.


  1. barabanus
    18.02.2017 15:56
    +3

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


    1. mskvsk
      18.02.2017 16:05
      +1

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

      К примеру при модерации тематики «Бизнес и мотивация», после прохождения, скажем, сотни постов с отмеченным соотношением лайков к репостам, модераторы понимали, какая длина текста поста, картинка и содержание оптимальны для виральности в конкретной аудитории.

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

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


      1. barabanus
        18.02.2017 16:13

        А модераторы контента — это наемные работники?


        1. mskvsk
          18.02.2017 16:20
          +1

          Да. Но начинал я один.


  1. Dum_spiro_spero
    18.02.2017 16:05
    -10

    Прошу прощения и дико извиняюсь! А можно для чайника? Кто за что платит?
    У меня есть эккаунт в контакте уже много лет, мне никогда не приходило в голову за что-то платить.
    В статье много аббревиатур — SaaS, SMM… это вообще о чем? Хочется небольшой ликбез.


    1. mskvsk
      18.02.2017 16:22
      +4

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


      1. webmascon
        20.02.2017 10:48

        А зачем им создавать группы и платить за посты?


        1. Chamie
          20.02.2017 11:53

          Обычно, это те, кто извлекает какую-то прибыль из своих групп
          Ради прибыли и создают.


        1. mskvsk
          20.02.2017 12:28

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


    1. ProstoUser
      21.02.2017 17:20

      Если хочется небольшой ликбез — самое простое начать, например, отсюда.


  1. dmnBrest
    18.02.2017 16:06
    +30

    Так это получается что вы сделали бизнес на продаже ворованного контента? Или как вы позиционируете данный сервис?


    1. str1k3r
      18.02.2017 16:26

      это как обмен ссылками с друзьями, только вы еще платите за это деньги :)


    1. mskvsk
      18.02.2017 16:28
      +8

      Все верно, по сути это продажа ворованного контента. Но, как говорится, есть один нюанс: чтобы что-то своровать, надо чтобы у этого предмета был понятный владелец. А в 90% случаев контента соцсетей это не так. Создателя контента установить невероятно сложно, учитывая объем материала и путь, который он проходит в системах.

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


      1. lair
        19.02.2017 16:47

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

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


        1. mskvsk
          19.02.2017 16:53
          +1

          Вы идете по улице и видите кошелек. У него 100% есть владелец, но вы его не знаете. Возвращать не собираетесь. Вы своровали кошелек или нет?

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

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


          1. lair
            19.02.2017 16:58
            +1

            Возвращать не собираетесь. Вы своровали кошелек или нет?

            Присвоил. С точки зрения владельца кошелька лучше не стало.


            С контентом все еще туманнее, поскольку от того, что я продал бесплатный контент, автор вообще не страдает.

            Это ваше мнение, которое я, как автор контента, за размещение которого в сети я не получаю денег, не разделяю.


            1. mskvsk
              19.02.2017 17:10

              Присвоил. С точки зрения владельца кошелька лучше не стало.

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

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


              1. lair
                19.02.2017 17:34

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

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


                Как поступим с позиции копирайта — воровство ли это и, если да, то у кого?

                Как минимум у автора картинки, если тот явно не отдал ее в паблик домен.


                (Точнее, пользуясь терминологией выше — присвоение. Лучше, опять-таки, не стало.)


                Мы не обсуждаем тот факт, что автор картинки, возможно, тоже не был чист с точки зрения АП — это тема другого разговора.


                1. mskvsk
                  19.02.2017 18:20

                  А я же специально сказал: с точки зрения владельца лучше не стало. В данном случае «присвоение» — это не эвфемизм, а разделение некоторых не очень очевидных категорий (скорее юридических, чем моральных).

                  С юридической стороны те же граберы контента чисты как слеза младенца. Но при нападках на них все используют моральный угол («нехорошо способствовать воровству контента»). Из-за этой тасовки юридического/морального, и возникают дискуссии, кстати.

                  Мы не обсуждаем тот факт, что автор картинки, возможно, тоже не был чист с точки зрения АП — это тема другого разговора.

                  Тут тоже самое. При атаке мы используем моральную составляющую («надо спрашивать у автора»), но при контра-атаке («покажите, как найти реального автора, а не очередного копировщика»), включается режим «тема для отдельного разговора».

                  Надеюсь вы понимаете, что я сейчас не атакую вас. Я просто иллюстрирую сценарий подобных разговоров из серии конфликта «как должно быть / что делать в реальности». Примеров таких разговоров много:
                  — Коррупция — это плохо / Покажите, как победить коррупцию в России
                  — Женщин не должны насиловать / Покажите, как этого достичь не зажимая нормальных мужчин в правах

                  и т.д.


                  1. lair
                    19.02.2017 21:47

                    При атаке мы используем моральную составляющую («надо спрашивать у автора»), но при контра-атаке («покажите, как найти реального автора, а не очередного копировщика»), включается режим «тема для отдельного разговора».

                    Как-как. Идти последовательным поиском.


                    1. mskvsk
                      19.02.2017 22:04

                      Давайте конкретнее. Продемонстрируйте, пожалуйста, на примере поста выше.


                      1. lair
                        19.02.2017 22:11

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


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


                        1. mskvsk
                          19.02.2017 23:01

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

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

                          Спасибо за адекватный диалог на сложную тему.


                          1. lair
                            19.02.2017 23:03

                            … и тем не менее, как автор контента, который вот так вот становится "де-факто паблик-домейн", я расстроен подобным поведением. Это иллюстрация к вашему "автор не страдает".


                            1. mskvsk
                              19.02.2017 23:35

                              Я тоже расстроен, что система устроена именно так. Мои статьи не далее как вчера растащили по нескольким пабликам, не указав авторство нигде.

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


                              1. lair
                                20.02.2017 01:48

                                В этой экосистеме это норма, и у нас с вами два варианта — не работать с ней или принимать правила игры.

                                Ну вот видите. Вы выбираете второе, а я — первое.


                                1. pudovMaxim
                                  20.02.2017 11:06

                                  справедливости ради — именно поэтому mskvsk получает $3700 в месяц и не огребает от авторов, а Вы мы — нет :)


                                  1. lair
                                    20.02.2017 11:22

                                    Пользуясь это логикой можно много куда дойти.


                                    1. pudovMaxim
                                      20.02.2017 12:58

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

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


                                      1. lair
                                        20.02.2017 13:04
                                        -2

                                        Контент уже выкинут в помойку интернета без особых лицензий(и именно такой контент, на сколько я понимаю, используется).

                                        Спасибо вам за подобную оценку работы других людей, но нет.


          1. nikolayv81
            21.02.2017 17:27
            +1

            "Вы идете по улице и видите кошелек. У него 100% есть владелец, но вы его не знаете. Возвращать не собираетесь..."


            В случае если через недельку к вам придёт следователь с записью камер, вам останется только уповать на отзыв заявления владельцем.
            Хотелось бы чтобы в обществе таких людей не было, но как говорил Булгаков устами своего героя, люди за тысячи лет не менчются (
            С контентом немного другое, но есть правило оставлять ссылку на оригинал.


            1. mskvsk
              22.02.2017 01:43

              Запись камер покажет, что я нашел кошелек. Верну его владельцу. Состава преступления нет.

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


    1. jehy
      18.02.2017 22:19
      +11

      Больше всего схема потребления данного контента похожа на «человеческую многоножку» на несколько сотен групп человек.


      1. mskvsk
        18.02.2017 22:32
        +10

        Это настолько крутое сравнение, что я ставил бы его на логотип подобных сервисов.


  1. Terras
    18.02.2017 17:21

    А какие проекты ты делал до этого? Сейчас это твой основной источник дохода или есть «стандартная» работа?


    1. mskvsk
      18.02.2017 17:27

      До этого были еще ряд стартапов, ныне уже не работающие. У меня сейчас разный ворох проектов, как контентных, так и в e-commerce — это и есть мой источник дохода. Но сейчас весь этот набор стоит в низком приоритете, концентрируюсь на SaaS'ах.


      1. Terras
        19.02.2017 09:11

        А у вас все оформлено как ип или как ООО? Сотрудники в штате или фрилансеры по сдельной схеме?


        1. mskvsk
          19.02.2017 11:45

          Это ИП и сотрудники-фрилансеры.


  1. MartinKiuru
    18.02.2017 18:31

    Очень интересно, спасибо! Расскажите пожалуйста, в чем проблема с Facebook? Как понимать что он закрыл этот рынок?


    1. mskvsk
      18.02.2017 18:58

      Фейсбук гораздо более жестче, чем Вконтакте модерирует контент, который публикуется в группах. Плюс, еще у Фейсбука гораздо менее прозрачный механизм показа вашего контента вашей же аудитории — далеко не факт, что ваш пост увидят все ваши подписчики.

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


      1. lash05
        21.02.2017 17:28

        То есть рано или поздно ВК заберёт себе этот бизнес?


        1. mskvsk
          22.02.2017 01:36

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


  1. ElectroGuard
    19.02.2017 05:09

    Мне был бы интересен сервис рассылки своих же сообщений (дубликатов) по нескольким сетям — вк, ок, инстаграмм, фейсбук. Может кто знает подобный сервис или (лучше) такую программу. Возможно, кто-то в курсе, у клиентов этих сетей (имеется в виду клиентское ПО) существует какое-то API добавления постов? Я сам программист, мог бы сам что-то написать.


    1. Terras
      19.02.2017 09:11

      Видел на моем круге пару вакансий на питоне в подобные сервисы. Название уже не помню, но было именно то, что вы просили.


    1. mskvsk
      19.02.2017 11:46

      Пару лет назад Вконтакте устраивал облаву на сервисы-кросспостеры. Postio под это не попал, но многие подобные сервисы лишились прав на публикацию. Рисковое это дело.


    1. pudovMaxim
      19.02.2017 13:37

      buffer.com не оно?


      1. ElectroGuard
        20.02.2017 14:43

        спасибо, посмотрю


    1. elmigranto
      21.02.2017 17:28

      Buffer.com


  1. iNickname
    19.02.2017 09:34

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


  1. dmitry_dvm
    19.02.2017 10:07

    А бывает такое, что владелец группы видит в вашем сервисе пост взятый у него же из группы? Как-то отсортировываются баяны и т.п.?


    1. mskvsk
      19.02.2017 11:49

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


  1. passerby
    19.02.2017 10:33
    +1

    Заинтересовало, зашел на ваш сервис — не увидел расценок. Ушел.
    Кстати, второй раз уже, т.к. вспомнил, что заходил уже когда-то и ушел по той же причине.
    Если честно, никогда не понимал, как можно что-то продать, не указав (или далеко спрятав) стоимость.

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


    1. mskvsk
      19.02.2017 11:55
      +1

      Цена указана сразу при заходе в личный кабинет http://prnt.sc/eam4ta
      Еще она есть в настройках каждой группы, с учетом цены эффектов, которые заказал пользователь.
      Кстати, это двойка мне, как проектировщику интерфейсов, надо более явно указать, а не в куче текста.

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


      1. passerby
        19.02.2017 18:18
        +1

        Спасибо, теперь все более прозрачно.
        Вижу и на главной странице уже есть теперь.


      1. genew
        21.02.2017 17:29

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


        1. mskvsk
          22.02.2017 01:35

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


  1. Chris_Griffin
    19.02.2017 12:12

    @mskvsk, а чисто технические вопросы — где хостишь, как деплоишь? С какими проблемами сталкивался?


    1. mskvsk
      19.02.2017 12:21
      +1

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

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


      1. KurtRotzke
        19.02.2017 14:07
        +1

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

        НО!

        1. Поддержки нет никакой, от слова совсем, если не оплачивать $29 в месяц. Я нашёл баг (или фичу) — нужен root сертификат для использования Amazon Associate API. При этом сам Amazon предупреждает: не используйте, мол, создавайте сертификат для обычного юзера. У меня есть стационарный номер в США — звоню в поддержку. Оказалось что базовый план включает только вопросы оплаты, и им откровенно насрать на баги. Написал письмо — ответили, мол, знаем, страдайте пока, починим.

        2. Нужно быть очень аккуратным и внимательным (каюсь, невнимательный): одна невыставленная галочка, недочитанное предложение и всё, начисляются деньги. Ни предупрежедений что вылез из Free Tier, ничего. Ну это скорее для меня и мне подобных минус.

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


        1. mskvsk
          19.02.2017 16:16

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


          1. KurtRotzke
            19.02.2017 16:28

            Есть специальные инструменты — всё намного легче. Elastic Beanstalk предназначен как раз для деплоймента приложений, много чего делает автоматически. У нас на Python — удобно, хорошо.
            Опять же, это не реклама, личный опыт. Мы там недолго, пока «преальфа» так сказать, мало ли какие подводные камни обнаружатся. Было бы еще очень интересно попробовать Google Cloud, говорят что дешевле и качественнее, но AWS завлёк годом Free Tier, очень заманчивое предложение.


            1. mskvsk
              19.02.2017 16:57

              Присмотрюсь, спасибо.


            1. alterpub
              20.02.2017 00:43

              Дешевле — да, качественнее? серьезно? нет, 100%, мало того что есть опыт с гуглом, дак еще и сам посуди, сколько aws лет облаками занимается и гугл только-только пришел в эту сферу, если надо именно качество, то даже не суйся, тут aws конкурентов нет


              1. KurtRotzke
                20.02.2017 11:55

                Понял, прийму к сведению, спасибо!


      1. Miraage
        19.02.2017 16:28

        А DigitalOcean пользовались? Hetzner всё же лучше будет?


        1. pudovMaxim
          19.02.2017 16:32

          по своему скромнейшему опыту, Hetzner выходит дешевле.


        1. mskvsk
          19.02.2017 16:56

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


        1. Erelecano
          19.02.2017 18:29

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


          1. mskvsk
            19.02.2017 18:35

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


            1. Erelecano
              19.02.2017 19:29

              Эконом это kimsufi.com(лоу-энд бренд OVH), а Хецнер это дно-класс.


  1. 8bitjoey
    19.02.2017 21:18

    Вот эти ошибки, упомянутые в разделе «как работать с API систем, который постоянно падают», что это за ошибки, можно привести какие-то примеры? Ведь если сервис упал и постинг поста (пардон) не работает, как это обойти?


    1. mskvsk
      19.02.2017 23:08

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

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

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

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

      Таких моментов очень много, все это и обеспечивает системе стабильность.


  1. unStaiL
    19.02.2017 22:43

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


    1. mskvsk
      19.02.2017 23:12

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


  1. Carburn
    20.02.2017 01:27

    Такое приложение можно было создать на любом стеке и на LAMP можно написать любое приложение.


    1. mskvsk
      20.02.2017 01:32

      Точно. Просто решил сделать акцент на своей мейнстримности и непрофессиональности, что-то типа «делайте как я, делайте лучше меня.»


  1. GarudaJI
    21.02.2017 17:32

    Красавчег! Спасибо за прямоту и открытость, такие статьи очень важны для стартаперов — вдохновляет на свершения :)


    1. mskvsk
      22.02.2017 01:33

      Спасибо, такие отзывы мотивируют писать чаще!


  1. dronab
    21.02.2017 17:32

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


    1. mskvsk
      22.02.2017 01:32

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


      1. dronab
        22.02.2017 07:58
        -1

        Я поэтому сказал про достаточное качество по относительно небольшой цене.


  1. nikolau
    21.02.2017 17:32

    Являюсь автором аналогичного сервиса Робопостинг и прошел, практически, те же шаги. Даже мысли похожие.


  1. CyberChipmunk
    21.02.2017 17:32

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


    1. mskvsk
      22.02.2017 01:30

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


  1. sciper
    21.02.2017 17:33

    Русский парень пишет статью про русский сервис на английском языке и размещает на зарубежном сайте.
    Другой русский парень переводит статью обратно на русский и размещает на ГК.
    Впервые такое вижу :)


    1. mskvsk
      22.02.2017 01:29

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


  1. george_spb
    21.02.2017 17:33

    Есть ли ограничения «снизу»? Минимальное количество постов в сутки и т.п.?


    1. mskvsk
      22.02.2017 01:28

      Нет, допустимо любое.


      1. george_spb
        22.02.2017 08:10

        Поюзал. Неплохо. Еще пару вопросов:
        — при подключении вы получаете доступ ко всем группам где я админ? Это техническое условие, обязательное?
        — я выбрал «раз в сутки» и поставил паузу с 00.00 до 10.00, в какое время будет выходить пост?


        1. mskvsk
          22.02.2017 12:02

          Да, доступ выдается сразу ко всем группам вашего аккаунта. Так устроено API Вконтакте.

          Пост выйдет в 10:15.