Pull to refresh

Comments 30

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

Есть, конечно, чрезвычайно узкий круг программ, которые реально что-то моделируют. Но среди терабайтов разнородных исходников их ещё поискать. Подавляющее большинство того, с чем реально приходится иметь дело (и со стороны разработчика, и со стороны пользователя) вообще ничего не моделирует. Ну не моделирует Ворд листок бумаги с карандашом. Электронная почта не моделирует доставку корреспонденции почтальоном. Бухгалтерская программка не моделирует гроссбух. Метафора чистого листа бумаги или гроссбуха может использоваться (пользователям так понятнее), но никаких моделей там нет и в помине.

Установка «программа должна моделировать реальный мир» — чрезвычайно деструктивный психовирус. Двигаясь по этой парадигме, мы гонимся за миражом программы, которая будет отражать реальный мир. Но реальный мир обладает недискретной сложностью, а у нас в руках дискретные инструменты. У множеств R и Q разная мощность, и тужиться свести первое ко второму — только зря гневить дух старика Кантора.

Впрочем, претензия совсем не к Вам. У почти всех мозги пожраны психовирусом моделирования.
Всех прёт с моделирование потому, что мышление — это, по сути, моделирование. То есть моделирование — это «забивание гвоздей» мозгом. :-)
Рискую показаться занудой, но со знаком равенства между моделированием и мышлением я не согласен.
А какой-нибудь аргумент можно попросить, что-то нибудь такое, что было бы в мышлении и интеллекте, но не было бы в моделировании. В механизмах, в элементах.
Пожалуйста.
Достаточно сравнить определения обоих понятий в Википедии. У понятий есть пересечение, но они далеко не тождественны.
Компьютерное моделирование не является частью мышления.
Отнюдь не всякая идея есть модель (в строгом определении этого понятия).
Определения? В Википедии? У, как строго и аргументированно.
Тогда — конечно.
Не все статьи в Википедии одинакового качества. Но с этими двумя я во многом согласен и считаю, что их вполне можно взять за основу.
Вы можете предложить свои определения. Но будет трудно по этим вопросам оспорить или превзойти Википедию.
Хотя я назвал два конкретных примера различия элементов. Чем они плохи?
Они ничем не плохи, просто я задавал Вам один вопрос, а Вы отвечали на другой. Плюс к этому, приписали мне то, что никогда не утверждал.
А статьи ничем не плохи, наверное.
Вы говорите, что две категории на самом деле тождественны. Я называю два элемента, каждый из которых принадлежит к одной категории и не принадлежит к другой. Либо мои примеры плохи и доказательство неверно, либо это всё же две разных категории. Разве это не опровергает Ваше утверждение о том, что мышление это моделирование? Или вы считаете что мышление это часть моделирования?
Я вообще ничего не говорил про категории, это раз. Я говорил, что суть феноменального ПРОЦЕССА мышления является моделирование. Вы не говорили ни про какие элементы, Вы НЕПРАВИЛЬНО приписали мне какое-то компьютерное моделирование и стали говорить о каких-то идеях. И еще про СТРОГОЕ (??!?!) определение. Даю справку: определение может быть строгим только в рамках какого-нибудь исчисления.

Давайте, забудем и разойдемся, Ваш уровень в этом вопросе я осознал, не думаю, что какие-то Ваши мысли об этом мне могли быть интересными.
Категории — это про упомянутое Вами Мышление и Моделирование. Это я их для удобства так охарактеризовал.
Компьютерное моделирование — состовная часть понятия Моделирования согласно определению Википедии и не только.
Философы тоже претендуют на строгость определений, вне рамок каких-либо исчислений.
Идеи — продукт мышления, опять таки согласно определению Мышления в Википедии.
Ваше сведение процесса мышления к моделированию я принять не могу. Ваши мысли, доказывающие этот тезис были бы мне и читателям Хабра наверняка интересны. Но если Вы настаиваете, разойдёмся.
Спасибо, что Вы нашли время прочитать статью.
В мышлении есть ещё до чёртиков всего кроме моделирования. Например, такая чрезвычайно интересная тема, как целеполагание. Во фразе «люблю пельмени» эти самые пельмени, если поднатужиться, можно за уши притянуть к моделированию (видимо, их же, пельменей), но «люблю» никаким боком в концепцию моделирования не упихивается.

Когда дело доходит до дела, подход «мышление = моделирование» и «информация = модель» в подавляющем большинстве случаев будет как чемодан без ручки. Например:
— Вот этот мой коммент — что он что моделирует?
— Конкретный HTTP-заголовок конкретной HTTP-посылки
— Просьба передать за проезд
— Страшно сказать: Конституция РФ
Чего это за модели и что они моделируют?

