Pull to refresh

Почему Delphi «умирает» или «программист – не читатель, программист – писатель»

Reading time4 min
Views49K
Здравствуйте, уважаемые хабражители! С наступившим Новым годом! Желаю вам удачного кодинга, безбажного кода, понимающих руководителей, понятливых подчиненных и терпения при разборе кода, написанного предшественником.

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

В эпоху, когда родился Delphi, персональный компьютер начинал внедряться везде, где только могла привидеться выгода от его внедрения. Но одного компьютера не достаточно для извлечения выгоды. Есть еще пользователь оператор, который работает как посредник между бизнес-данными и информационной системой, и собственно сама информационная система — программы которые хранят, обрабатывают и выдают эти самые данные.

Значит, чтобы получить как можно больше профита, требуется уменьшить затраты на
  • железную составляющую
  • софтовую составляющую
  • обучение операторов
  • разработку информационной системы

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

Объектный Delphi, выросший из процедурного Pascal-я, имеет очень низкий порог вхождения, обеспечивает минимальную зависимость от сторонних библиотек и предоставляет доступ к данным, хранящихся в различных СУБД.

Если при проектировании системы взаимосвязь между железом и Delphi слабо прослеживается, то следующие три условия профита связаны с Delphi очень сильно.

Софтовая составляющая, иными словами операционная система. Delphi позволяет писать программы, работающие в MS Windows, которая набирала популярность бешеными темпами — поставить пиратскую Windows не проблема. Как оно там… J3QQ4…

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

Разработка информационной системы Низкий порог вхождения действительно за полгода позволял студенту или группе студентов написать ИС, соответствующую скромным требованиям заказчика.

Именно низкий порог вхождения и сыграл роковую роль в судьбе Delphi. Мой вольный краткий пересказ того, как же это все произошло.
  1. Delphi становился все популярнее, внедряется поддержка новых СУБД
  2. количество проектов реализованных с помощью Delphi становится все больше
  3. количество Delphi-программистов увеличивается
  4. начинается глобальный (не только в СССР-России, но и в США) кризис обучения технических кадров
  5. требования к информационным системам усложняются в соответствии с развитием технологии
  6. разработчики Delphi ошибаются в направлении развитии технологии (dotnet был еще не актуален)
  7. заказчики не могут отличить хорошего Delphi-программиста от плохого — отсутствуют центры сертификации
  8. количество проектов, написанных недопрограммистами увеличивается
  9. увеличивается число проектов, требующих поддержку (изменения в коде/логике)
  10. заказчики все чаще и чаще слышат, что «проще переписать, чем исправить/доделать»
  11. причем это говорят как плохие программисты, не разобравшиеся в коде
  12. так хорошие, у которых волосы шевелятся от увиденного быдлокода
  13. разработчики Delphi не успевают за новыми технологиями, хотя это не критично, но...
  14. все больше и больше народу/заказчиков/руководителей начинают думать что «Delphi — это плохо»
  15. конкуренты Delphi не спят, а выкатывают все больше и больше «вкусных» тортов технологии
  16. хорошему программисту без разницы на чем писать, они «уходят» на другой язык, хороших Delphi-программистов становится все меньше и меньше
  17. Delphi застывает в развитии, приносит убытки, хозяева меняются один за другим
  18. появляются слухи о кончине закрытии разработки языка
  19. заказчики для новых проектов стараются выбрать другой язык, ибо надоело переписывать с нуля одно и тоже, без надежды что это все будет работать в будущем, и что у кода проекта будет поддержка
  20. ВУЗы прогибаются под рынок, Delphi начинают исключать из программ обучения студентов
  21. Delphi все реже упоминается в технических кругах, многие считают обзывают его «умершим»

Таким образом, основные причины временного заката Delphi:
  • низкий порог вхождения
  • отсутствие сертификационных центров
  • ошибки менеджмента
  • отсутствие «рекламы» в СМИ, вернее присутствие антирекламы
  • отсутствие поддержки крупных вендоров, в отличии от конкурентов

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

Если эти причины в совокупности проявляются у другого языка/технологии, то можно говорить о том, что у него так же есть/будут проблемы. Возьмем к примеру Silverlight. У него тоже низкий порог вхождения, но зато по остальным пунктам у них все тип-топ. Надеюсь никто не будет спорить, что MS это не крупный вендор или вендор не поддерживающий свое детище всеми мыслимыми и немыслимыми способами.

Конечно для Delphi все не так плохо. Сейчас у языка есть адекватный хозяин, язык не шатко, не валко развивается. Но вот доверие заказчиков/руководителей вернуть тяжело. Правде те, кто все же остался верен языку, более осторожны. Например, при наборе в команду более тщательно пытаются выявить уровень подготовки, не гонятся за новыми релизами языка. Delphi 7.0 многих устраивает (как и Windows XP :) Говорят, Гислер с Total Commander-ом до сих пор на второй версии сидит.

Для примера, попробую описать текущее состояние дел в моем городе. Небольшая кучка контор, которые знают о друг-друге если не всё, то давно. Все, без исключения, кормятся из бездонной государственной казны — тендеров для создания электронного правительства проводится множество. В рамках этого, проекты разрабатываются в основном на C# и Java. Зоопарк СУБД прилагается: IBM DB2, MS SQL, Oracle, FireBird. В команде: один-два гуру-работяги, 3-4 студента или свежеиспеченных выпускников, два-три мертвого груза. При чем это не всегда разные люди. Команда это от 2 до 10 человек на 2-4 проектах. В среднем из пяти проектов: один — новый, два — доработка старого, два непонятное что-то с чем-то, как правило делопроизводство (SAP, DocsVision) или пуско-наладочно-железячные работы.

Так вот, почти всегда новый проект пишется либо на C#, либо на Java. Доработка старого — это почти всегда мелкая доделка/переделка/ремонт написанного на Delphi.

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

Имхо, не может такой замечательный язык просто так пропасть. Обязательно найдутся энтузиасты своего дела. Столько замечательных программ написано на нем. Хочется верить, что еще больше будет написано.

Я же в свою очередь, призываю фанатов Delphi не сидеть сложа руки, а пробовать популяризовывать его в своих кругах. Поможем немного менеджерам Embarcadero исправить их ошибки и поддержим наш любимый язык.
Tags:
Hubs:
+24
Comments296

Articles

Change theme settings