Мои ошибки при разработке

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

Примечание: речь идет о разработке проекта на энтузиазме.

В 2010 году я начал вести своей проект, занимался разработкой модификации для игры S.T.A.L.K.E.R Shadow of Chernobyl. Было очень интересно, волнительно и увлекательно. Но саму первую ошибку я совершил чуток раньше, когда на сайте playground я рассылал сообщения о приглашении в команду пользователям увлекающимся модами на данную игру. В итоге набрал НЕКОМПЕТЕНТНЫХ людей в команду в возрасте от 12 до 16 (примерно) лет. Но я сам был новичок и мне было 18. Их работу мне так и не удалось организовать. Все было не слажено, никто не хотел работать все хотели … тестировать и играть. В итоге на момент начала разработки в 2010 году основная часть команды была распущена и я оставил лишь некоторых, кто хоть что-то делал. Однако в этом же году в команде осталось только двое человек, включая меня. Но первый выпуск мода все-таки состоялся.

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

Отсутствие прототипирования, серьезная ошибка при разработке, однако все должно зависеть от проекта.

Но так как это были просто пробы возможностей, и все бы они прошли более-менее успешно если бы:

  • составил грамотно документацию где сформировал бы свои мысли и четко изложил их в документе
  • при разработке следовал изложенному в документации

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

Также есть не менее жестокая ошибка — отсутствие сроков, и уж тем более реальных сроков. Что ведет к выгоранию энтузиазма, разработка становится в тягость, удовольствия вообще нет. Хоть и есть желание продолжать, но интерес гаснет неукоснительно.

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

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

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

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

Команда должна использовать средства командной разработки, и никак иначе! Только в конце 2016 года по настоянию Евгения мы начали использовать git репозиторий для совместной разработки движка и языка. В этом же году начали использовать redmine для планирования. Но нормализовать это планирование не удалось, отголоски предыдущего опыта неправильного планирования. Собираемся как можно скорее исправить это, здесь конечно по большей части моя вина, если не сказать что вся))

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

Отдых важен, возможно после разумного отдыха разработка пойдет намного лучше!

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

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

Работа над выше написанными ошибками позволила нам вывести наш движок SkyXEngine в open source, а сейчас на подходе скриптовый язык, который имеет более позитивную ауру))

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

Честно сказать мне до сих пор приходится спускаться с небес по лестнице, и конца этой лестнице пока не видно))

Поделиться:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

*

code