- PVSM.RU - https://www.pvsm.ru -

Проблема критики программного обеспечения. Точнее её отсутствия

image

«Критика может быть неприемлемой, но она необходима. Она выполняет ту же функцию, что и боль в организме человека. Она обращает внимание на нездоровое положение вещей».
Уинстон Черчилль [1]

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

Хейт, обзор и критика

Не путайте критику и хейт. Если кто-то говорит о чём-то: «Это отстой» — то это хейт. Если же кто-то говорит: «Это отстой, вот почему, и вот как это исправить» — то это уже критика, и она исходит из желания изменить объект критики к лучшему.

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

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

Проблема критики программного обеспечения. Точнее её отсутствия - 2

Отзывы не всегда соответствуют действительности. Начнём с того, что клиент/пользователь не всегда прав, а отзывы показывают только одну сторону истории. Кроме того, мотивация отзыва не всегда ясна. Это может исходить из искреннего восторга. Но это также может исходить из меркантильных мотивов. Например, на сайтах с обзорами есть серьёзная проблема с компаниями, покупающими положительные отзывы. То есть покупка поддельных положительных отзывов — обычная практика. За это клиент получает скидку на следующую покупку, подарок или бесплатную доставку по почте и т. д. за оставленный отзыв. Компании с большим бюджетом могут тратить деньги на создание множества поддельных отзывов. Они также могут позволить купить обзор у известного блогера.

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

Артефакт современности

В технологической критике нет ничего нового. Современная технологическая критика восходит к Карлу Марксу [2] и его современникам. Сегодня известны такие современные технические критики, как Джарон Ланье [3], Евгений Морозов [4] и Эллен Ульман [5]. Но критика программного обеспечения — это не то же самое, что критика технологий. Если в XVIII и XIX веках наблюдался подъём художественной литературы, а 1920-е годы были зарезервированы для джазовой музыки, то программное обеспечение является определяющим артефактом нашего времени. Так где же критики программного обеспечения?

Проблема критики программного обеспечения. Точнее её отсутствия - 3

Сейчас на YouTube выходят тоннами обзоры фильмов. Их сейчас так много, что обзоров больше чем самих фильмов. Разные СПГС, сравнения и аналогии, компиляции, треш-обзоры и много чего другого. Их снимают любители-энтузиасты, без профильного образования в области кино. И они иногда разбираются в фильмах не хуже профессиональных кинокритиков. То же самое можно сказать про обзоры книг, автомобилей или архитектуры. Есть конечно и обзоры ПО, но они, как правило, о том как работает та или иная программа, как устранить неполадки и разного рода лайфхаки.

Почему не возникла культура критики программного обеспечения? Простое объяснение состоит в том, что форма ещё молода. Книги, поэзия и архитектура существуют уже тысячелетия. Автомобили и фильмы существуют уже более ста лет. Однако современному программному обеспечению всего несколько десятков лет. Кроме того, форма недостаточно теоретизирована — не с инженерной, а с гуманитарной точки зрения. Если бы мы сравнивали это со зданиями, то это как если бы существовала традиция гражданского строительства без архитектурной теории. Что сложнее: построить здание или разработать ПО? Непростой вопрос. Разработка программного обеспечения может быть такой же сложной, как строительство здания. На самом деле словарь программной инженерии имеет много параллелей с архитектурой. Например, тех, кто принимает решения при проектировании высокого уровня ПО, называют архитекторами программного обеспечения [6]. Многие концепции также являются общими. Возьмем разницу между реализацией интерфейса в программном обеспечении. Точно так же все лифты имеют один и тот же интерфейс — нажатие кнопки вызова лифта, ожидание лифта, открытие дверей, нажатие кнопки этажа и т. д. — но их реализации — гидравлические, редукторная тяга, без машинного помещения — различаются.

Другая очевидная причина того, что программные критики не появились, заключается в том, что между гуманитариями и инженерами мало общего. А учитывая, насколько прибыльным может быть профессия инженера-программиста, не так много стимулов становиться программным критиком. Но критик программного обеспечения может выявить ключевые проблемы ПО и установить рациональное решение. Хорошая критика может заставить пользователей полюбить программное обеспечение, которое они ненавидели, и возненавидеть ПО, которое любили.

Проблема критики программного обеспечения. Точнее её отсутствия - 4

Итак, если фильмы, автомобили и здания заслуживают критического анализа из-за их сложности или уникального дизайна, не следует ли современному программному обеспечению также квалифицироваться как объект критики? Браузер Chrome, охватывающий все уровни абстракции — от низкоуровневых сетевых протоколов до оптимизации памяти, функций продукта и элементов пользовательского интерфейса — наверняка не менее сложный объект, чем Tesla. А многие пользователи эстетизируют ядро ​​Linux точно так же, как коллекционеры часов эстетизируют Rolex.

