История Lazarus в лицах

Разработка Lazarus уходит своими корнями в проект Megido. Некоторые сведения о Megido можно почерпнуть из Google Groups и других списков рассылки. Это была первая попытка сделать opensource-клон Delphi, которая опиралась на исходный код Sybil (который был клоном Delphi для OS/2, несмотря на ограниченный дизайнер форм). Megido стартовал в 1998 году, но умер где-то в 1999-ом, из-за отсутствия внимания, и отсутствие заинтересованности в основанном на Sybil клоне, наследующем ограничения Sybil.

В результате, три человека (Клифф Бэйсеман/Cliff Baeseman, Шейн Миллер/Shane Miller и Майкл Хесс/Michael A. Hess) начали работу над проектом Lazarus в феврале 1999 года. Каждый из них ранее пытался участвовать в проекте Megido, когда тот ещё был жив. Однако, разочаровавшись в Megido, они начали собственный проект — Lazarus.

Следующим участником команды Lazarus стал Марк Вэстинк (Marc Weustink). Он примкнул к проекту в августе 1999 года. Марк смотрел на Linux Delphi (в то время Borland ещё не разработал Kylix). Он также интересовался Linux в целом, и именно ради этого присоединился к команде Lazarus. К моменту присоединения Марка Lazarus представлял собой всего лишь пустую панель инструментов и некоторые пункты меню на голом GTK. Редактор только обсуждался. Сейчас Марк по-прежнему является активным разработчиком, внося свой вклад в интерфейс отладчика.

Через год после Марка, в сентябре 2000 года, к команде присоединился Маттиас Гаэртнер (Mattias Gaertner). С помощью Маттиаса команде Lazarus удалось значительно продвинуться вперёд. Маттиас портировал Synedit, написал значительную часть codetools и дизайнера форм. С этими дополнениями Lazarus стал выглядеть привлекательнее. Спустя три года Маттиас добавил систему пакетов и продолжил работу над новыми функциями IDE и совершенствованием уже написанных.

Миха Нелиссен (Micha Nelissen) начал вносить свой вклад в проект в июне 2003 года, в основном отправляя патчи для интерфейса win32. Он использовал Borland C++ Builder, но хотел также портировать код на другие платформы. Поскольку Borland добавить в VCL свои собственные расширения языка C++, вероятность когда-либо портировать BCB-код на другие платформы была невелика. Смена языка разработки не была для Михи проблемой из-за схожести окружения. В то время Lazarus был основан на GTK для win32 и Linux. На Linux он работал очень хорошо, но в win32 это были сплошные баги. К тому же пользователи Lazarus всё чаще просили родной win32-интерфейс, и Миха впрягся в проект, чтобы помочь с реализацией win32-интерфейса.

Винсент Снейдерс (Vincent Snijders) получил ссылку на Lazarus и FPC летом 1999 года, когда впервые попробовал Linux на своём компьютере, и столкнулся с необходимостью использовать ПО для математического моделирования, написанное на Delphi. Он включился в проект и убедился, что Lazarus запускается на Windows. После окончания университета в 2003 году он стал больше времени уделять Lazarus и начал отправлять свои патчи для проекта. Его основной целью было получить Lazarus для Windows, работающий так же хорошо, как Lazarus для Linux, а также сборки Lazarus.

Фелипе Монтейро де Карвалью (Felipe Monteiro de Carvalho) стал посматривать на Lazarus в 2005 году, когда была в ходу версия 0.9.6. Фелипе надеялся использовать Lazarus в качестве замены для Delphi, особенно на Linux. Он столкнулся с рядом проблем, когда впервые попытался использовать Lazarus, но так как он увидел огромный потенциал проекта, он решил продолжать работу с ним. Он считает, что его цель — создание полностью функциональный кросс-платформенной альтернативы Delphi для своих проектов — уже достигнута. Изначально Фелипе только отправлял отчёты по обнаруженным в Lazarus ошибкам и занимался документацией, однако позже он стал и сам писать код Lazarus. На протяжении многих лет он закладывал фундамент многочисленным интерфейсов, включая Qt 4, WinCE, fpGUI и Cocoa. Он добавил компонент TTrayIcon, биндинги PasCocoa и интерфейс Windows CE. Также он пишет статьи для Toolbox Magazine и является автором нескольких глав книги «Lazarus — The Complete Guide».

Павел Ишенин узнал о Lazarus во время работы с FastCube 1.0, в январе 2007 года. Он решил портировать FastCube для FPC и Lazarus, и сделал свой первый порт. Процесс был довольно простым, но кое-что не получилось — в частности, курсор drag/drop. На том этапе реализации Lazarus поддержка работы с курсорами была далеко не полной. Павел начал экспериментировать с поддержкой курсоров, по крайней мере, для платформы Windows. Он использовал IRC-канал для обсуждения совместно с разработчиками Lazarus, и начал отправлять патчи Марку Вэстинку. К удивлению Павла, Марк не принял первый патч целиком, поскольку Павел не уделил должного внимания разделению кода между LCL и widgetset’ами. После того, как Павел реализовал поддержку курсоров для GTK, GTK2 и Carbon, а также сделал несколько патчей, ему предоставили право на запись изменений в svn. Позже Павел участвовал в развитии виджетсетов для GTK2, Qt и win32, а также в работе над IDE. Его основная цель — очистить от ошибок win32-часть LCL.

Желян Рикало (Zeljan Rikalo) начал вносить свой вклад в виджетсет Qt в 2007 году, отправив патчи Фелипе. Летом 2007 года он получил доступ на запись в svn. В настоящее время он работает над Qt, GTK2 и LCL.

Мартин Фрибе (Martin Friebe) начал свой вклад в Lazarus с очистки и рефакторинга кода SynEdit код. С тех пор он добавил много новых функций, таких как syncro edit. Позже он добавил многооконный интерфейс редактора исходного кода и значительно улучшил отладчик.

Юха Маннинен (Juha Manninen) присоединился к команде в 2009 году, начав с исправления ошибок, а затем стал руководить работой над конвертером из Delphi. После значительного улучшения в работе конвертера Юха занялся другими вопросами, в частности — исправлением ошибок и улучшениями в IDE.

1 комментарий

  1. От frost_asm

    Ответить

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

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