ru_dailywtf ([info]ru_dailywtf) wrote,

Порабощенные Инструментом (Used by The Tool)

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

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

Они использовали ASP.NET для своих сайтов? Нет.

JSP? Нет.

Сервлеты? Нет.

PHP? Нет.

...Perl? Нет.

Они изобрели свою собственную платформу под названием Инструмент (The Tool). Это веб-ориентированная среда разработки в виде веб-приложения, которая хранит содержимое, бизнес-логику и остальную информацию о приложении в базе данных. Во всяком случае это все, что я слышал. У нас был всего один клиент, которому было нужно «веб-приложение» и все такое, так что Инструмент использовался только для создания простого сайта на котором ничего не было кроме контента. И в этом-то и заключалась моя работа – создании и поддержке при помощи Инструмента простого сайта на, котором не было ничего кроме контента.

Я полагаю, что единственное удобство использования Инструмента заключалось в том, что не требовалось знание HTML, Инструмент вобщем-то даже и не давал возможности использовать HTML при разработке страницы. Вместо этого текстовое содержимое должно было отображаться при помощи меток (Label). Метки должны были помещаться в Контейнеры (Containers), которые могли содержать Контейнеры, Изображения и Гиперссылки. Довольно логично выглядит, я полагаю.

Однако с метками была одна проблема, они не поддерживали переносы строки, и как следствие этого ограничения HTML тэги BR. Прибавьте к этому тот факт, что Метки вмещают только 128 символов. В итоге для того, чтобы создать блок текста, вы должны разбить его строка за строкой и поместить строки в отдельные парные Метки, поместить каждую пару меток в Контейнер, который хранится в другом Контейнере. Все это при помощи медленного, корявого, нестабильного, самодельного веб-интерфейса.

Снимок экрана с Инструмента.

Заметьте, что на этом снимке Инструмента показаны только те элементы управления, которые требуются всего для четырех строк текста.

Если из снимка не совсем понятно, Инструмент это не WYSIWYG-редактор. И в нем нет функции предпросмотра. Чтобы просмотреть страницу, надо было сбросить таблицу с кэшированными страницами и перезапустить рабочий процесс веб-сервера. А так как Инструмент работал только на стороне сервера, сброс кэша нужно было производить по расписанию несколько раз в день.

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

К счастью в понедельник я устроился на новую работу. И в этот раз я сначала выяснил какую технологию они использовали.


Оригинал:http://worsethanfailure.com/Articles/Used_by_The_Tool.aspx

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    Your IP address will be recorded 

  • 0 comments
Create an Account
Forgot your login or password?
Facebook Twitter More login options
English • Español • Deutsch • Русский…