Pull to refresh
2623.6
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15

Когда старый софт лучше нового

Level of difficultyEasy
Reading time7 min
Views72K

У каждого из нас наверняка есть подборка старого проверенного софта, который много лет работает без сбоев. В такой ситуации возникает вопрос: а зачем его обновлять?

Практика показывает, что новые версии утилит часто изменяются к худшему, раздуваются, обрастают ненужными функциями, начинают тормозить или вовсе перестают запускаться. Ухудшение программного продукта со временем — известный процесс, для которого есть специальный термин: дерьмофикация (enshittification, слово придумал Кори Доктороу). Она происходит не только с десктопным или мобильным софтом, но и с платформами. Все мы за последние годы наблюдали дерьмофикацию Google, Reddit, Amazon, Twitter и Facebook (два последних вообще признаны экстремистами и запрещены в РФ). Аналогично с десктопным софтом и мобильными приложениями.

В то же время старый софт многолетней давности фантастически быстро работает. Программы в несколько мегабайт, которые запускаются мгновенно, потребляют минимум памяти и просто летают. По сути, ресурсы современных CPU для них избыточны. Пользоваться такими инструментами одно удовольствие. Такое чувство, что работаешь на суперкомпьютере, а не обычном ПК.

Классические примеры — торрент-клиент µTorrent и плеер WinAMP, которые в какой-то момент начали конкретно деградировать и превращаться в универсальные комбайны с ненужной функциональностью, появилась встроенная реклама. В результате есть определённые версии этих программ (например, µTorrent v2.2.1 build 25534 от 2011 года), которые по многим параметрам лучше, чем последующие релизы. Особенно с патчами, которые добавляют недостающие функции (в случае с µTorrent это DHT).

То же самое со старыми версиями WinAMP, The Bat, Total Commander, IRC-, FTP-, SSH-клиентами, Emacs, Vim и другим софтом, который отлично работает как десять лет назад, так и сейчас. Не говоря уже о классических играх 90-х и 2000-х гг, которые и сегодня доставляют радость.


Говорят, Джордж Мартин написал более 5000 страниц «Песни льда и пламени» в любимом текстовом редакторе WordStar 4.0 для CP/M и MS-DOS, который вышел в 1987 г.:



«Он делает всё, что я хочу от программы для работы с текстом, и больше ничего не делает. Мне не нужна никакая помощь. Я ненавижу все эти современные системы, в которых вы набираете строчную букву, и она становится заглавной. Мне не нужна заглавная, если бы я хотел заглавную, я бы набрал заглавную», — говорит Джордж Мартин, исчерпывающе объясняя причины, по которым мы тоже зачастую выбираем старый привычный софт вместо нового.

Совершенная, законченная программа, которая не требует обновлений и достигла идеала в выполнении своей функции — это особая красота (хотя пример конкретно с WordStar 4.0 не совсем корректный, потому что после четвёртой версии вышло ещё семь).

Такое «идеальное» ПО может быть создано специально. Разработчик как бы сразу заявляет, что не будут докучать вам ненужными обновлениями. Или получается случайно, если компания-создатель исчезла или обанкротилась, а продукт оказался заброшен.

Многим современным программистам незнакомо то приятное чувство, когда ты создаёшь совершенный законченный продукт, отдаёшь его миру — и забываешь о нём, начиная работать над чем-нибудь другим. Потому что тот проект полностью завершён, и уже никогда не нужно к нему возвращаться.

В Unix есть несколько замечательных примеров «завершённого» ПО: это такие команды, как cd (для изменения текущего каталога) или ls (для вывода списка того, что там находится). Они никогда по сути не изменятся. На них можно полагаться до конца своей жизни.

Здесь одна из причин, по которой многие пользователи просто отказываются от установки нового софта. Они нашли оптимальный набор приложений — с ним и живут. Это относится и к операционной системе. Если всё устраивает — зачем что-то менять?

С точки зрения психологии отказ от апгрейда — вполне объяснимое поведение, потому что людям свойственен страх перемен, это одно из известных когнитивных искажений. Абсолютно любое изменение (точнее, угроза изменения) вызывает дискомфорт, даже если последствия этого изменения, очевидно, благоприятные. Такова психология. В научной литературе отказ от обновлений у потребителя называется «отсрочкой принятия» (adoption procrastination) и изучается как научный феномен. По мнению бизнес-психологов, виной тому различные когнитивные искажения, с которыми они предлагают бороться (например, проработать у психолога):


Теоретическое формирование отсрочки принятия нового. Источник: «Почему некоторые пользователи медлят с принятием обновлений цифровых продуктов», Journal of Business Research, Volume 135, October 2021, Pages 685-696; doi: 10.1016/j.jbusres.2021.06.066

Но некоторые люди просто любят ретро-стиль. Старые версии ОС кажутся более надёжными и проверенными, чем современные. Отчасти так оно и есть, там уже все возможные баги выявлены, и что-то новое вряд ли найдут.