Цель критики

Как выглядит критика программного обеспечения? Грубая смесь обзора продукта в форме литературной критики? В самой базовой форме, да. Но это гораздо больше. Критик анализирует предмет с нескольких точек зрения: технической, исторической и философской.

Вместо того, чтобы говорить абстрактно, давайте выберем Google Docs в качестве примера. Критик программного обеспечения может начать с некоторой необходимой культурной истории письменного труда, затем предоставить немного технической истории с объяснением того, как технология операционной трансформации [7] (OT) Google Docs проложила путь для инструментов совместной работы в реальном времени в других областях, таких как Figma [8] для дизайна или Colab [9] для программирования. И как исследования бесконфликтного реплицированного типа данных [10] (CRDT) могут сделать этот режим работы режимом совместной работы по умолчанию в будущем. И что это означает в культурном и социологическом плане.

Какой не должна быть критика программного обеспечения. Без «водянистых» рассуждений, без систем оценок (по 10-бальной шкале и т.д.). Это также не место для партнерских ссылок. Никакой рекламной кампании, мотивированной монетой, или тонко замаскированного пиара. Программный критик может находиться в любом диапазоне от технологического энтузиазма до оптимизма/скептицизма/пессимизма, но должен избегать крайностей, а это означает, что он должен ловко проплывать между Сциллой технического утопизма и Харибдой луддизма, чтобы просвятить широкий круг читателей.

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

Проблема критики программного обеспечения. Точнее её отсутствия - 5

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

«Как вызвать расстройство личности? Постоянная критика и недостаток любви».
Фаина Раневская [11]

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

Есть определённая социальная — и можно сказать, моральная — функция критики, которая применима и к критике программного обеспечения. Это «служебная профессия», преследующая моральные и практические цели. Интеллектуальный обмен между изобретателями, потребителями и критиками обогатил экологию всех форм искусства. И одна из самых благородных ролей критика состоит в том, чтобы выделять перспективных «художников» или тех, кто несправедливо живет в безвестности. Точно так же, как влиятельный критик может привлечь внимание к артхаусному фильму или сборнику эссе от самиздата, критик программного обеспечения может обратить внимание на программистов-индивидуалистов, которые не получают выгоды от пресс-релизов Big Tech.

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

Автор:
TilekSamiev

Источник [12]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/linux/383537

Ссылки в тексте:

[1] Уинстон Черчилль: https://ru.wikipedia.org/wiki/%D0%A7%D0%B5%D1%80%D1%87%D0%B8%D0%BB%D0%BB%D1%8C,_%D0%A3%D0%B8%D0%BD%D1%81%D1%82%D0%BE%D0%BD

[2] Карлу Марксу: https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%80%D0%BA%D1%81,_%D0%9A%D0%B0%D1%80%D0%BB

[3] Джарон Ланье: https://ru.wikipedia.org/wiki/%D0%9B%D0%B0%D0%BD%D1%8C%D0%B5,_%D0%94%D0%B6%D0%B0%D1%80%D0%BE%D0%BD

[4] Евгений Морозов: https://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D1%80%D0%BE%D0%B7%D0%BE%D0%B2,_%D0%95%D0%B2%D0%B3%D0%B5%D0%BD%D0%B8%D0%B9_(%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%B8%D1%81%D1%82)

[5] Эллен Ульман: https://en.wikipedia.org/wiki/Ellen_Ullman

[6] архитекторами программного обеспечения: https://ru.wikipedia.org/wiki/%D0%90%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D1%8F#:~:text=%D0%90%D1%80%D1%85%D0%B8%D1%82%D0%B5%CC%81%D0%BA%D1%82%D0%BE%D1%80%20%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%CC%81%D0%BC%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE%20%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%CC%81%D0%BD%D0%B8%D1%8F%20(%D0%9F%D0%9E)%20%E2%80%94,%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B%20%D0%B8%20%D0%B5%D1%91%20%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85%20%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%BE%D0%B2.

[7] операционной трансформации: https://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5

[8] Figma: https://ru.wikipedia.org/wiki/Figma

[9] Colab: https://colab.research.google.com/?hl=ru

[10] бесконфликтного реплицированного типа данных: https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type

[11] Фаина Раневская: https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%BD%D0%B5%D0%B2%D1%81%D0%BA%D0%B0%D1%8F,_%D0%A4%D0%B0%D0%B8%D0%BD%D0%B0_%D0%93%D0%B5%D0%BE%D1%80%D0%B3%D0%B8%D0%B5%D0%B2%D0%BD%D0%B0

[12] Источник: https://habr.com/ru/post/720604/?utm_source=habrahabr&utm_medium=rss&utm_campaign=720604