
Вдохновлено Михаилом Ивановым, коллегой и товарищем, который напомнил про "Мир искусства"
В разговорах с коллегами иногда всплывает тема образования. Клинический психолог, говорю. Собеседник вежливо кивает и переходит к следующей теме. Понятно: какое отношение психология имеет к тестированию?
Прямое. Но не потому, что я умею "понимать людей" или "находить подход к разработчикам". Дело в другом предмете из учебного плана.
На третьем курсе нам читали философию науки: Декарт, Поппер, Лакатос, Кун, принцип фальсифицируемости, бритва Оккама. Три семестра о том, как человечество училось отличать знание от заблуждения. Тогда это казалось красивой, но бесполезной абстракцией. Ну зачем практикующему психологу знать, как Карл Поппер спорил с венскими позитивистами, а Имре Лакатос уточнял его идеи?
Прошло пятнадцать лет. Я давно не психолог, я руковожу тестированием. И в какой-то момент вдруг осознал: я каждый день делаю ровно то, о чём рассказывали на тех лекциях. Ищу минимальный воспроизводимый сценарий - это декартовское деление сложного на простое. Формулирую гипотезу так, чтобы её можно было опровергнуть - это Поппер. Выбираю самое простое объяснение из возможных - это Оккам.
Оказалось, философия науки - это не про философию. Это операционная система для мозга, который работает с неопределённостью. И эту статью я вынашивал не один год, чтобы наконец объяснить, почему.
Я не ставлю перед собой задачу пересказывать классические труды или проводить их систематический анализ. Для этого существуют учебники, и они справляются с этой задачей лучше, чем справлюсь я. Моя цель скромнее: познакомить читателя с несколькими ключевыми концепциями, которые запомнились мне самому и к которым я возвращаюсь спустя более двадцати лет после тех лекций. Концепциями, которые неожиданно оказались рабочим инструментом в профессии, о существовании которой я тогда даже не подозревал.
Декарт и архитектура сомнения
Рене Декарт вошёл в историю фразой "Cogito ergo sum", но для методологии науки значительно важнее его "Рассуждение о методе", опубликованное в 1637 году. В этой работе Декарт сформулировал четыре правила, которые, по его замыслу, должны были стать фундаментом любого достоверного познания.
Первое правило требует не принимать за истину ничего, что не представляется уму ясно и отчётливо, исключая всякую возможность сомнения. Это не скептицизм ради скептицизма, а методологическая установка: начинать исследование с позиции незнания, даже если кажется, что ответ очевиден.
Для специалиста по тестированию это правило приобретает вполне практический смысл. Разработчик утверждает, что функциональность работает корректно. Менеджер сообщает, что требования однозначны. Документация гарантирует стабильность системы. Декартовский подход предполагает, что каждое из этих утверждений остаётся гипотезой до тех пор, пока не будет подвергнуто проверке. Не потому, что коллеги намеренно вводят в заблуждение, а потому, что человеческое восприятие склонно принимать желаемое за действительное, а знакомое - за проверенное.
Второе правило предписывает делить каждую из рассматриваемых трудностей на столько частей, сколько потребуется для их разрешения. Это принцип декомпозиции, который в тестировании проявляется на нескольких уровнях. На уровне локализации дефекта: сложная система, в которой что-то работает неправильно, последовательно разбивается на компоненты до тех пор, пока проблемный участок не будет изолирован. На уровне тест-дизайна: комплексная функциональность разделяется на атомарные проверки, каждая из которых верифицирует одно конкретное поведение.
Третье правило устанавливает порядок познания: начинать с предметов простейших и легко познаваемых, восходя постепенно к познанию наиболее сложных. В контексте тестирования это отражается в иерархии проверок. Smoke-тесты предшествуют функциональным, функциональные предшествуют интеграционным, интеграционные предшествуют системным. Нет смысла проверять взаимодействие модулей, если базовая функциональность каждого из них не подтверждена. Нет смысла запускать нагрузочное тестирование на системе, которая не проходит простейшие сценарии.
Четвёртое правило требует составлять полные перечисления и обзоры, чтобы быть уверенным в отсутствии упущений. Здесь Декарт предвосхитил то, что в современном тестировании называется покрытием требований и матрицами трассировки. Систематический подход к перечислению проверяемых условий, граничных значений, комбинаций параметров направлен именно на то, чтобы минимизировать вероятность пропуска значимого сценария.
Примечательно, что Декарт разрабатывал свой метод для решения математических задач, но сформулировал его достаточно абстрактно, чтобы он оказался применим к областям, о которых сам Декарт не мог и помыслить.
Поппер и принцип фальсифицируемости
Карл Поппер, работавший в XX веке, сместил фокус философии науки с вопроса "как подтвердить теорию" на вопрос "как опровергнуть теорию". Это смещение акцента кажется незначительным, но оно меняет всё.
Традиционный индуктивный подход предполагал накопление подтверждающих примеров. Чем больше белых лебедей мы наблюдаем, тем увереннее можем утверждать, что все лебеди белые. Поппер указал на логическую асимметрию этой ситуации: никакое количество белых лебедей не доказывает отсутствие чёрных, но достаточно одного чёрного лебедя, чтобы утверждение было опровергнуто.
Отсюда следует ключевой критерий научности теории: она должна быть принципиально фальсифицируемой. Это не означает, что теория должна быть ложной. Это означает, что должен существовать мыслимый эксперимент или наблюдение, результат которого мог бы её опровергнуть. Теория, которая объясняет всё при любом исходе, не объясняет ничего.
Перенесение этого принципа в область тестирования программного обеспечения даёт неожиданно чёткую картину. Мы никогда не можем доказать, что программа работает правильно. Мы можем лишь искать ситуации, в которых она работает неправильно. Каждый пройденный тест не является доказательством корректности. Он является лишь неудавшейся попыткой обнаружить дефект.
Это не пессимизм, это методологическая ясность. Из неё следует практический вывод: ценность теста определяется его способностью обнаружить дефект, если дефект существует. Тест, который проходит всегда при любых обстоятельствах, бесполезен. Он не фальсифицирует ничего. Он не несёт информации. Как и теория, которую невозможно опровергнуть, такой тест не является инструментом познания.
Поппер также ввёл понятие "степени фальсифицируемости". Теория, которая делает более точные и конкретные предсказания, более фальсифицируема, а следовательно, более ценна с научной точки зрения. Утверждение "завтра будет какая-нибудь погода" невозможно опровергнуть. Утверждение "завтра в полдень температура в Москве составит +15 градусов" опровергается легко, и именно поэтому оно содержит больше информации.
В тестировании аналогом является точность тестового оракула. Проверка "система должна работать быстро" почти не фальсифицируема: что значит "быстро"? Проверка "время отклика на запрос не должно превышать 200 миллисекунд при нагрузке 1000 одновременных пользователей" фальсифицируема однозначно. Она либо выполняется, либо нет. И именно поэтому она полезна.
Лакатос и защитный пояс теории
Имре Лакатос, ученик Поппера, развил и уточнил идеи своего учителя. Он обратил внимание на то, что реальная научная практика не следует попперовской схеме буквально. Учёные не отбрасывают теорию при первом же противоречащем факте. Вместо этого они модифицируют вспомогательные гипотезы, уточняют условия применимости, ищут ошибки в эксперименте.
Лакатос предложил концепцию исследовательской программы, состоящей из "жёсткого ядра" и "защитного пояса". Жёсткое ядро содержит фундаментальные принципы, которые считаются неопровержимыми в рамках данной программы. Защитный пояс состоит из вспомогательных гипотез, которые могут модифицироваться при столкновении с аномалиями.
Эта модель удивительно точно описывает то, что происходит при анализе результатов тестирования в реальных проектах. Когда тест падает, первой реакцией редко бывает вывод о дефекте в тестируемой системе. Сначала проверяется защитный пояс: корректны ли тестовые данные? Стабильна ли тестовая среда? Не изменились ли внешние зависимости? Актуальна ли версия тестируемого приложения?
Только когда все элементы защитного пояса проверены и исключены, внимание переключается на жёсткое ядро: возможно, система действительно содержит дефект. Или, что случается чаще, чем хотелось бы: возможно, требования были поняты неверно, и тест проверяет не то поведение, которое было задумано.
Лакатос также различал прогрессивные и вырождающиеся исследовательские программы. Прогрессивная программа предсказывает новые факты, которые затем подтверждаются. Вырождающаяся программа только объясняет уже известные факты, а каждая новая аномалия требует всё более искусственных модификаций защитного пояса.
Для тестирования это различие существенно. Тестовая стратегия, которая постоянно требует исключений, оговорок и специальных условий, возможно, вырождается. Если каждый второй упавший тест объясняется особенностями среды, а не реальными проблемами, это сигнал к пересмотру не отдельных тестов, а подхода в целом.
Бритва Оккама и экономия сущностей
Уильям Оккам, францисканский монах XIV века, сформулировал принцип, известный как "бритва Оккама": не следует умножать сущности сверх необходимости. В современной интерпретации: из нескольких объяснений, одинаково хорошо согласующихся с наблюдениями, следует предпочесть наиболее простое.
Важно понимать, что бритва Оккама не является логическим законом. Простое объяснение не обязательно истинно. Это эвристика, методологический принцип, который оправдывает себя статистически. Сложные объяснения с большим количеством допущений имеют больше точек потенциального отказа. Каждое дополнительное допущение - это дополнительная возможность ошибиться.
В практике тестирования и отладки бритва Оккама работает как инструмент приоритизации гипотез. Тест, который стабильно проходил, начал падать. Возможные объяснения: изменился код в последнем коммите; изменилась конфигурация тестовой среды; произошёл сбой сетевой инфраструктуры; обновилась версия браузера; ретроградный Меркурий влияет на работу серверов.
Бритва Оккама предписывает начать с проверки наиболее простой и непосредственной гипотезы. Изменился код - это требует одного допущения: разработчик внёс изменение, которое сломало функциональность. Влияние Меркурия требует, как минимум, допущения о существовании астрологических эффектов и механизма их воздействия на программное обеспечение.
Однако бритва Оккама требует осторожного применения. "Простота" не означает "первое, что пришло в голову". Простота измеряется количеством необходимых допущений, а не когнитивной лёгкостью. Иногда правильное объяснение контринтуитивно, но при этом требует меньше допущений, чем интуитивное.
Фрэнсис Бэкон и идолы разума
Фрэнсис Бэкон, английский философ начала XVII века, считается одним из основоположников эмпирического метода в науке. Но для нашего контекста особый интерес представляет не столько его позитивная программа, сколько негативная: учение об "идолах разума", систематических заблуждениях, которые искажают познание.
Бэкон выделял четыре типа идолов. Идолы рода присущи человеческой природе как таковой. Человеческий ум склонен находить порядок там, где его нет, видеть закономерности в случайных событиях, переоценивать подтверждающие факты и игнорировать опровергающие. Идолы пещеры порождаются индивидуальными особенностями каждого человека: его воспитанием, образованием, личным опытом. Идолы площади возникают из-за несовершенства языка и коммуникации. Идолы театра проистекают из некритического принятия авторитетных мнений и устоявшихся теорий.
Эта классификация, созданная четыреста лет назад, читается как описание когнитивных искажений, влияющих на работу специалиста по тестированию.
Идолы рода проявляются в склонности видеть паттерны там, где их нет. Три теста упали после обеда в пятницу, и возникает ощущение закономерности. Начинается поиск объяснений: может, нагрузка на серверы возрастает к концу недели? Может, кто-то запускает резервное копирование? Между тем, выборка из трёх случаев статистически бессмысленна, и совпадение вполне может быть случайным.
Идолы пещеры определяют, какие гипотезы тестировщик рассматривает в первую очередь. Специалист с опытом работы над высоконагруженными системами при любом сбое сначала подозревает проблемы производительности. Специалист, который много работал с интеграциями, первым делом проверяет внешние сервисы. Это не ошибка как таковая - опыт ценен - но это ограничение, которое полезно осознавать.
Идолы площади в тестировании проявляются постоянно. Слово "работает" в устах разработчика, тестировщика, менеджера и пользователя означает разные вещи. Требование "система должна быть быстрой" каждый интерпретирует по-своему. Даже технические термины, кажущиеся однозначными, могут пониматься по-разному в разных командах и контекстах. Значительная часть дефектов, которые обнаруживаются на поздних стадиях, являются следствием не технических ошибок, а коммуникационных сбоев: люди использовали одни и те же слова, имея в виду разные вещи.
Идолы театра в индустрии информационных технологий принимают форму некритического следования "лучшим практикам", методологиям и авторитетным мнениям. Если известный эксперт утверждает, что юнит-тесты должны составлять 70% тестового покрытия, это принимается как руководство к действию без анализа применимости к конкретному проекту. Если в популярной книге написано, что автоматизация должна охватывать все регрессионные сценарии, это становится целью, даже когда экономически нецелесообразно.
Ценность бэконовской классификации не в том, что она позволяет избежать заблуждений. Избежать их полностью невозможно - они встроены в саму структуру человеческого мышления. Ценность в том, что осознание их существования позволяет вводить корректирующие процедуры: перекрёстные проверки, формализацию терминологии, критический анализ авторитетных источников.
Томас Кун и структура научных революций
Томас Кун в своей работе 1962 года предложил модель развития науки, которая радикально отличалась от представлений о линейном накоплении знаний. По Куну, наука развивается не плавно, а через чередование периодов "нормальной науки" и "научных революций".
В период нормальной науки исследователи работают в рамках устоявшейся парадигмы - совокупности базовых представлений, методов, образцовых решений и общепринятых проблем. Парадигма определяет, какие вопросы считаются осмысленными, какие методы допустимыми, какие результаты значимыми. Нормальная наука занимается "решением головоломок": применением парадигмы к новым случаям, уточнением её предсказаний, расширением области применения.
Аномалии - факты, которые не укладываются в парадигму, - на первых порах игнорируются или объясняются частными причинами. Но когда аномалий накапливается слишком много, когда они затрагивают центральные области парадигмы, наступает кризис. Кризис разрешается научной революцией: старая парадигма замещается новой, которая объясняет и старые факты, и накопившиеся аномалии.
Важнейший тезис Куна - о несоизмеримости парадигм. Сторонники разных парадигм буквально видят мир по-разному. Они используют одни и те же слова, но вкладывают в них разный смысл. Рациональный диалог между ними затруднён, потому что нет общей системы координат для сравнения.
История тестирования программного обеспечения может быть описана в куновских терминах как последовательность смен парадигм. Ранняя парадигма рассматривала тестирование как завершающую фазу разработки, направленную на обнаружение дефектов перед релизом. Тестировщик был "привратником", который пропускал или не пропускал продукт к пользователям.
Эта парадигма сменилась представлением о тестировании как непрерывном процессе обеспечения качества, интегрированном во все стадии разработки. Тестировщик стал не привратником, а участником команды, влияющим на качество с момента формулирования требований.
Современная парадигма смещает акцент ещё дальше: от обеспечения качества к проектированию качества, от обнаружения дефектов к предотвращению их возникновения, от тестирования продукта к тестированию процесса его создания.
Переход между парадигмами болезнен. Специалисты, сформировавшиеся в старой парадигме, испытывают сопротивление. Не потому, что они ретрограды, а потому, что новая парадигма обесценивает часть их опыта и требует освоения новых навыков. Дискуссии между сторонниками разных подходов часто бесплодны именно из-за куновской несоизмеримости: они говорят об одном и том же разными языками.
Осознание этого механизма помогает более конструктивно относиться к методологическим спорам. За вопросом "нужно ли автоматизировать этот тест" может скрываться столкновение парадигм: для одного участника дискуссии автоматизация есть очевидное благо, для другого - дополнительная сложность с неочевидной отдачей. Продуктивный разговор возможен только при эксплицировании этих базовых установок.
Юм и проблема индукции
Дэвид Юм, шотландский философ XVIII века, сформулировал проблему, которая до сих пор не имеет общепринятого решения в философии науки. Эта проблема касается обоснования индуктивного вывода - перехода от частных наблюдений к общим закономерностям.
Суть проблемы проста. Мы наблюдаем, что солнце вставало каждый день на протяжении всей истории наблюдений. На каком основании мы заключаем, что оно встанет и завтра? Единственным основанием может служить предположение о единообразии природы: будущее будет похоже на прошлое. Но это предположение само является индуктивным выводом и, следовательно, не может служить обоснованием индукции без порочного круга.
Юм не утверждал, что индукция бесполезна. Он утверждал, что она не имеет рационального обоснования. Мы пользуемся ею в силу привычки, психологической склонности ожидать повторения прошлого опыта. Эта склонность практически полезна, но логически не обоснована.
Для тестирования программного обеспечения проблема индукции приобретает острый практический характер. Система прошла тысячу тестовых прогонов без сбоев. Является ли это основанием для уверенности в тысяча первом прогоне? Строго говоря - нет. Прошлые успехи не гарантируют будущих. Дефект может проявляться только при определённом стечении обстоятельств, которое ни разу не возникло за тысячу прогонов, но возникнет на тысяча первом.
Это не абстрактное философствование. Системы, работавшие годами, отказывают при наступлении неучтённых граничных условий. Программа, безупречно обрабатывавшая данные, сбоит при появлении символа, который никогда не встречался во входных данных. Автоматизированные тесты, стабильно проходившие месяцами, начинают падать при обновлении инфраструктуры.
Проблема индукции не имеет решения, но имеет практические следствия. Первое: результаты тестирования - это информация о прошлом, а не гарантия будущего. Фраза "система протестирована" не означает "система будет работать". Она означает "система работала в тех условиях, в которых тестировалась".
Второе: ценность тестирования определяется не только объёмом проведённых проверок, но и разнообразием условий. Тысяча прогонов одного теста менее информативна, чем сто прогонов в десяти разных конфигурациях. Юмовская проблема указывает на важность вариативности, исследования граничных областей, намеренного создания нетипичных ситуаций.
Третье: смирение в оценках. Утверждение "всё работает" всегда неявно содержит оговорку "насколько нам известно, в тех условиях, которые мы проверили". Эта оговорка не является проявлением неуверенности. Она является признаком эпистемологической грамотности.
За пределами тестирования
На протяжении этой статьи я проводил параллели между философией науки и практикой тестирования. Но было бы ошибкой считать, что описанные принципы применимы только к проверке качества программного обеспечения. Они применимы к любой деятельности, связанной с принятием решений в условиях неполной информации. То есть, по существу, к любой деятельности в рамках продуктового развития.
Декартовское методическое сомнение релевантно для продуктового менеджера, который получает запрос на новую функциональность. Действительно ли пользователи хотят именно этого? Действительно ли проблема, которую мы собираемся решать, существует? Действительно ли предложенное решение является оптимальным? Каждое из этих утверждений заслуживает проверки, прежде чем будет принято как основание для инвестиции ресурсов.
Попперовская фальсифицируемость определяет качество продуктовых гипотез. Предположение "пользователям понравится новый интерфейс" не фальсифицируемо в такой формулировке: что значит "понравится"? Предположение "новый интерфейс увеличит конверсию на этапе регистрации на 15%" фальсифицируемо. Его можно проверить, и результат проверки будет однозначным.
Лакатосовская модель защитного пояса описывает динамику продуктовых решений. Когда метрики не соответствуют ожиданиям, первой реакцией редко бывает пересмотр стратегии. Сначала проверяется защитный пояс: корректно ли собираются данные? Репрезентативна ли выборка? Достаточно ли времени прошло для проявления эффекта? И только когда все эти объяснения исчерпаны, ставится вопрос о ядре: может быть, наша базовая гипотеза о потребностях пользователей неверна.
Бритва Оккама работает при архитектурных решениях. Сложная система с множеством компонентов имеет больше точек отказа, чем простая. Каждый дополнительный сервис - это дополнительный источник потенциальных проблем. Это не аргумент против сложных систем как таковых, но аргумент за осознанный выбор сложности там, где она действительно необходима.
Бэконовские идолы разума присутствуют в любой командной работе. Идолы площади - в коммуникации между разработкой, продуктом, бизнесом и пользователями. Идолы театра - в некритическом следовании модным методологиям и практикам. Идолы пещеры - в профессиональных деформациях, когда разработчик видит любую проблему как техническую, маркетолог как коммуникационную, а финансист как бюджетную.
Куновские парадигмы определяют, какие вопросы мы вообще способны задать. Команда, работающая в парадигме "мы создаём продукт для клиента", задаёт другие вопросы, чем команда в парадигме "мы строим платформу для экосистемы". Ни одна из парадигм не является объективно правильной, но каждая фокусирует внимание на одних аспектах и затеняет другие.
Юмовская проблема индукции напоминает о пределах предсказуемости. Прошлый успех продукта не гарантирует будущего. Рынок, конкуренты, технологии, пользовательские предпочтения меняются. Стратегия, работавшая вчера, может перестать работать завтра не потому, что была плохой, а потому, что изменились условия.
Философия науки формировалась как рефлексия над практикой получения достоверного знания. Продуктовое развитие есть практика получения достоверного знания о потребностях пользователей, возможностях технологий и жизнеспособности бизнес-моделей. Неудивительно, что инструменты, разработанные для первого, оказываются применимы ко второму.
Возможно, курс философии науки следовало бы включить в программу подготовки не только психологов, но и всех, кто работает с неопределённостью. То есть, по существу, всех.
Где искать дальше
Философские первоисточники - это многостраничные тексты на языке XVII-XX веков с характерной академической тяжеловесностью. Рекомендовать их к прочтению было бы лицемерием: я сам познакомился с большинством идей через лекции и вторичные источники, а не через штудирование оригиналов.
Для тех, кто хочет углубиться в тему, предлагаю более реалистичные отправные точки.
Википедия, как ни странно, даёт вполне качественное введение в базовые концепции. Статьи о Декарте, Поппере, Лакатосе, Куне и Юме на русском языке достаточно подробны, содержат ключевые идеи и ссылки на дополнительные материалы. Английская версия, как правило, полнее и точнее. Особенно рекомендую статьи "Falsifiability", "Paradigm shift" и "Problem of induction" - они изложены доступнее, чем биографические статьи об авторах.
YouTube содержит множество лекций по философии науки. На русском языке стоит обратить внимание на курсы ПостНаука и лекции Высшей школы экономики. На английском - Crash Course Philosophy даёт живое и краткое введение, а каналы вроде Philosophy Tube и Wireless Philosophy разбирают отдельные концепции более детально.
Научно-популярные книги часто излагают философские идеи понятнее, чем сами философы. "Мир, управляемый числами" Аарона Лакатоса (не путать с Имре Лакатосом) и "Чёрный лебедь" Нассима Талеба активно используют попперовские идеи. "Думай медленно, решай быстро" Даниэля Канемана перекликается с бэконовскими идолами разума, хотя и не ссылается на них напрямую.
Курсы на Coursera и других платформах предлагают структурированное введение в философию науки. Преимущество формата - видеолекции разбиты на короткие фрагменты, и можно выбирать только интересующие темы.
Для совсем краткого знакомства существуют серии "Very Short Introduction" от Oxford University Press и их аналоги. Книги объёмом в 100-150 страниц дают сжатый, но корректный обзор темы.
Наконец, если всё же захочется заглянуть в первоисточники, рекомендую начать с "Рассуждения о методе" Декарта - это одна из немногих философских работ, которая читается относительно легко и занимает всего несколько десятков страниц. "Структура научных революций" Куна тоже написана достаточно доступным языком. Остальное лучше осваивать через комментаторов.
Комментарии (19)

