THERAMPAGE
THERAMPAGE
THERAMPAGE
Switch to the English version
Main   |   Blog   |   EngRead   |   Dragon: The Eater   |   Rampage CMS
История «RAMPAGE CMS»
RAMPAGE CMS — это программное обеспечение для создания сайтов и управления их контентом. Работы над программой начались еще в 2005 году. Затем система многократно менялась и дорабатывалась под нужды веб-студий и задачи заказчиков. К 2009 году несколько десятков сайтов были созданы и работали под ее управлением. Тем не менее стало понятно, что программа требует серьезного рефакторинга, перехода на новые средства разработки и поддержку современных веб-технологий. В 2010 была предпринята попытка переписать систему, но работа оказалась невостребованной и была остановлена. Программа была заброшена на долгие двенадцать лет..
 
В 2022 году в глубине жесткого диска был найден архив. В архиве отсутствовал дамп базы данных, но его структуру удалось воссоздать и запустить систему. Это было одновременно похоже на путешествие в прошлое и на археологические раскопки. Тут и там накатывали флешбеки вперемешку с кривой ухмылкой об уровне собственных интеллектуальных способностей дюжину лет назад. Но одно чувство было острее других - желание восстановить, возродить программу, дать ей вторую жизнь. Было принято решение быстренько тут все подчистить, подделать и выложить на свет божий, как музейный экспонат. Но быстренько, как обычно и бывает, не получилось... 
 
Первое что бросилось в глаза, это разрозненность архитектуры. Программа начала разрабатываться в 2005 еще на PHP 4, затем был выполнен переход на PHP 5.0, 5.1, 5.2 и 5.3. Разные части системы были из разных эпох. Библиотеки ссылались на репозитории которых больше нет. А поддержка IE 6 была краеугольным камнем пользовательского интерфейса. Так релизить код в 2022 году было просто нельзя, даже в качестве музейного экспоната...
 
Весь 2022 год шли работы по приведению системы к более-менее однородному состоянию. В докере было создано теплое ламповое окружение. Все библиотеки обновлены до последних версий десятилетней давности. Поддержка интернет эксплорера была выпилена, а поддержка вебкита допилена. Но самое главное, вся программная архитектура, все модули и компоненты, классы и библиотеки, все были насажены на единый, относительно жесткий, архитектурный стержень...
 
Конечно в процессе работы приходилось идти на многочисленные компромиссы. Например, для экономии времени, не все функции старой системы были перенесены в новую. Современные браузеры потребовали внесения изменений в пользовательский интерфейс. Некоторые компоненты системы, например подсистему модулей, было решено полностью переписать. А из-за желания использовать как можно больше старого кода пришлось пожертвовать архитектурными принципами. Но в конечном счете дело было сделано...
 
В итоге, через 18 лет, система управления сайтами получила свой первый публичный релиз. Как к ней теперь относиться — сказать сложно. Уже нельзя назвать ее музейным экспонатом, так как это вполне живая, рабочая программа, да к тому же серьезно переписанная. На ней вполне можно делать сайты, другое дело — зачем. Нет особого смысла и в том, чтобы использовать ее для обучения. Но разве это повод лишать программу возможности быть опубликованной? Разве лучше, если бы когда-то написанный программный код так и остался лежать где-то в глубине жесткого диска? Пусть теперь лежит в интернете, единственная и неповторимая, среди сотен других ей подобных.