Упёртость в модели, мне кажется, является одним из печальных следствий чрезвычайно тупой и бестолковой философской традиции считать, что наше сознание только тем и занимается, что отражает реальный мир. Пусть господа философы сходят в нейрохирургию и спросят врачей, находили ли они в мозгах пациентов зеркала. Может быть и находили. Несчастные случаи разные бывают.
Даже умница Кант в своё время застрял в рассмотрении познающего субъекта :(

Правильный вопрос в том, что же такое оплодотворяет смыслом все эти познания, отражения и моделирования? Ну не может ведь быть так, чтобы деятельность была, а смысла и цели в ней не было, разве нет? Может быть, пора уже устать выносить смысл за скобки?
Ну не может ведь быть так, чтобы деятельность была, а смысла и цели в ней не было, разве нет?

Если верить Томасу Куну, Дарвина критиковали в основном за то, что он предположил, что эволюция происходит естественным путём а не по плану, начертонному Создателем.
Эволюция — не про тактику, а про стратегию. И даже не про стратегию, а про метастратегию. Знать про эволюцию и понимать принципы её работы — чрезвычайно полезно (хотя бы для того, чтобы не попадаться на крючок сказок про Создателей), но уходить в глубокие теортизирования о глобальных первоистоках при решении простых приземлённых тактических задач — сомнительная практика.

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

Забавная ситуация. В нашей повседневной ежеминутной деятельности смыслы и цели — основа основ, отправная точка для любого телодвижения. Но думать мы о них не умеем. В лучшем случае удвигаем в высокомудрые рассуждения о глобальной эволюционной целесообразности, а в худшем просто выносим за скобки и отказываемся об этом думать.
Сама публикация довольно интересная. Такие довольно сложные темы возможно редкость. Программирование это не только познание мира, то есть моделирование реального мира как такового и упрощенное его отображение. Материализация некоторых ментальных сущностный. Какой может быть смысл и цель для человека — это возвращение в рай(возможно построение некоторого рая ) или некоторая реализация бытия, то есть реализация некоторой уже запущенной программы?
Вопрос уходит возможно в предназначении человека, человечества. Допустим человек для познания мира. Тогда он будет создавать программу для познания человека? Но он будет переносить свою ментальность в то что он создает? Цель в улучшении мира? Но мир уже и так идеален — он существует. В чем смысл и цель? Смысл может быть найден, но цель… Какова конечная цель существования мира? В его бесконечности? Возможно такие размышления — софистика.… И как бы не от чего «оттолкнуться» в поисках. Как будто вы отталкиваетесь от некоторого «вакуума» или минус бесконечности. Сама цель «познание мира» — это некоторое врожденно качество( свойство) человека. А цель, возможно, что можно улучшить в себе? Публикация наталкивает на размышления.
Какова может быть цель создания такой парадигмы — облегчить себе мышление? Делегировать мышление биологических существ не биологическим?
У людей есть некоторое сознание.
Вопрос есть ли сознание у окружающей не биологичкой материи?
Что такое воля? Есть ли воля у окружающей не биологической материи?
Некоторые вопросы философий и религий пересекаются.
Или я плохо объяснил, или Вы невнимательно читали.
Я не ратую писать программы, что-то моделирующие.
Я предлагаю подумать о модели (моделях) будующей программы (системы) перед тем, как начинать её программировать. Нужны ли модели, если да — какие — это отдельный вопрос.
Предлагается понимать процесс программирование как построение таких цепочек.
В простейшем случае в цепочке только два звена: ментальная модель и код программы.
На мой субъективный взгляд, проблема современной разработки ПО заключается не в сложности/сроках перевода Идеи в Готовый Продукт, а в том, что не смотря на развитие технологий семимильными шагами, введения невероятного числа (и уровня) асбтракций, у нас до сих пор Инструмент формирует Сознание. Мы думаем о том, ЧЕМ Идея будет реализована в Продукт. В этой «могиле» лежат триллиарды долларов и тысячелетия затраченного времени, но до сих пор всё зависит на 99% от коньюнктурно меняющегося инструментария.

В начале нулевых некий сферический бухгалтер в вакуумной конторе средней руки боялся «ойтишника» как огня: «Сейчас они придут, поставят 1С и меня уволят!1111». Он делал свою «ценную рбаоту», разбирался в «сложных вопросах» и был «незаменим». Сейчас «ойтишники» стали теми самыми бухгалтерами, только 1С еще не появился… пока не появился.
Я согласен с Вашим тезисом о том, что Инструмент формирует Сознание. Иногда он его даже деформирует.
Очевидны преимущества эксковатора перед лопатой при прокладывнии каналов и автомагистралей. И преимущества IDE по сравнению с простым текстовым редактором в большом проекте тоже очевидны. А вот с инструментами управления проектами что-то не так.
Я не раз замечал, что они ориентируют их пользователей на мелочи, усугубляют их т.н. клиповое мышление. Как в музыкальных клипах — отдельные фрагменты вроде хорошо сделаны, а общего смысла нет.
Я не хочу сказать, что Jira, Polarion и их собратья совсем плохи или вредны. Но в них не хватает важных возможностей, либо мне не повезло эти возможности наблюдать в деле.
Важнейшие вопросы — сколько процентов уже сделано? Когда закончим? Они решаются за пределами этих инструментов.
Или я не прав?
в данном случае проблема шире. Сколько всего сделано за последние годы для «улучшения жизни», языки, фреймворки, утилиты, виртуализаторы и оркестраторы, а в сторону фронта вообще нельзя смотреть без боли там же ад кромешный!

У Вадима Шефнера есть замечательный рассказ «Скромный гений», один из его персонажей предлагает построить «Завод по открыванию консервных банок.» Мне кажется сегодня потребители IT продукции просто не понимают за какие чудовищные заводы им приходиться платить бешенные деньги, ради того, чтобы открыть консервную банку.
Признаться я не понял ни первой ни второй части.
Вы можете коротко сформулировать суть проблемы? Как Вы её видите?
В буквальном смысле потребители ИТ продукции платят не так уж много и получают взамен не очень тривиальные продукты и сервисы. Не раскроете свою мысль про открывание банок поподробнее?
Жил был Кролик, покупал морковку в магазине на 100р в год. Подумал: «Зачем так много платить? Нужно экономить! посажу Морковку у себя в огороде.» Взял лопату, копнул пару раз, устал, труд монотонный, поливать надо, сажать убирать… и решил, а давайте лучше сделаю ферму на гидропонике! Сел за расчеты модные, купил банки чтобы сажать и бланки, чтобы подписывать банки, разработал систему полива, автоматику там внедрил, рассчитал экономический эффект. Капитальные вложения в 1000р разделил на экономию и обрадовался, что уже через 5 лет его система окупиться!

Прошли два года, система поизносилась и морально устарела. Об окупаемости Кролик уже не думал, он вложил еще 1000р и модернизировал систему микроклимата и строгого контроля подачи питательных веществ.

Теперь он мог сидеть в кресле, и с наслаждением поддерживать свою мини-ферму в работоспособном состоянии до старости. Конечно не забывая обновляться каждые 2-3 года.


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

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

В данном примере проблема видна и очевидна. В нашей же области, «Лопата» просто отсутствует(!) и не потому, что ее нельзя сделать, а потому что все покупают фермы на гидропонике!

В нашей же области, «Лопата» просто отсутствует(!) и не потому, что ее нельзя сделать, а потому что все покупают фермы на гидропонике!

Надеюсь я правильно понял Вашу мысль: Можно было бы делать дешёвые продукты, но все хотят покупать дорогие. Но это не так. Почти в любой области ПО есть дешёвые либо бесплатные альтернативы. И у них есть свой рынок.
Хотя соглашусь с Вами в том, что нередко покупается SAP там, где хватило бы Excel.
Кролики и Лопаты здесь для того, чтобы вызвать у каждого человека свои ассоциации. Инструментами могут быть не только SAP, но и Docker, Google Chrome или XML формат.

Иногда лопата есть! Например, XML формату легко выбрать куда менее тяжеловесную альтернативу. Но я говорю о том, что люди зачастую начинают ДУМАТЬ в XML. И тем самым они даже помыслить не могут об альтернативе этому Инструменту, ведь они уже навесили на свое приложение задачи, которые хорошо решает именно XML, забывая о том нужно ли решать эти задачи для достижения Цели.
Не уверен, что аналогии с допатами и кроликами так уж плодотворны.
Если оставаться в терминологии программной инженерии, ваш тезис сводится к тому, что у некоторых коллег наблюдается излишняя любовь к определённым инструментам, которые они пробуют применять где надо и не надо.
Иногда это объясняется незнанием альтернатив. Часто — особенностей и глубин использования любимого инструмента — например — используемого языка программирования.
У многих нет времени изучить альтернативы.
Я думаю, принятие на вооружение описанной в статье парадигмы материализации может помочь в выборе правильных инструментов.
Хотя на данный момент это больше гипотеза и надежда, чем доказанное утверждение.
Далеко не всегда и не всему есть альтернатива.
Опять же, какая альтератива у JS?
Если Вам надо реализовывать много логики на JS, можно рассмотреть в качестве альтернатив:
  • Чистый JS
  • TypeScript
  • CoffeeScript
  • Генерацию из Kotlin

и т.д.
Ну а если Ваш JS переплетён с HTML — то тут тьма фраймворков, которую кажется Вы упоминали.
Очень хороший пример.
Вместо Капельного Полива вы предлагаете сделать Аэропонику или Фитильную систему за счет поверхностного натяжения. но всё это Гидропоника, а где Лопата?

Всё Вами описанное — те же яйца, только в профиль.
В качестве правильного ответа можно было бы привести WebAssembly.
У меня ощущение, дискуссия зашла в тупик. Я прощаюсь.
Sign up to leave a comment.

Articles