Отъявленный программист: лайфхакинг из первых рук - [10]

Шрифт
Интервал

Затем было множество аналогичных инцидентов, которые даже поставили под сомнение возможность продолжения проектов в рамках AI Lab. Все это время я размышлял об этой перманентной проблеме несвободного софта, идея разрешения подобных ситуаций вызревала у меня все эти годы. Но когда главный проект лаборатории оказался под угрозой закрытия из-за конфликта различных правообладателей нашей главной системы, я осознал, что настала пора действовать. Поэтому сразу после инцидента с патентной атакой фирмы Symbolics, который переполнил чашу моего терпения, в январе 1984 года мной был запущен проект по созданию универсального набора свободного ПО. Ну а мне лично пришлось уволиться из AI Lab, чтобы посвятить себя полностью реализации этого проекта.

Так появился GNU Project. Далее в 1985 году был основан некоммерческий общественный фонд Free Software Foundation, который нанимал программистов в целях создания полностью свободной ОС и ее окружения. И наконец, следующая важная веха в нашем развитии (это 1989 год) — создание популярной лицензии General Public Licence (GPL), которая стала революционно новым типом лицензий и провозгласила класс ПО, распространяемого на условиях copyleft. Таким образом желая наконец покончить с проблемами юридического характера, мешающим работать мне и другим, я постепенно из системного программиста превратился в общественного деятеля. И хотя все это время я продолжал программировать и активно участвовать во множестве софтверных проектов, основной упор сейчас делается на путешествиях по всему миру для публичных выступлений и пропаганды идей нашего движения.


Насколько универсальны ваши GPL-принципы? На рынке уже существуют напитки с абсолютно открытой и доступной рецептурой, распространяемой по лицензии GPL, например OpenCola и OpenBeer.


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


Я знаю, вы придерживаетесь своих взглядов и за пределами работы, даже по отношению к мобильным телефонам.


Что касается мобильных телефонов, то их реализация этически неприемлема, потому что это устройство двойного назначения, одно из которых — отслеживание вашего местоположения. Представьте себе, если бы я предложил вам сервис, который в состоянии в любой момент времени выдать ваше точное местоположение и, кроме того, дать возможность прослушать вас, — что бы вы сказали об этой возможности? Захотели бы вы добровольно носить на себе оборудование, необходимое для работы подобного сервиса?

Но ваш мобильный является именно таким устройством, и вы невольно принимаете участие в подобных экспериментах. Однажды увидев, насколько совершенна эта технология трэкинга, я сказал своему мобильному «нет». С современными телефонами все возможно, потому что часто они используют несвободное ПО (либо содержат отдельные компоненты, использующие его), — не удивлюсь, если в нем обнаружится бэкдор.

Для меня выбор не пользоваться сотовым телефоном абсолютно ясен и однозначен: я выбрал свободу в ущерб постоянной доступности. Это касается и всех остальных сфер моей жизни, где я также выбираю свободу во всех случаях, если вопрос ставится ребром.

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


Кстати, какие полезные сайты вы читаете? За исключением, конечно, сайтов fsf.org и gnu.org.


Как правило, я не пользуюсь браузером для просмотра веб-страниц напрямую. Знакомые люди часто сбрасывают мне важные, по их мнению, адреса. Я использую специальный Perl-скрипт, на который отправляю по почте запрос с URL-адреса интересующей меня страницы. В ответ почтовый робот вытягивает мне нормализованный контент этих страниц без всех отвлекающих рисунков, CSS и рекламы. Если такая страница-письмо того стоит, она остается в архиве моей почтовой базы в специальной подпапке и впоследствии доступна мне автономно в любой необходимый момент.

Для «браузинга» веба в режиме реального времени я использую специальный выделенный компьютер, впрочем, это случается достаточно редко. Никогда не делаю этого на своем рабочем нетбуке. Иногда мне присылают целые сайты, с которыми нужно ознакомиться. У меня есть штат волонтеров-помощников, которым я переадресую подобные запросы, с просьбой прочитать все и сообщить мне, если что-то конкретное заслуживает моего внимания. Даже если бы у меня и была техническая возможность постоянно сидеть в Интернете, я бы не делал этого из-за недостатка свободного времени. Ведь у меня есть важная работа, цели и идеалы.


Рекомендуем почитать
SQL: быстрое погружение

Что общего между самыми востребованными профессиями и стремительным увеличением количества информации в мире? Ответ: язык структурированных запросов (SQL). SQL — рабочая лошадка среди языков программирования, основа основ для современного анализа и управления данными. Книга «SQL: быстрое погружение» идеальна для всех, кто ищет новые перспективы карьерного роста; для разработчиков, которые хотят расширить свои навыки и знания в программировании; для любого человека, даже без опыта, кто хочет воспользоваться возможностями будущего, в котором будут править данные.


Чистый код. Создание, анализ и рефакторинг

Даже плохой программный код может работать. Однако если код не является «чистым», это всегда будет мешать развитию проекта и компании-разработчика, отнимая значительные ресурсы на его поддержку и «укрощение». Эта книга посвящена хорошему программированию. Она полна реальных примеров кода. Мы будем рассматривать код с различных направлений: сверху вниз, снизу вверх и даже изнутри. Прочитав книгу, вы узнаете много нового о коде. Более того, вы научитесь отличать хороший код от плохого. Вы узнаете, как писать хороший код и как преобразовать плохой код в хороший. Книга состоит из трех частей.


Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих

Алгоритмы - это всего лишь пошаговые алгоритмы решения задач, и большинство таких задач уже были кем-то решены, протестированы и проверены. Можно, конечно, погрузится в глубокую философию гениального Кнута, изучить многостраничные фолианты с доказательствами и обоснованиями, но хотите ли вы тратить на это свое время? Откройте великолепно иллюстрированную книгу и вы сразу поймете, что алгоритмы - это просто. А грокать алгоритмы - это веселое и увлекательное занятие.


Изучаем Python

Книга "Изучаем Python" - это ускоренный курс, который позволит вам сэкономить время и сразу начать писать работоспособные программы (игры, визуализации данных, веб-приложения и многое другое). Хотите стать программистом? В первой части книги вам предстоит узнать о базовых принципах программирования, познакомиться со списками, словарями, классами и циклами, вы научитесь создавать программы и тестировать код. Во второй части книги вы начнете использовать знания на практике, работая над тремя крупными проектами: создадите собственную "стрелялку" с нарастающей сложностью уровней, займетесь работой с большими наборами данных и освоите их визуализацию, и, наконец, создадите полноценное веб-приложение на базе Django, гарантирующее конфиденциальность пользовательской информации. Если вы решились разобраться в том что такое программирование, не нужно ждать.