Иногда владение старым телефоном даёт конкретные преимущества перед окружающими. WSJ приводит пример студентки (на фото внизу), которая сознательно пользуется старым iPhone 11 под iOS 15.5. Так вот, однажды кто-то выслал в общий чат неудачную шутку, а потом отозвал глупость. Но функция отзыва сообщений появилась только в iOS 16, так что сообщение удалилось у всех однокурсников, кроме неё.



В отдельных случаях обновление программного обеспечения бывает даже опасно.

▍ Угроза для безопасности


Обновление нормально работающих приложений может представлять угрозу в прямом смысле слова. Кто знает, что включил автор в новую версию. Может, там появилась реклама, как в uTorrent с определённого момента. Приложение могли перекупить — и сделать из него что угодно, внедрить майнер или какое-то вредоносное ПО. Такое происходит даже с приложениями из Google Play, хотя там ведётся тщательная антивирусная проверка. Например, новая версия диктофона iRecorder (более 50 тыс. скачиваний) в прошлом году внезапно начала шпионить за пользователями — и отправлять на сервер по 15 минут последнего записанного звука. Расследование показало, что опенсорсный троян AhMyth вообще частенько внедряют в мобильные приложения Android…

Так может, лучше вообще не обновляться? Но это ещё хуже с точки зрения безопасности, если для старых версий ОС не выходят патчи. Ведь новые уязвимости появляются постоянно, а в старом софте их просто некому закрывать.

Если сидеть на старой ОС типа Windows 7 или OS X Yosemite (2014 г. в.), то пользовательские программы после обновлений перестанут запускаться. Тот же Chrome последних версий уже не поддерживает старые ОС, как и защищённый мессенджер Signal. А со старым, необновлённым браузером некоторые сайты будут глючить или вовсе не откроются. Так что приверженность старому, проверенному софту всё-таки, имеет свои пределы и недостатки…

Но в целом если никаких проблем нет, то ставить каждую новую версию вовсе не обязательно. К счастью, многие производители начали это понимать. Например, Google теперь гарантирует семь лет обновлений для смартфонов Pixel 8 и Pixel 8 Pro, включая обновления Android. В свою очередь, Apple обеспечивает шесть лет поддержки iOS на своих устройствах.

▍ Снижение производительности


С каждой версией софта растут требования к конфигурации. Иногда включение новых функций кардинально снижает производительность на десятки процентов. Например, принудительная активация программного шифрования BitLocker в Windows 11 Pro замедляет SSD на 45%.



Тесты SSD с включённым и отключённым шифрованием в Windows 11:



Чтобы восстановить производительность, рекомендуют переустановить Windows без BitLocker, а потом включить аппаратное шифрование вместо программного:



С другой стороны, если SSD не поддерживает аппаратное шифрование или его стойкость вызывает сомнения, придётся смириться с падением производительности…

Конечно, есть известные методы «ускорения» Windows 10/11, например, убить процесс dwm.exe или очистить Windows от мусора (скрипт для очистки), но всё это скорее плацебо, чем реальное ускорение.

Упрощение системы обычно позволяет добиться роста производительности. Это эффективно работает для веб-приложений и SaaS-сервисов, но у пользователя мало контроля над работой десктопной программы или мобильного приложения. Разве что изначально искать упрощённую версию софта, примерно как tiny10 и tiny11 — облегчённые версии Windows 10 и 11, соответственно.


tiny10

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

▍ Примеры хорошего софта


Впрочем, не всё хорошее только в прошлом. Появляются и новые отличные программы, которые можно отнести к примерам отличного софта, способного прослужить десятилетия. Такие утилиты нужно просто копировать и сохранять в текущей версии, потому что мало ли куда они пропадут или что изменится в будущем. Изменения редко бывают к лучшему, как показывает история.

Некоторые примеры:

  • Ventoy — опенсорсная утилита для записи загрузочных USB из файлов ISO/WIM/IMG/VHD(x)/EFI без форматирования, просто копированием файлов. Если скопировать на флэшку несколько файлов, Ventoy автоматически создаст загрузочное меню:


  • Syncthing — опенсорсная утилита для пиринговой синхронизации файлов между устройствами в локальной сети или через интернет, работает под Windows, macOS, Linux, Android, Solaris, Darwin и BSD.
  • yt-dlp — клиент для скачивания файлов с YouTube.
  • mpv — кроссплатформенный медиаплеер для консоли (управление из командной строки)
  • … и многие другие.

Есть просто отличный софт. Он постоянно обновляется и даже становится лучше. Проекты, за которые хочется сказать спасибо их авторам. Например:


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

Зачастую старые версии программ уже не скачать с официального сайта разработчика. Это и понятно, они заинтересованы в продвижении нового «продукта», так что приходится добывать их на торрентах или в файловых архивах. Поэтому лучше следовать правилу: видишь хорошую программу — сохрани её на будущее. Эта коллекция сослужит хорошую службу, особенно если доступ в интернет будет ограничен или полностью отключён, как в КНДР.

Помоги спутнику бороться с космическим мусором в нашей новой игре! 🛸
Tags:
Hubs:
+149
Comments508

Articles

Information

Website
ruvds.com
Registered
Founded
Employees
11–30 employees
Location
Россия
Representative
ruvds