Elpi
17.01.2026 07:35Если отталкиваться от истории науки, то подход ваш оправдан. Но каждый человек (включая исследователей) создает себе свой мир (видение) и использует при этом свой словарь (причем глоссарий терминов чаще всего они не составляют). По этой причине часто слишком сложно и бессмысленно вникать в тексты, декодирование практически невозможно. (Хотя, ваши слова об оригиналах - и Вики и Youtube в ходе подготовки статьи могут указывать на недостаточную глубину проработки.)
Многие вещи давно уже переформулированы более точно и кратко. Вместо "идолов" есть правило "подвергай все сомнению", не надо городить лишнее.
Вы последовательно игнорируете диалектику. Нормальное развитие и революция - это "переход количества в качество". Придумывая новые "термины", вы лишь усложняете декодирование.
Предложенный вами исторический подход непродуктивен и дробит ясную картину. Есть классический цикл проблема-гипотеза-опыт-анализ-уточнение гипотезы. Т.е. вы снова усложняете без необходимости ради своего замысла текста.
Добавлю, что в рамках этого цикла нет понятие "достоверное знание" или "истина". Есть гипотеза, которую уточняют. И пользуются даже примитивными гипотезами не потому, что они верны и точны - а потому что другой пока нет, а двигаться (желательно осмысленно) надо.
Ваш тезис о познании потребностей пользователей спорный. Почти всегда хорошие приложения формируют новые потребности.
Ваши рассуждения о глубине тестирования и неистребимой вероятности существования неучтенных условий вводит в грех перфекционизма. Моя статья https://habr.com/ru/articles/370211/ как раз об этом. Только недалекий перфекционист при наличии выбора залезает на 5-й участок S-образной кривой. Большинство практиков чаще ограничиваются правилом Парето про 20% усилий - 80% результата. Нужен разумный компромисс, а не бесконечное тестирование за бесконечные деньги.

MDyuzhev Автор
17.01.2026 07:35Спасибо большое за развёрнутый и структурированный комментарий. Не смотря на то, что он с критикой, читал с удовольствием. Чувствуется серьёзная философская подготовка и академизм, и критика для меня ценнее десятка одобрительных кивков.
Вы правы по существу многих замечаний. Признаю: я не ставил перед собой задачу написать академический труд и не претендую на полноту охвата темы. Это скорее личная рефлексия практика, который пытается объяснить, откуда взялся его способ думать. Но это, конечно, не отменяет правил: если берёшься говорить о философах, будь готов к тому, что тебя проверят на точность.
По поводу диалектики - это осознанный пропуск, продиктованный форматом, а не неприязнью или незнанием. Но соглашусь: переход количества в качество описывает смену парадигм точнее и короче, чем мои обходные манёвры.
Замечание про перфекционизм принимаю. Вы правы: юмовская проблема индукции может парализовать, если не уравновесить её прагматикой. Парето и S-образная кривая - это как раз тот баланс, который я не проговорил явно. Спасибо за ссылку на статью, прочитаю.

eimrine
17.01.2026 07:35Спасибо за внушительный труд на мою любимую философическую тему! Я не согласен с вами в том что на ютьюбе есть информация на эту тему, потому что все источники которые вы указали не занимаются конкретно философией науки - это знание получается добывать только из книг. Поскольку я читал все упомянутые первоисточники кром "Рассуждения о методе" Декарта, мне статья зашла с одного прочтения и я сразу же увидел значительную недоработку.
До ката вы пообещали что расскажете и о проблеме индуктивного рассуждения тоже, но вы абсолютно не затронули никакую диалектику - поэтому, обещание оказалось невыполненным. Диалектика не поместилась бы в формат "один философ - один мем", потому что этот мем весьма долгоиграющий. Началось всё с апорий Зенона, пик развития диалектического метода был продемонстрирован в Платоновских диалогах (это там где Сократ разваливает всё и вся), серьёзный рестайлинг метода был предложен Гегелем после чего она стала называться диалектикой материализма. Причина по которой вы не упомянули это всё - на философских факультетах перестали давать диалектику, или у вас к ней личная неприязнь?
Ну и после прочтения статьи у меня появилось непреодолимое желание разобраться почему девиз "Nullius in Verba" не упомянут в статье тоже. Популяризаторы науки Нил Деграсс-Тайсон и Карс Саган когда-то все уши прожужжали о том насколько это важно было для своего времени, то есть до Карла Поппера и его фальсфикационизма, благодаря которому наука окончательно перешла от justificationism (догматизм) к fallibilism (признание того что мы ошибаемся).

MDyuzhev Автор
17.01.2026 07:35Благодарю за тёплые слова и за содержательную критику от человека, который читал первоисточники. Это ценно вдвойне.
Вы поймали меня на невыполненном обещании про индукцию и диалектику. Признаю: линия от апорий Зенона через Платона к Гегелю не вписалась в формат "один философ - один принцип - одна параллель с тестированием". Это было сознательное упрощение, но вы правы, что оно обеднило картину.
Про "Nullius in verba" - отличное замечание. Девиз Королевского общества действительно мог бы стать мостиком между историческим контекстом и попперовским фальсификационизмом. Спасибо, что напомнили - возможно, это материал для отдельного разговора.
По поводу YouTube - соглашусь, что для серьёзного погружения этого недостаточно. Книга Лакатоса лежит рядом, пока пишу Вам ответ. Но я исходил из реалистичной оценки: большинство читателей Хабра не откроют Поппера в оригинале, а вот короткое видео может стать точкой входа. Лучше поверхностное знакомство, чем никакого. Хотя вы правы: философия науки - это всё-таки книжное знание.

eimrine
17.01.2026 07:35Поппера открывать лично я не особо рекомендую. При всём уважению к его вкладу в науку, мне он показался сложнее других источников из статьи. Упомянутые мыслители писали более-менее для обычного человека, а Поппер - мне показалось что для философов.
Томаса Куна в состоянии прочитать даже кандидат в президенты, у меня это была одна из первых философских книг которую я дочитал до конца. При том что в конфликте точек зрения Поппера-Куна я больше на стороне первого, читать о науке как о явлении я рекомендую в изложении второго.

MDyuzhev Автор
17.01.2026 07:35Отличное уточнение, спасибо! Это как раз то, чего не хватало в разделе про источники - практический опыт чтения.
Забавный парадокс получается: быть на стороне Поппера в споре, но рекомендовать читать Куна. Хотя логика понятна - одно дело разделять идеи, другое дело продираться через текст. Поппер писал для академического сообщества, Кун умудрился написать книгу, которая вышла за пределы философских факультетов.
Пожалуй, добавлю эту рекомендацию в закладки: если выбирать один первоисточник для старта, то "Структура научных революций", а не "Логика научного исследования". Спасибо, что поделились.

conopus
17.01.2026 07:35Прекрасная статья. К сожалению, не в коня корм. Весьма распространенная вещь среди "технарей": апломб всезнаек и презрение к гуманитарным наукам и философии. Это и по комментариям здесь уже видно. Но может кого и заинтересует, как знать... Спасибо за список материалов!

MDyuzhev Автор
17.01.2026 07:35Спасибо за тёплые слова и за поддержку!
Знаете, я и сам не был уверен, что это зайдёт на Хабре. Тем приятнее видеть, что находятся люди, которым интересно заглянуть за пределы привычного инструментария. Философия науки - штука неочевидная, но если она хоть кому-то поможет иначе взглянуть на свою работу, значит статья своё дело сделала.
Рад, что список материалов пригодился!

Dr_Faksov
17.01.2026 07:35Почему-то вспомнился один из "Законов Мерфи" : "количество обнаруженных в программе ошибок конечно. В отличии от не обнаруженных - оно бесконечно по определению"

MDyuzhev Автор
17.01.2026 07:35Отличная цитата, спасибо! Прямо в точку статьи попали.
Для тех, кто не сталкивался с законами Мерфи: это набор шутливых "законов", которые описывают закономерности из разряда "всё, что может пойти не так, пойдёт не так". Родились в инженерной среде в конце 1940-х, когда капитан Эдвард Мерфи работал над экспериментами с перегрузками на базе ВВС США.
Несколько примеров из классики:
Если что-то может сломаться, оно сломается
Если что-то не может сломаться, оно сломается тоже
Бутерброд падает маслом вниз пропорционально стоимости ковра
А процитированный вами вариант - это уже специализация для разработки ПО. И он, кстати, красиво рифмуется с проблемой индукции из статьи: мы можем знать только о найденных багах, но никогда не можем быть уверены, что нашли все. Юм бы оценил.

Flammmable
17.01.2026 07:35Научно-популярные книги часто излагают философские идеи понятнее, чем сами философы.
Это прям бич. Читаешь научную статью по социологии - вроде всё по полкам. Читаешь монографию - как будто графоман дорвался до бумаги.
Вроде наоборот, в наш век переизбытка информации донесение мысли должно быть лаконичным и ёмким. Очень желательно в 140 символов.
Вроде кому как не гуманитариям это понимать.
Вроде кому как не гуманитариям это уметь.Ан нет.

MDyuzhev Автор
17.01.2026 07:35с одной стороны да, с другой стороны, честно могу сказать, что читать даже в переводе классиков экзистенцианализма, я не смог))) и буквы и слова вроде знакомые, но понять почти невозможно))) Мне повезло с преподавателями, кто смог донести основные концепции человеческим языком.

Flammmable
17.01.2026 07:35с одной стороны да, с другой стороны, честно могу сказать, что читать даже в переводе классиков экзистенцианализма, я не смог))) и буквы и слова вроде знакомые, но понять почти невозможно)))
Это с одной и той же стороны :)
Бывает, что непонятно ничего. А бывает, что всё понятно, но любое обоснование в тексте - сплошное "Я это гарантирую".
Того же Лосева читал:
Скрытый текст
Атеизм зародился в глубокой древности. Он появился, надо полагать, как следствие упадка общественной нравственности. Чем человек нравственно выше, тем более он религиозен, тем впечатлительнее он к проявлениям Божественного Разума. Ведь Бог не только служит предметом познания ума, он еще та цель, к которой мы должны стремиться. А поэтому понятно, что, если мы становимся выше в нравственном отношении, мы ближе к Богу и что, совершая дурные поступки, то есть становясь безнравственными, мы удаляемся от Бога и, быть может, даже его отрицаем. Итак, атеизм зародился на почве нравственной испорченности.
На каждую фразу - вопрос: "с фига ли?!"
А автор в каждой следующей фразе как бы говорит:
"С фига ли? С рояля!"А бывает, что автор как упомянутый по первой ссылке Девид Най - "на что гляжу, о том пою". Нет тезиса, нет возражений, нет аргументов, нет вывода. Как будто просто описание неких объектов глазами человека, который раньше ничего такого не видел, да и не особо ему это интересно.
smetconsulting
Ваш ответ на вопрос начальства: «Всё работает?»
MDyuzhev Автор
Не уверен, что правильно понял комментарий, но постараюсь ответить) это иронично, но я уже давно и есть то начальство, которое задает этот вопрос)) это не попытка кому-то на что-то ответить, скорее предложение выйти за рамки обыденного способа мышления и видения, предложение переосмыслить происходящее.
Я не ожидал, что будут просмотры, правда.
Наверное имеет смысл отдельно рассказать про опыт проведения психитатрической экспертизы и как это научило проводить собеседования.
smetconsulting
Вы руководите тестированием IT-системы.
Разработчики разработали, Вы тестировали, они исправляли, Вы опять тестировали, и т. д. И вот бюджет и сроки закончились, разработки и тестирование закончились, результат более-менее удовлетворительный. Пора выпускать продукт (IT-систему, ПО) в опытную (рабочую) эксплуатацию.
Начальство (заказчик) спрашивает Вас: "Всё работает?"
Что, как Вы ответите?
(Имейте в виду, что может возникнуть следующий вопрос: "Какие ещё ресурсы Вам надо, чтобы ... (завтра) закончить и выпустить продукт (IT-систему, ПО) в опытную (рабочую) эксплуатацию?")
MDyuzhev Автор
Мы даем актуальный статус каким бы он ни был, не очень понимаю смысла вопроса. А есть иные варианты?))
smetconsulting
Конечно, например:
- Да, работает;
- Нет, не работает;
- Ну ... [далее список по улучшению на ... страниц]
("- А раньше почему не сделали?! - Я говорил ...");
- ...Декарт, Поппер, Лакатос и Кун исходя из принципа фальсифицируемости, бритвой Оккамы - я только вышел потестировать...;
- я увольняюсь, дальше сами;
Есть ещё варианты. Но суть вопроса (из двух слов) проста.
О смысле вопроса. Каждый, независимо от уровня интеллекта и сферы его применения, в конечном итоге несёт ответственность за свои достижения и плоды своего труда, за которые получает вознаграждение. Меня тоже спрашивают об этом. Интересно, как другие (умные, знающие, опытные) люди отвечают на этот простой вопрос, состоящий из двух слов.