Завински, Джейми

Дже́йми Ве́рнер Зави́нски (англ. Jamie Werner Zawinski, известный также как jwz; род. 3 ноября 1968, Питтсбург, Пенсильвания, США) — американский программист, блогер и импресарио. Один из ключевых разработчиков Netscape Navigator и сооснователь проекта Mozilla.org. Также известен как создатель проектов Netscape Mail, Lucid Emacs, заставок XScreenSaver и владелец ночного клуба DNA Lounge в Сан-Франциско.

Общие сведения
Джейми Вернер Завински
англ. Jamie Werner Zawinski
Дата рождения 3 ноября 1968 года
Место рождения Питтсбург, Пенсильвания, США
Гражданство  США
Род деятельности Программист
Сайт jwz.org

Биография

В 16 лет Джейми Завински начал свою деятельность программистом в проекте Скотта Фалмана Spice Lisp (диалект языка программирования Лисп) в Университете Карнеги-Меллона. Затем он работал в стартапе Expert Technologies, Inc., занимающемся разработкой технологий искусственного интеллекта, а далее — в исследовательской группе по ИИ Роберта Виленски и Питера Норвига в Калифорнийском университете в Беркли, где занимался обработкой естественного языка.

В 1990 году Джейми Завински работал в Lucid Inc., (компания по разработке ПО в Калифорнии) сначала над Lucid Common Lisp (одно из коммерческих решений Common Lisp— диалекта языка Лисп), а затем над IDE Energize C++ от Lucid. Когда в Lucid решили использовать GNU Emacs в качестве текстового редактора для своей IDE из-за его свободной лицензии, популярности и расширяемости, Завински возглавил этот проект. Поскольку Завински и другие программисты вносили фундаментальные изменения в GNU Emacs, добавляя новые функции, разногласия по поводу того, как объединить эти патчи в основное дерево, в конечном итоге привели к разделению проекта на GNU Emacs и Lucid Emacs (теперь XEmacs)[1].

В 1992 году Джейми Завински выпустил первую версию XScreenSaver — бесплатной коллекции из более чем 240 заставок экрана с открытым исходным кодом[2]. Изначально была разработана для Unix, а затем стала поддерживать macOS, iOS и Android. В системах Unix она также предоставляет фреймворк для затемнения и блокировки экрана. Завински поддерживает её, выпуская новые версии несколько раз в год[3].

Netscape и Mozilla

В 1994 году после банкротства Lucid Джейми Завински стал одним из первых сотрудников Mosaic Communications, позже известной как Netscape. В Netscape он разработал Unix- версию Netscape Navigator 1.0[4][5], а затем и Netscape Mail — первую программу для чтения почты (или Usenet- клиента) со встроенной поддержкой HTML[6].

Джейми Завински придумал название «Mozilla» (первоначально, внутреннее кодовое название веб-браузера) во время совещания сотрудников, это была отсылка к Годзилле и производное от «Mosaic killer» (убийца Мозаики)[7][8].

Пасхальное яйцо, которое он закодировал в браузере Netscape, стало довольно известным в первые дни существования Всемирной паутины: ввод «about: jwz» в адресной строке перенаправлял пользователя на домашнюю страницу и менял анимацию логотипа браузера на огнедышащего дракона[9].

Считается, что благодаря своей многолетней поддержке и пропаганде свободного программного обеспечения как внутри компании, так и за её пределами, Джейми Завински вдохновил Netscape на решение открыть исходный код браузера в 1998 году[10][11]. Он был основателем компании Mozilla.org, лично зарегистрировал её доменное имя в день объявления о работе Netscape с открытым исходным кодом и помогал проектировать и управлять организацией в течение первого года её существования[12][13].

Когда в 1999 году крупный американский проект AOL приобрёл Netscape, Джейми Завински написал бюллетень, в котором объяснил, что работа Mozilla будет продолжаться с Netscape или без него. А через год после первоначального выпуска исходного кода он ушёл из Netscape и Mozilla, сославшись на своё разочарование тем, что другие участники проекта решили переписать код вместо того, чтобы постепенно его улучшать[14][15].

Клуб DNA Lounge

В 1999 году вскоре после ухода из Джейми Завински объявил о покупке DNA Lounge — ночного клуба в Сан-Франциско[16][17][18][19] примерно за 5 миллионов долларов. Клуб был вновь открыт в июле 2001 года, о чём Джейми Завински подробно описал в блоге под названием «DNA Sequencing»[20][21].

В 2016 году он изучал альтернативные идеи финансирования, чтобы сохранить заведение на плаву во время спада посещаемости[20].

Интервью и выступления

В 2000 году Джейми Завински снялся в 60-минутном документальном фильме PBS «Code Rush», в котором рассказывается о создании Mozilla.org и разработке исходного кода браузера в 1998 году.

В своей книге, написанной в 1998 году («Ускорение сети: внутренняя история Netscape и как она бросила вызов Microsoft»[22]), американский журналист Джош Куиттнер подробно рассказал о Джейми Завински.

Также Джейми Завински фигурирует в книге Глина Муди, английского писателя, специализирующегося на технологических вопросах,— «Мятежный код: Linux и революция открытого исходного кода»[11], написанной в 2001 году. 

