Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
«Сколько стоит сделать копию Facebook (Avito, Яндекс.Такси, fl.ru...)?» — один из самых популярных вопросов клиентов, на который мы сегодня дадим развернутый ответ и расскажем, как это выглядит со стороны людей, которым предстоит это делать.
«Черный ящик»
Когда нам дают задачу скопировать какой-то сервис, то для нас он представляет собой некий «черный ящик». Абсолютно неважно, что это за программа: сайт, мобильное приложение или драйвер. В любом случае, мы сможем увидеть, как он выглядит снаружи, но у нас нет доступа к тому, что находится внутри.
Это примерно, как если бы нам показали автомобиль и попросили сделать точную копию, но не дали возможности заглянуть под капот: мы можем ограничиться лишь внешним осмотром и посидеть за рулем. А залезть в багажник — уже нельзя!
Соответственно, мы будем вынуждены решать следующие задачи:
Предположить и придумать — а как же внутри устроен этот «автомобиль», у которого мы видим только кузов?
Представить, из каких деталей он состоит. Для понимания: любой современный автомобиль — это примерно 18 000 деталей…
Прикинуть, какие специалисты нужны для создания этих 18 000 деталей и сколько времени займет создание каждой.
В разработке программного обеспечения — похожий процесс: систему, которую мы создаем, нужно разбить на кучу мелких составляющих. Придумать, как и кем их создать, и как они будут взаимодействовать друг с другом. Именно поэтому «просто скопировать» — непростая и объемная задача.
«Верхушка айсберга»
Avito, Facebook, Яндекс.Такси… Если бы клиент знал изнутри бизнес, на который ссылается, то он бы обнаружил, что в нем трудятся десятки, а то и сотни программистов, которые создавали сервис в течение нескольких лет.
Оплачены тысячи часов специалистов, которые ушли на производство продукта.
Считая, “сколько стоит скопировать Facebook” мы увидим все результаты их труда. И, когда мы сделаем список этих результатов, клиент всегда обнаруживает, что видел, от силы, 10% “Facebook”.
Остальные 90% ему становятся видны лишь после того, как мы проделали довольно большую работу. Вы ведь не видите двигатель, рулевые рейки, топливопровод, когда садитесь за руль автомобиля?
Что будет потом?
Клиент понимает, что 90% возможностей сервиса ему вообще не нужны. Это трудозатраты, которые не дадут ему никакой пользы. Тысячи человеко-часов, потраченные на возможности, которые ему никогда не пригодятся. Дорогие и бесполезные.
«Скопируйте дочку соседа, да подешевле!»
Почему вообще клиент приходит с таким запросом? Ему кажется, что раз эта работа уже проделана, то нет ничего проще, чем взять и скопировать. Экономит кучу денег!
Но есть небольшая проблема — мы ничего не можем взять из Facebook, потому что:
- У нас (и ни у одного другого подрядчика) нет доступа к исходному коду. Да даже если бы и был — он собственность другой компании.
- У нас нет исходников дизайна, то есть дизайн тоже нужно будет пересоздавать.
- У нас нет знаний об архитектуре продукта. Мы можем только предположить, как он устроен внутри. Даже если прочтем кучу статей на хабре — там будет лишь приблизительное описание.
Увы, запрос “сделайте как у соседа” — не делает работу дешевле :(
«Дайте мне кочергу!»
Программный продукт — не самоцель: с его помощью клиент хочет решить свою бизнес-задачу. Например, заработать или сэкономить денег, захватить аудиторию, создать удобный инструмент для сотрудников.
Только вот парадокс: клиент не приходит к нам с вопросом о бизнес-задаче. Он приходит с вопросом о техническом решении. То есть, с запросом типа «мне нужна кочерга». А для чего она ему? Может, он собирается дрова колоть, а там топор нужен?
Клиент не является специалистом по решениям (обычно он решает такую задачу первый раз в жизни), но, увидев кочергу, ему кажется, что ВОТ ОНА, волшебная палочка!
Но, когда мы зададим вопрос «а какую бизнес-задачу вы решаете?» и подумаем, какое решение было бы действительно оптимальным, окажется, что оно не имеет вообще никакого отношения ни к Facebook, ни к кочерге. Ну, вот вообще ничего общего.
Резюме
По всему выходит, что запрос «сколько стоит копия…?» — бессмысленный. Для того, чтобы ответить на него буквально, нужно проделать колоссальную работу, которая никак не пригодится ни нам, ни клиенту. Почему так уверены? Да мы делали эту работу, много раз =)
Что же делать? Имеем мнение — писать техническое задание.
Любой нормальный читатель на этом месте подумал “вы говорите это потому, что хотите нам продать!!!”
И да, и нет. Попробуйте найти хорошего строителя, который начнет строительство дома без проектно-сметной документации. Или автомеханика, создающего автомобиль без чертежей. Или опытного предпринимателя, создающего новый бизнес без финмодели.
Даже если мы делаем программу для себя — мы начнем с техзадания. Нам так же, как и вам, не хочется тратить на это “лишние” деньги. Но мы знаем, что без этого не обойтись. Иначе небоскреб — завалится, бизнес будет больше забирать, чем приносить, а с автомобилем — неизвестно, кто на ком будет ездить.
У данной статьи лишь одна цель: избежать бесполезной работы, и делать полезную работу для вас. Поговорим, зачем вам “кочерга”?