Очередной раз получил письмо с негодованием по поводу документацией в платформе. Начал было отвечать на него, но ввиду регулярности таких писем и размером ответа, отвечу записью в блоге.
Сразу скажу, что с негодованием по поводу документацией в платформе, ее устарелыми инструкциями по установке, и прочим, жизненно необходимым текстом — согласен. Проблема была, есть и возможно сохраниться еще неопределенное время. Да чего уж говорить, если уж официальные дистрибутивы на сайте 2013 года до сих пор...
Причина проста — для меня процесс разработки настолько увлекательный, что на документацию попросту не остается времени.
Хотя неоднократные попытки привести все в порядок периодически возникают.
Например, в версии ядра 0.6.0 я заложил процесс автодокументирования клиента и сервера, вплоть до документирования шаблонов. И эту версию даже можно пощупать.
Но, найдется ли время заняться наполнением документации после официального выхода 0.5.7, 0.6.0 и т.п. — под вопросом.
С другой стороны, очень мощные технологии разработаны в той же 0.5.7. Взять хотя бы систему моделей, на основе которых я сейчас любой модуль, любой сложности, собираю настолько быстро, что до сих пор сам иногда удивляюсь )
Или например разработка через тестирование, реализованная в версии ядра 0.6.0 и разработанные для этого очень полезные, сопутствующие инструменты.
И все эти технологии и их возможности понятны очень узкому кругу программистов, которые возможно имеют определенные неудобства в отсутствии внятной документации. А возможно и не имеют. Например я документацию к сторонним либам практически не читаю. Толи не доверяю, толи привычка, но мне всегда проще сразу посмотреть в исходник, чтобы понять что к чему… Ну а закрытые либы я просто не использую, а если уж очень нужно, пишу сам.
Влияет ли такое положение дел на репутацию самой платформы? — Конечно влияет!
С внятной документацией сообщество платформы, ее последователей, было бы во много крат больше!
Но, лично для меня, до определенного момента времени — эта популярность очень сильно мешала. В свое время приходилось больше времени уделять ответам на вопросы, менять приоритеты в направлениях и т.д. и т.п. А когда ты каждый раз видишь, что в ядре еще много чего запланированного нужно сделать, а ты занимаешься не тем и твои планы по реализации намеченного пути все больше и больше растворяются, по неволе начинаешь «уходить в затворничество». Что и произошло в 2013 году...
Для каждого и всего свое время.
Зато сейчас, я смотрю на ядро 0.5.7 и в целом доволен им. Практически все запланированные технологии реализованы. Появились и новые, как следствие запланированных.
Необходимость в корне что-то переделывать в ядре не вижу. Конечно, осталось очень много сопутствующих задач по шлифовке, корректировке некоторых частей кода, но они не являются глобальными и будут решаться по мере дохода сил и острой необходимости.
Так же прошедший вчера возврат ядра в ветку мастер — говорит только об одном, что сейчас активно начался процесс перевода оставшихся модулей под 0.5.7 с последующим официальным выходом ядра и модулей и их дистрибутивами для конечных пользователей.
В общем и в целом, как развивается платформа — я доволен.
Но, вернусь к тому, с чего начался этот пост — к документации.
Как выйти из сложившейся ситуации и решить этот вопрос?
Пока у меня надежда на то, что в сообществе однажды появится разработчик, который методично, шаг за шагом начнет устранять эти проблемы и будет наполнять платформу понятными инструкциями и прочими нужными текстами. Я же со своей стороны готов всячески содействовать этому.
Ну а если надежда так и не оправдается, все же постараюсь сам добраться до решения этих вопросов...
Ну или другие варианты. Предлагайте — рассмотрим, подумаем, решим...