Пол Эггерт¶
Пол Эггерт (англ. Paul Eggert; род. 29 июля 1955, Лос-Анджелес, Калифорния, США) — американский учёный в области информатики, известный прежде всего как ведущий разработчик и текущий мейнтейнер базы данных часовых поясов (tz database, также известной как IANA Time Zone Database). Он является автором значительных алгоритмов в области обработки текста, в частности алгоритма сжатия данных LZSS (модификация LZ77), а также внёс вклад в развитие систем управления версиями и стандартизацию времени в компьютерных системах.
¶Биография
Пол Эггерт родился в 1955 году в Лос-Анджелесе. Получил степень бакалавра по математике (1977) и докторскую степень (PhD) по информатике (1982) в Калифорнийском университете в Лос-Анджелесе (UCLA). Его диссертация была посвящена вопросам сжатия данных и обработки строк.
После завершения обучения Эггерт работал в ряде академических и коммерческих организаций, включая корпорацию Hewlett-Packard (HP) и компанию Sun Microsystems. В HP он занимался разработкой компиляторов и инструментов для разработки программного обеспечения. В 1990-х годах он присоединился к Sun Microsystems, где участвовал в создании операционной системы Solaris и работал над системой управления версиями SCCS (Source Code Control System).
В 2000-х годах Эггерт перешёл в компанию Google, где продолжил работу над системами управления версиями и стандартизацией времени. В настоящее время он является сотрудником Google, но его наиболее известная деятельность — поддержка базы данных часовых поясов — осуществляется на добровольной основе.
¶Научный вклад
¶Сжатие данных: алгоритм LZSS
В 1987 году Пол Эггерт опубликовал статью, в которой описал улучшение алгоритма LZ77, предложенного Абрахамом Лемпелем и Якобом Зивом. Модификация, получившая название LZSS (Lempel-Ziv-Storer-Szymanski, хотя сам Эггерт не является соавтором аббревиатуры), была реализована в программе сжатия текста, написанной на языке C. Основное нововведение заключалось в использовании битового флага для различения ссылок на повторяющиеся последовательности и непосредственно хранящихся символов, что позволило повысить эффективность сжатия. Алгоритм LZSS стал основой для многих последующих форматов сжатия, включая PKZIP, ARJ, и более поздний LZMA.
¶Системы управления версиями
Эггерт внёс существенный вклад в развитие системы SCCS, которая была одной из первых систем управления версиями для программного кода. Он разработал алгоритмы для эффективного хранения изменений (дельта-кодирования) и слияния веток. Впоследствии он участвовал в создании системы управления версиями BitKeeper, а также в разработке Git, хотя его роль в последнем была менее заметной. Его работа в этой области повлияла на стандартизацию подходов к контролю версий в индустрии.
¶База данных часовых поясов (tz database)
Наиболее значимым и широко известным вкладом Пола Эггерта является его работа с базой данных часовых поясов. Эта база данных содержит информацию о всех исторических и текущих изменениях часовых поясов по всему миру, включая переходы на летнее время и политические изменения границ зон.
Эггерт взял на себя роль мейнтейнера проекта в 1990-х годах, после того как его основатель Артур Дэвид Олсон отошёл от дел. С тех пор Эггерт отвечает за выпуск новых версий базы, обработку изменений, поступающих от сообщества, и поддержание точности данных. Его работа критически важна для корректной работы операционных систем (включая Linux, macOS, BSD, Solaris и многие другие), языков программирования (Java, Python, C# и т.д.) и интернет-сервисов, которые полагаются на точное время.
Эггерт также разработал и поддерживает программное обеспечение для работы с tz database, включая утилиты zic (time zone compiler) и zdump (time zone dumper). Он активно участвует в обсуждениях по стандартизации времени, в том числе в рамках IETF (Internet Engineering Task Force) и IANA (Internet Assigned Numbers Authority), которая с 2011 года является официальным хранителем базы данных.
¶Критика и споры
Деятельность Пола Эггерта как мейнтейнера tz database неоднократно вызывала споры. Основные претензии касались его консервативного подхода к включению изменений и строгих требований к документации. Некоторые участники сообщества критиковали его за медлительность в обработке запросов и за отказ включать данные, которые, по его мнению, были недостаточно обоснованными. В 2011 году, после передачи управления базой данных от Олсона к IANA, возникли разногласия относительно лицензирования и авторских прав на данные, что привело к временному расколу сообщества. Однако Эггерт остался на посту мейнтейнера, и его авторитет в вопросах точности времени в компьютерных системах остаётся непререкаемым.
¶Награды и признание
В 2019 году Пол Эггерт был удостоен премии ACM Software System Award за создание и поддержку базы данных часовых поясов. Эта награда присуждается Ассоциацией вычислительной техники (ACM) за разработку программных систем, оказавших долгосрочное влияние на индустрию. В 2021 году он получил награду Internet Society’s Jonathan B. Postel Service Award за выдающийся вклад в развитие интернет-инфраструктуры.
¶Интересные факты
- Пол Эггерт является автором нескольких RFC (Request for Comments), в том числе RFC 8536 (формат файлов данных tz) и RFC 9557 (расширение формата даты и времени для указания часовых поясов).
- Он известен своим требовательным отношением к точности: в его базе данных учтены даже часовые пояса, существовавшие лишь несколько дней (например, в некоторых регионах после распада СССР).
- Эггерт активно использует систему контроля версий Git для управления tz database, и его репозиторий является одним из старейших и наиболее активно поддерживаемых в мире.
¶Источники
- Eggert, P. (1987). "A Technique for High-Performance Data Compression". Proceedings of the 1987 Summer USENIX Conference.
- RFC 8536 — The Time Zone Information Format (tzfile).
- ACM Software System Award 2019 — Paul Eggert.
- Internet Society Postel Service Award 2021 — Paul Eggert.
- IANA Time Zone Database — официальная документация.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