В книге Питера Сейбеля 2009 года «Программисты за работой: размышления о ремесле программирования» есть глава о Джейми Завински[23][24].

А в 2001 году в документальном фильме «California Dreamin': The Gold Rush», снятом для немецкого общественного телевидения, можно увидеть Джейми Завински[25][26].

Джейми Завински фигурирует в нескольких видеоинсталляциях на выставке Музея компьютерной истории «Революция: первые 2000 лет вычислений»[27].

Скринсейверы, созданные Джейми Завински, были представлены на галерейной выставке в Роттердаме в 2017 году под названием «Спящий режим: искусство заставки» под кураторством Рафаэля Розендаля (Rafaël Rozendaal) в Институте Het Nieuwe Instituut, на сайте которого размещено интервью с Джейми Завински[28].

«Закон Завински»

Джейми Завински сформулировал Закон Завински (Zawinski’s Law) — это ироничное наблюдение в сфере разработки программного обеспечения:

Каждая программа развивается до тех пор, пока не сможет читать электронную почту. Программы, которые не способны так развиться, вытесняются теми, что смогут (Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can).

Несмотря на не совсем научное обоснование, закон фиксирует устойчивую тенденцию[29]:

  1. естественное разрастание функционала — программные продукты постепенно наращивают возможности, выходя за рамки изначальной специализации;
  2. конкуренция через универсальность — если одна программа не успевает «эволюционировать», её вытесняют более многофункциональные аналоги;
  3. парадокс простоты — даже узкоспециализированные инструменты со временем превращаются в платформы с избыточными функциями (например, мессенджеры, включающие платежи, игры и т. д.).

Можно привести такие примеры проявления закона[29]:

Закон Завински контрастирует с некоторыми другими идеями и «законами» программирования[29]:

  • KISS (Keep It Simple, Stupid) — призывом к минимализму в дизайне;
  • YAGNI (You Aren’t Gonna Need It) — принципом отказа от избыточных функций;
  • законом Теслера — идеей, что сложность системы нельзя устранить полностью, а лишь перенести (например, с пользователя на разработчика).

Закон Завински описывает реальную динамику развития ПО, но не является безусловным правилом. Балансирование между функциональностью и простотой остаётся ключевой задачей разработчиков[29].

Эрик Рэймонд интерпретировал этот закон как комментарий к феномену раздувания программного обеспечения из-за популярных функций[30][31].

Джейми Завински заявил в 2020 году:

Я говорил не о подражателях, а о платформизации. Приложения, в которых вы «живёте» весь день, вынуждены становиться всем и делать всё. Приложение для редактирования текста становится IDE, затем ОС. Приложение для отображения гипертекстовых документов становится почтовым клиентом, а затем ОС.

Принципы

Джейми Завински впервые добился известности как программист на языке Lisp, но большинство его крупных проектов написано на C. Несмотря на это, он долгое время критиковал языки программирования, в которых отсутствует безопасность доступа к памяти и автоматическое управление памятью. Он особенно активно выступал против C++ . В книге Питера Сейбеля «Программисты за работой: размышления о ремесле программирования» Джейми Завински называет C++ «мерзостью… ассемблером PDP-11, возомнившим себя объектной системой»[24][32].

Хотя Джейми Завински написал и опубликовал множество утилит на языке Perl[33], он подверг его критике, характеризуя Perl как «объединение всех худших аспектов C и Lisp: миллиард различных подъязыков в одном монолитном исполняемом файле. Он сочетает в себе мощь C с читабельностью PostScript»[34] .

Джейми Завински критиковал ряд недостатков языка и библиотек, с которыми столкнулся при программировании на Java, особенно маркетинговые и политические мотивы, стоящие за этим, которые привели к тому, что Sun объединила язык, библиотеку классов, виртуальную машину и модель безопасности под одним названием «Java», что, по его словам, пошло им во вред. Несмотря на положительные аспекты, в конечном итоге Джейми Завински вернулся к программированию на C, «поскольку это по-прежнему единственный способ выпускать переносимые программы»[35].

