Крис Таунсенд
Крис Таунсенд (англ. Chris Townsend; род. 21 января 1968, Чикаго, штат Иллинойс, США) — американский программист, предприниматель и один из ключевых разработчиков операционной системы Linux. Наиболее известен как создатель и ведущий разработчик файлового менеджера Midnight Commander, а также как участник ранних этапов развития ядра Linux и ряда других системных утилит. Внёс значительный вклад в становление свободного программного обеспечения (СПО) и популяризацию Unix-подобных систем.
Биография
Крис Таунсенд родился 21 января 1968 года в Чикаго, штат Иллинойс. О ранних годах жизни известно мало. Интерес к программированию проявил в подростковом возрасте, изучая языки ассемблера и Си на компьютерах с процессорами Intel 8086. В конце 1980-х годов поступил в Университет штата Иллинойс в Урбане-Шампейне, где изучал компьютерные науки. В университете познакомился с операционной системой Unix, что определило его дальнейшую карьеру.
В начале 1990-х годов Таунсенд переехал в Калифорнию и начал работать в компании Sun Microsystems, где занимался разработкой системных утилит и драйверов для Solaris. Однако его главный интерес лежал в области свободного программного обеспечения. В 1991 году, после выхода первой версии ядра Linux, созданной Линусом Торвальдсом, Таунсенд стал одним из первых энтузиастов, начавших портировать Unix-программы на новую платформу.
В 1994 году Таунсенд основал проект Midnight Commander, который стал его самой известной работой. В 1995 году он покинул Sun Microsystems, чтобы сосредоточиться на разработке свободного ПО. В последующие годы он работал в нескольких технологических компаниях, включая Red Hat, где занимался поддержкой пакетов и разработкой инструментов для управления системами. В 2000-х годах Таунсенд отошёл от активной разработки, сосредоточившись на консалтинге и обучении. В настоящее время проживает в Остине, штат Техас, и продолжает поддерживать Midnight Commander на общественных началах.
Вклад в разработку Linux
Midnight Commander
Midnight Commander (MC) — консольный файловый менеджер с двухпанельным интерфейсом, вдохновлённый Norton Commander для MS-DOS. Таунсенд начал разработку MC в 1994 году, когда осознал отсутствие удобного инструмента для навигации по файловой системе в текстовом режиме Linux. Первая версия была выпущена в 1995 году под лицензией GNU General Public License (GPL). MC быстро стал стандартной утилитой в большинстве дистрибутивов Linux, включая Red Hat, Debian и Slackware.
Основные особенности Midnight Commander, разработанные Таунсендом:
- Двухпанельный интерфейс для копирования, перемещения и удаления файлов.
- Встроенный просмотрщик и редактор файлов (mcedit).
- Поддержка виртуальной файловой системы (FTP, tar, rpm).
- Возможность работы через SSH (с использованием FISH-протокола).
- Скрипты на языке Lua для расширения функциональности.
Таунсенд оставался ведущим разработчиком MC до 2000 года, после чего передал проект сообществу. Тем не менее, он продолжает вносить патчи и исправления, а также участвует в обсуждении новых версий. По состоянию на 2024 год MC остаётся одним из самых популярных консольных файловых менеджеров в Unix-подобных системах.
Участие в разработке ядра Linux
В 1992–1995 годах Таунсенд активно участвовал в разработке ядра Linux, внося патчи в подсистему файловых систем и драйверы для контроллеров SCSI. Он был одним из первых, кто портировал файловую систему ext2 на Linux, что стало важным шагом к созданию стабильной файловой системы для ядра. В 1994 году он написал драйвер для контроллера Adaptec AHA-1542, который использовался в ранних серверах на базе Linux. Его вклад был отмечен Линусом Торвальдсом в списке благодарностей в файле CREDITS ядра Linux.
Другие проекты
Помимо Midnight Commander, Таунсенд разработал несколько других утилит, вошедших в стандартные репозитории Linux:
- mcview — встроенный просмотрщик файлов, позже интегрированный в MC.
- mcedit — текстовый редактор с подсветкой синтаксиса, основанный на библиотеке Slang.
- libslang — библиотека для работы с терминалами, используемая в MC и других консольных программах.
Таунсенд также участвовал в тестировании и отладке пакетного менеджера RPM (Red Hat Package Manager) в середине 1990-х годов.
Философия и подход к разработке
Таунсенд является сторонником минимализма и простоты в программировании. Он неоднократно высказывался против излишней сложности в коде, предпочитая использовать стандартные библиотеки и избегать зависимостей от тяжёлых фреймворков. В интервью 2005 года он заявил, что «Midnight Commander должен работать на любой системе, где есть терминал и компилятор Си», что объясняет его приверженность ANSI C и ncurses.
Таунсенд также критиковал коммерциализацию свободного ПО, считая, что основная цель разработки — удовлетворение потребностей пользователей, а не извлечение прибыли. Он поддерживает модель разработки, основанную на сообществе, и выступает против патентов на программное обеспечение.
Критика
Деятельность Таунсенда неоднократно подвергалась критике со стороны сообщества. Основные претензии:
- Отсутствие документации: Midnight Commander долгое время не имел полноценной документации на русском языке, что затрудняло его использование в странах СНГ. Таунсенд признавал эту проблему, но не предпринимал активных действий для её решения.
- Консервативность кода: Таунсенд отказывался от внедрения некоторых современных функций, таких как поддержка Unicode в ранних версиях MC, что вызывало недовольство пользователей. Полноценная поддержка UTF-8 была добавлена только в 2009 году.
- Конфликты с сообществом: В 1998 году Таунсенд вступил в конфликт с разработчиком GNU Midnight Commander, который предлагал форк проекта с более агрессивными изменениями. Таунсенд заблокировал принятие некоторых патчей, что привело к созданию отдельной ветки, позже объединённой с основной.
Несмотря на критику, Таунсенд пользуется уважением в сообществе за свою принципиальность и долгосрочную поддержку проекта.
Признание
В 2000 году журнал Linux Journal включил Таунсенда в список «50 самых влиятельных людей в мире Linux» за его вклад в развитие файловых менеджеров и системных утилит. В 2010 году он был награждён премией Free Software Foundation за вклад в развитие свободного ПО. Midnight Commander входит в стандартную поставку большинства дистрибутивов Linux, включая Debian, Ubuntu, Fedora и openSUSE.
Интересные факты
- Таунсенд является автором книги «Midnight Commander: A Practical Guide» (1999), которая не была издана на русском языке.
- Он является вегетарианцем и активно поддерживает движение за права животных.
- В свободное время Таунсенд занимается фотографией и публикует снимки на своём сайте.
- Его никнейм в IRC — «ctownsend», который он использует с 1993 года.
Источники
- Linux Journal, «50 Most Influential People in Linux», 2000.
- Интервью Криса Таунсенда журналу «Linux Format», 2005.
- Документация Midnight Commander, файл AUTHORS.
- Репозиторий Midnight Commander на GitHub, история коммитов.
- Статья «Chris Townsend: The Man Behind Midnight Commander» на сайте Linux.com, 2010.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →