Комментарии 27
надо брать все, изложение у них разное, будет лучше усваиваться )
можно постепенно подниматься по временной линии до 80х
только избегайте книги «Как стать гением» от Альтшуллера — она и не про ТРИЗ, и не про то, как стать гением
Автор статьи поднял интересную тему. Любопытно проанализировать процесс построения известных языков программирования и попытаться найти здесь сходство с принципами ТРИЗ. Я просто упомяну еще раз А. Кэя, Ч. Хоара (см. тьюринговскую лекцию) и таких известных архитекторов-минималистов, как Н. Вирт и Ч. Мур. Надо сказать, в языке Форт, стараниями Мура и Броуди, зародилась сходная с ТРИЗ «теория решения программистских задач».
очень простыми словами: [внешние обстоятельства] нас **** [отвлекают от цели нетрадиционными способами], а мы крепчаем [достигаем поставленной цели].
кстати, прокрастинация — тоже внешнее обстоятельство.
Мне показалось заслуживающей внимания некоторая схожесть подходов абсолютно независимо развившихся направлений интеллектуальной деятельности человека.
ТРИЗ это, грубо говоря, набор мыслительных приемов, которыми чаще всего успешно решались инженерные задачи и некоторые обобщения поверх них. В основе — статистический анализ патентного фонда. И поэтому на самом деле не так уж удивительно, что во многих технических решениях можно обнаружить какой-то «прием из списка». Это не доказывает, что там применяется ТРИЗ, а значит лишь, что ее авторы провели неплохую аналитическую работу и выявили достаточно общую закономерность.
А универсальных инструментов не бывает. Кому-то удобно взять формулу из справочника, кто-то лучше сам выведет на месте, а для каких-то случаев, не то что готовой формулы, но и базовой теории не разработано — выкручивайся как знаешь.
При слове ТРИЗ, часто вспоминают
Часто ли? Уверен, что аббревиатуру ТРИЗ знает ни такой уж большой процент населения. Я вот не знал. Поэтому стоило начать публикацию с её объяснения.
правильно hold :: Cup -> Coffee -> Bool, потому что hold — это отношение, а не функция.
Инженер, работающий на заводе, наверняка, сможет использовать ТРИЗ как есть. Его задачи похожи на те, для которых она изначально разрабатывалась. Кроме того, что их просто много — что не допонял по книгам, почувствует на практике.
Если же Вы зарабатываете в другой сфере/в другой должности, то для использования ТРИЗ ее придется адаптировать под свою специфику проблем и опыт накопленный в данной области. Т.е. активно включать голову. И в этом случае стоит сперва (чтобы снизить вероятность горьких разочарований) ответить на вопрос — зачем? Стоит ли оно того или может лучше работать традиционными методами?
Нет там теории.
Тут с Вами не соглашусь.
Теория — это согласно, например, толковому словарю Ожегова
1. Учение, система научных принципов, идей, обобщающих практический опыт и отражающих закономерности природы, общества, мышления. (Философская т. Т. познания. Т. относительности).
2. Совокупность обобщённых положений, образующих науку или раздел какой-н. науки, а также совокупность правил в области какого-н. мастерства. (Лингвистическая т. Т. шахматной игры).
3. Сложившееся у кого-н. мнение, суждение, взгляд на что-н.см.
см. https://dic.academic.ru/dic.nsf/ogegova/240670
ТРИЗ обобщает практический опыт (как я писал в комментарии выше, она выстроена на статистическом анализе патентного фонда) и отражает определенные закономерности (многие из приемов, выявленных Альтшуллером и Ко можно найти и в современных патентах), хотя на науку все-таки не тянет, да.
Определение ТРИЗ как «совокупность правил в области какого-н. мастерства» подходит точно. Мастерство — изобретательство (решение изобретательских задач), правила: 40 типовых приемов разрешения техн.противоречий, АРИЗ — алгоритм решения изобретательских задач, т.н. вепольный анализ (суть тоже полуграфический алгоритм).
Также подходит и определение «Сложившееся у кого-н. мнение, суждение, взгляд на что-н.».
Т.о. Теория Решения Изобретательских Задач называется теорией вполне правомерно.
Вся ваша ТРИЗ/АРИЗ сводится к одному: «не выходит прямо — сделай криво».
ТРИЗ еще предлагает ряд типичных способов, как именно делать, которые можно перебрать и с некоторой (обычно достаточно высокой, чтобы потратить время на такой перебор) вероятностью получить некое удовлетворительное решение. Фактически, ТРИЗ — это просто набор паттернов, только более высокого уровня, чем условные фабрики с синглтонами. При этом, конечно, нет никакой строгой теории, из которой эти паттерны выводятся, они происходят чисто из некоторых эвристических соображений вида "хорошо лучше, чем плохо".
А это задача провальная изначально.
Почему же провальная? Вполне себе непровальная, если вместо задачи "получить успешное решение в 100% случаев" решать задачу "получить успешное решение в х%" случаев, где х — некоторая априорная величина, следующая из анализа предметной области. В итоге из проблемы нерешаемой мы получили проблему решаемую, с конкретным практическим профитом. Кстати, такая замена — одна из ТРИЗовских схем :)
Мыслить только «паттернами» в настоящем творческом процессе нельзя. Это профанация.
Так инженерное дело (что железки собирать, что программирование) — это и не творческий процесс. Инженер — не художник. Ему не надо что-то там самовыражать, разливая краску на холсте или прибивая яйца к мостовой. Ему надо получить конкретный результат в рамках конкретных ограничений.
Ну, к примеру, я могу не знать названия «синглтон». Я скажу — «объект, который может быть только в единственном экземпляре».
Ну вот когда вы знаете, что существует «объект, который может быть только в единственном экземпляре», что их можно сделать и использовать определенным образом, для решения определенных задач и это имеет определенные плюсы и минусы — то это лучше, чем если вы не знаете и изобретаете велосипед. Вот и все.
Попытка формализовать умение думать
При чем тут попытка формализовать умение думать? Речь о попытке формализовать некоторые методы, которые по факту используются, но не осознанно. Например, ту же регуляризацию (замена некорректной задачи последовательностью корректных задач, сходящихся к исходной) используют все люди постоянно, но осознанно — только те, кто ботал матан или читал ТРИЗ. Аналогично с синглтонами — вы можете сами изобрести синглтон и постоянно переизобретать, но когда он у вас есть в голове как концепция, это дает плюс и к скорости поиска решения и к качеству его использования.
Такое пока ни один алгоритм и ни одна нейросеть не смогла.
Любая инженерная задача решается полным перебором, нейросети довольно-таки хороши в ускорении полного перебора (с-но, именно так нейросеть в вашем мозгу "творческим процессом" и занимается — просто ускоряет полный перебор за счет грамотного отсечения).
Инженерное дело — это творчество, уверяю вас.
Творчество предполагает уникальность результата. Два художника в равных условиях не напишут одинаковую картину. А вот два инженера вполне могут дать одинаковые решения.
Если я один раз изобрёл синглтон, он у меня до конца сознательной жизни останется в голове как концепция.
Так в том и дело, что тот факт, что вы синглтон использовали, не значит, что вы его изобрели как концепцию.
Потому что они бросаются решать задачу «сверлить», а нормальный человек сначала подумает, а нужно ли эту задачу решать. И не нужно ли решить другую задачу так, чтобы первая задача потеряла смысл.
Как раз наоборот, скорее бросится сверлить тот, кто ТРИЗ не знает.
И что при этом происходит в сознании человека (да и многих высших животных), что толкает его в том или ином направлении обдумывания, до сих пор толком не известно.
Опыт и рандом толкает
Она не может выйти за рамки и сказать: «а давайте не сверлить вообще». Её учили сверлить.
Человек, представьте себе, тоже.
_могут_ выдать, а _могут_ и не выдать
> Поставьте художникам чёткое техническое задание (не принимая аргумент «я так вижу») — и их результаты будет сложно различить.
Ага, но дело в том, что работа художника состоит как раз в постановке задачи, в первую очередь :)
То есть творчество — оно в области постановки, не в области реализации.
> Если я не знал о синглтоне и разработал концепцию с нуля — я его изобрёл для себя.
Так кто говорит о разрабокте концепции синглтона? Между использованием синглтона и разработкой его концепции большая пропасть. Вот все программисты используют монады, но никто при этом концепцию монад не разрабатывает :)
И чтобы понять, что вы используете монады, вам требуется узнать концепцию монад. Так и тут — вы будете использовать синглтон ничего не зная о том, что это какая-то там концепция. Со всеми вытекающими.
> Человек — может.
Пример приведете, когда такое бывает? :)
> Вот лежит перед ним кирпич. Он смотрит по сторонам — в углу валяется трубка. Трубка вызывает ассоциацию со шлямбуром — пошёл процесс.
Так он знает что такое шлямбур, то есть ни о какой новизне речи нет, человек напрямую использует уже имеющиеся знания и навыки :)
А если б не знал, то с чем были бы ассоциации?
> А нейросеть, наученная сверлить, вопросов задавать не будет. Дали на вход кирпич — будет сверлить до посинения.
Так если вы человеку скажете сверлить кирпич и дадите палкой по голове для стимуляции — тоже будет сверлить до посинения. И до картины он не додумается, потому что ничего про нее не знает — вы же сказали четко: «сверли кирпич, скотина!» — и по голове палкой!
Если же вы нейросети дадите задачу повесить картину, ну она как-то и будет ее решать, а не задачу сверления.
Этап внедрения Альшуллер в своих работах (из тех, что я читал) особо не затрагивал.
Вообще новый продукт внедряется в производство и выводится на рынок в результате усилий целой команды, заметная часть которой может совсем не быть технарями (экономика производства, логистика, реклама, продвижение, продажа и пр.). Автор разработки — ключевое звено, но от него до потребителя идет длинная цепочка людей и процессов. Впрочем и начинается эта цепочка не с разработки продукта как такового. Современные тризовские авторы, получившие опыт в условиях капиталистической экономики, делают особенный акцент о том, что начинать надо с определения того, что нужно рынку (сравнение рыночных трендов и законов развития техн.систем). Затем выбирается перспективный объект для изменения (изучение патентного ландшафта, линий параллельной эволюции). Затем ищется ключевая проблема. И наконец выявленная проблема решается техникой классической ТРИЗ.
Цифра особенно важна, потому что вопрос «Если ты такой умный, чего ж ты такой бедный?» у разработчика (не хоббииста) всегда стоит в полный рост.
А в чём отличие капиталистической экономики от плановой? Всегда так: находишь проблему
Видимо, в способе определения проблемы. В случае рыночной экономики проблема — это то, за решение чего вам заплатят деньги. А в плановой экономике — это то, что назвали "проблемой" в условном министерстве планирования.
С-но, и несколько разные будут подходы к решению — если в первом случае вам надо удовлетворить желаниям пользователя, то во втором — некоему (а иногда — вполне конкретному) лицу в министерстве.
ТРИЗ, Haskell и функциональное мышление