Примечания

  1. Zawinski, Jamie The Lemacs/FSFmacs Schism. (11 февраля 2000). Дата обращения: 12 ноября 2025. Архивировано 21 ноября 2025 года.
  2. List of screen savers included in the collection. XScreenSaver (8 декабря 2020). Дата обращения: 12 ноября 2025. Архивировано 14 декабря 2025 года.
  3. Release history. XScreenSaver (8 декабря 2020). Дата обращения: 12 ноября 2025. Архивировано 28 ноября 2025 года.
  4. Netscape Navigator's "about:authors" page (15 декабря 1994). Дата обращения: 12 ноября 2025. Архивировано 3 августа 2025 года.
  5. Steinert-Threlkeld, Tom. Can You Work in Netscape Time?, Fast Company magazine (31 октября 1995). Архивировано 25 августа 2025 года. Дата обращения: 12 ноября 2025.
  6. Zawinski, Jamie HTML email, was that your fault? jwz.org blog (20 ноября 2017). Дата обращения: 12 ноября 2025. Архивировано 14 декабря 2025 года.
  7. Zawinski, Jamie The Netscape Dorm. jwz.org (1996). Дата обращения: 12 ноября 2025.
  8. Dave Titus with assistance from Andrew Wong. How was Mozilla born: The story of the first mascot on the Internet (1 декабря 2002). Дата обращения: 12 ноября 2025. Архивировано 21 октября 2025 года.
  9. Zawinski, Jamie The secret history of the about:jwz URL. jwz.org (3 декабря 2011). Дата обращения: 13 февраля 2021. Архивировано 23 сентября 2025 года.
  10. Suárez-Potts, Louis Interview: Frank Hecker. OpenOffice (1 мая 2001). Дата обращения: 12 ноября 2025. Архивировано 7 августа 2001 года.
  11. 1 2 Moody, Glyn. Rebel Code: Linux and the Open Source Revolution. — Basic Books, 2001-02-18. — ISBN 978-0-7867-4520-3.
  12. Jim Hamerly and Tom Paquin with Susan Walton. Freeing the Source: The Story of Mozilla // Open Sources: Voices from the Open Source Revolution. — O'Reilly Media, Inc., 1999-01-03. — ISBN 978-0-596-55390-6.
  13. Boutin, Paul (July 1998). “Electric Word: Mozilla.organizer”. Wired. 6 (7). Дата обращения 2025-11-12.
  14. Zawinski, Jamie Resignation and postmortem. (31 марта 1999). Дата обращения: 12 ноября 2025. Архивировано 7 августа 2004 года.
  15. Festa, Paul. AOL, Mozilla lose key evangelist, CNET (1 апреля 1999). Дата обращения: 12 ноября 2025.
  16. Knauss, Greg Hacking the City. Stating the Obvious (7 ноября 2000). Дата обращения: 13 ноября 2025. Архивировано 14 мая 2021 года.
  17. Leonard, Andrew. Free the night life!, Salon (10 февраля 2000). Архивировано 22 августа 2025 года. Дата обращения: 13 ноября 2025.
  18. Thomas, Evany (2001-07-16). “From Netscape to Nightclub”. Wired. Архивировано из оригинала 2008-04-09. Дата обращения 2025-11-13.
  19. Strachota, Dan Revenge is Sweet. SF Weekly (18 июля 2001). Дата обращения: 13 ноября 2025. Архивировано 23 сентября 2021 года.
  20. 1 2 Pereira, Alyssa Owner of DNA Lounge, on verge of closing club, calls for 'ideas' to keep it open. SF Gate (19 декабря 2016). Дата обращения: 13 ноября 2025. Архивировано 22 октября 2025 года.
  21. Thomas, Evany (2001-07-16). “From Netscape to Nightclub”. Wired. Дата обращения 2025-11-13.
  22. Joshua Quittner. Speeding the Net: The Inside Story of Netscape and How It Challenged Microsoft / Joshua Quittner, Michelle Slatalla. — Atlantic Monthly Press, 1998. — ISBN 978-0-87113-709-8.
  23. Seibel, Peter. Coders at Work: Reflections on the Craft of Programming. — Apress, 2009-09-16. — ISBN 978-1-4302-1948-4.
  24. 1 2 Seibel, Peter Coders at Work. Apress. Дата обращения: 13 ноября 2025. Архивировано 21 октября 2025 года.
  25. California Dreamin': The Gold Rush. ColourFIELD (2001). Дата обращения: 13 ноября 2025. Архивировано 30 мая 2024 года.
  26. California Dreamin': The Gold Rush (video). Colorfield (2001). Дата обращения: 13 ноября 2025.
  27. Revolution: The First 2000 Years of Computing. Computer History Museum (2011). Дата обращения: 13 ноября 2025. Архивировано 8 октября 2025 года.
  28. Jamie Zawinski Interview. Sleep Mode: The Art of the Screensaver (27 января 2017). Дата обращения: 13 ноября 2025. Архивировано 28 января 2017 года.
  29. 1 2 3 4 Максим Соколовский. Сколько функций нужно продукту: обзор знаменитых законов программирования. worksolutions.ru (17 сентября 2021). Дата обращения: 13 ноября 2025. Архивировано 11 июля 2025 года.
  30. The Art of UNIX Programming.
  31. Raymond, Eric S. The Jargon File. Jargon File Text Archive (29 декабря 2003). Дата обращения: 13 ноября 2025. Архивировано 13 декабря 2025 года.
  32. Seibel, Peter C++ in Coders at Work. Gigamonkeys (16 октября 2009). Дата обращения: 29 апреля 2013. Архивировано 22 сентября 2010 года.
  33. Zawinski, Jamie jwzhacks (2013). Дата обращения: 13 ноября 2025. Архивировано 1 декабря 2025 года.
  34. Friedl, Jeffrey Source of the famous "Now you have two problems" quote. regex.info (15 сентября 2006). Дата обращения: 13 ноября 2025. Архивировано 16 октября 2025 года.
  35. Zawinski, Jamie Java sucks. jwz.org. Дата обращения: 13 ноября 2025. Архивировано 16 июня 2000 года.

Дополнительно по теме