По-моему ответ очевиден. И его используют 1000чи лет.
Сиди с утра до вечера и изучай науки. И будешь умнее (задействовать больше нейронов) чем неуч.
Или пей пиво с утра до вечера. Неиспользуемые нейроны организмом удалятся из мозга.
Пример. Люди которые не пользовались речевым аппаратом с детства (маугли) в возрасте теряли навсегда возможность говорить. Только язык жестов. Участок мозга отвечающий за речь попросту удалялся.
С зрением та же история. Слепой с рождения но прооперировав глаза в в взрослом состоянии то же не могут видеть как обычный человек.
количество нейронов у младенцев и взрослого человека
То сразу выдаст это:
В мозгу новорожденного 150-200 миллиардов (!!!) нейронов, в мозгу взрослого человека – в 2 раза меньше. Нейроны либо соединяются, формируя нейронные связи и укрепляя их, либо отмирают. В ваших руках и в руках людей, влияющих на развитие малыша – судьба большинства нервных клеток малыша
Если вы имеете ввиду что 95% нейронов находится в резерве и не участвуют в работе нейросети, т.е. никуда не подключены и никогда не активируются, то множественные исследования анализ энцефалограмма говорит об обратном.
Весь массив головного мозга активируется в то или иное время.
И вообще все нейроны в мозге в момент когда мозг только появляется и растёт имеют одну особенность. Каждый нейрон как дерево. И его дендриты как корневая система. Растёт хаотично. Нейрон может иметь десятки тысяч дендритов. И далее вся эта каша дендритов и аксонов соединяется хаотично. Что до куда доросло и соединилось в случайном порядке.
Поэтому младенцы такие… может даже и сознания не имеют. Чисто первобытные инстинкты. Т.е. участки головного мозга где формирование нейронов отвечает уже жёсткая структура заложенная в ДНК. А не неокортекс — с его каше- структурой.
Ну а далее в процессе жизни уже идёт настройка нейросети. Миллиарды аксонов отсыхают, миллиарды вновь прорастают.
И вот тут уже можно говорить о развитии мозга. Потому ка архитектура нейросети будет разная. Как её настроишь так и будет работать.
Поэтому о 95% работы мозга говорит не корректно.Можно говорить только об качестве настройки архитектуры нейросети.
Хотя в некотором виде вы правы. Замечено что у людей интеллектуалов бороздок в головном мозге после смерти больше чем у маргиналов. Однако это вроде связанно как раз с отмиранием нейронов в процессе жизни за ненадобностью. На старте у всех примерно одинаковое количество.
Ну и да большее количество нейронов не всегда преимущество. Его может обыграть более специализированная архитектура. У Эйнштейна был вполне обычный мозг.
Ну так мы же всего 5% мыслительных способностей используем
Это такая же информация, как и теория расщепления вселенных и прочего бреда.
Ваш мозг состоит из нейронов. Работа нейрона это его активация. Поверьте — вам не понравится если все ваши нейроны активируются в 1 момент. Хотя те кто переносил приступы эпилепсии — говорят что для них это было как полное отключение сознания.
Что бы ваше сознание работало "правильно" каждый нейрон должен активироваться тогда когда нужно. Согласно построенной карте нейросети.
Сколько не сталкиваюсь в обсуждении эксперимента с щелями — каждый раз одно и тоже. Много слов — что бы навести магию и мистику. И в результате получить ничего.
Почему никогда не обсуждают как устроен детектор. Вот реально — НИКОГДА.
Что вообще этот МИФИЧЕСКИЙ детектор из себя представляет?
А что если детектор в щели есть — но просто не включен, тупо провода, оптоволокно или ещё что там может быть, просто не подключены никуда. Что будет с дифракционной картиной?
И как вообще этот детектор работает? Может он тупо поглощает фотон, а потом излучает совершенно другой? А т.к. он будет переизлучён за щелями — собственно и получаем что и должны получить — никакой дифракции.
К вам никакой претензии не имею. Просто реально достало. 100 раз читаешь обсуждения и всегда одно и тоже. Магия, расщепляющаяся вселенная и прочий бред.
А вот то место где реально происходит "как бы" парадокс — детектор. Вот никто просто в упор это не видит.
Дошло до абсурда — детектор азм есть наблюдатель! А кто наблюдает — человек! Алилуя. Давай строить куча бредо-теорий.
но в общем то знать инструмент которым так или иначе пользуешься полезно
Так в том и вопрос и проблема одновременна.
Химера говорит на твоём языке. Я как программист понимаю химеру. Я понимаю математическую абстракцию реализованную в программе.
Но на практике часто тебе кидают чистую математику. Чистые математические абстракции написанные на "древнеарамейском" ))). На которые я смотрю и ничего не понимаю. И делаю вывод что я такое никогда не применял в программировании. И прекрасно без этого справляюсь.
Я не математик, но честно говоря не вижу ещё более простое математическое определение которое доказывало бы утверждение "от перемены мест слагаемых сумма не меняется."
А как символьные вычисления работают-то?
да вы правы. Я опустился до уровня процессора. И арифметически логического устройства.
Но никто не мешает сделать программу которая будет оперировать абстракциями, тупо пропускать через блоки if-else стринги и получать на выходе такой же стринг.
И только человек может этот стриг определить как математическую формулу.
Но в таком варианте сам компьютер как раз не оперирует математической формулой. В АЛУ она не участвует.
Компьютер просто одну картинку превращает в другую на выходе. И только человек интерпретирует эту картинку как формулу.
Проблема такой программы в том что на выходе она нам даст картинку-формулу. Но если на вход такой программы мы подадим число с миллионом цифр после запятой, то компьютер не сможет использовать эту формулу и получить результат в виде точного числа. Разумеется можно написать программу которая будет последовательно вычислять значения после запятой. Но она не может делать это до бесконечности.
Есть чистая математика. Но заставить её работать на компьютере не получится. Не работает процессор с математическими абстракциями. Вот и появляются промежуточные науки как натянуть сову на глобус как заставить работать математическую формулу в процессоре с приемлемой точность.
К какому разделу эта наука принадлежит? К математике? К программированию?
Собственно я строю свои различия математики и программирования основываясь на чистой абстрактной математике. Потому как различие между химерами… Там они стираются. Там программатика какая то.
Так же можно парировать что в общем то программа в общем служит часто одной цели
Ваша утверждение базируется на рассмотрении одной программы. И оно очевидно. Каждая конкретная программа будет делать только то что в ней запрограммировано, одна цель (цели), и не более.
Я же рассматриваю все программы и математические теоремы одновременно. И на этом базирую различие между этими классами.
Все программы могут делать что угодно каждая по отдельности. У них нету базового закона для всех сразу.
В то время как в математике этот закон есть. Вся математика предназначена для одной цели. Нахождение закономерностей. Нахождение любых закономерностей где угодно. Многие "сумасшедшие" математики придумывают свои вселенные со своими законами и ищут там математические закономерности.
Как бы выглядела вселенная в которой п равнялось бы 4? И подобное.
Математика это слишком широкое определение и, как видно, для каждого свое.
Да. И современное программирование это тоже от веба до mobile, от эмбедит до софта, от геймдева до квантмеха и ещё куча всего.
Собственно получаем две огромные кучи которые тут и там начинаю приравнивать друг другу, т.к. начинают сравнивать частности.
Я же, в дискуссии, пытаюсь предложить варианты различий всей кучи. Опять же дискуссия ради поболтать, не более )
Ну это аксиома. Т.е. недоказательные утверждения. Они настолько логичны что не требуют доказательств. Вообще все теоремы доказываются на основании других теорем. А вот начало этой доказательной цепочки это как раз аксиомы.
И да вы не докажете ваш пример "коммутативность сложения" а по простому "от перемены мест слагаемых сумма не меняется" с точки зрения математики. Математика говорит так есть и всё тут. Опять же с помощью чисел вы можете доказать только какой то предел. Вплоть до бесконечности не получится.
Зачем тут бесконечная точность?
Про бесконечную точность я говорю исходя из того что математика предоставляет нам формулы. Которые оперирую переменными. Подставляй любое число (хоть бесконечность), и формула выдаст правильный ответ. Ну или должна выдать.
Программирование в свою очередь оперирует с конкретными числами. И предел точности работы программы будет всегда в пределе точности этих чисел.
Я просто декламирую отличие математики от программирования. А то тут в процессе дискуссии постоянно поднимается вопрос про их тождественности.
Вот я и ищу фундаментальные отличия.
Наверно это вырвано из контекста, но приведённая в данном виде вызывает некоторое недоумение.
Честно говоря я не уверен что на земле существует реальная программа доказывающая теорему. Ну т.е. последовательно выполнение операторов процессора.
Потому как программа это компьютер. А он работает с переменными конечной точности.
Математические доказательства никогда не оперирует числами, а оперирует абстракциями в виде переменных. x,y и прочее.
Все операции проводятся над этими абстракциями что бы получить в конечном счёте математическую формулу, которая может обеспечить бесконечную точность. Т.к. не оперирует цифрами, а абстракциями.
Кстати это ещё одно фундаментальное отличие программы от математики. Программа всегда будет выполнятся на процессоре и оперировать с переменными конечной точности.
Математика всегда будет оперировать абстракциями бесконечной точности. Т.к. точности как таковой у них и не будет. Нет чисел, нет точности либо точность бесконечная.
Процессоры не работают с абстракциями, они работают с битами.
Что то я дописался до того, что доказательство теорем с многостраничной записью это есть программа. Если рассматривать каждый шаг доказательства как шаг программы.
Уроборос какой то )))
Ладно добавим ещё одно фундаментальное отличие, но уже математики.
Любое доказательство теоремы, собственно любая математическая единица служит только 1 цели. Нахождение природной зависимости в числах. Фундаментального закона. Свойства нашей вселенной или вообще всех вселенных. Придумайте как сами это назвать.
Целью же программы может быть абсолютно любая. Или вообще без цели.
Можно долго спорить где и как пересекаются программирование и математика. С разных углов они либо похожи, либо одно и тоже, либо разные вещи.
Однако я хотел бы обозначить одну фундаментальную особенность чем программирование отличается от математики.
И это:
Как не странно результатом программирования будет программа.
И главная особенность программы — это то что она состоит из последовательно выполняющихся шагов.
Результатом математики будет теорема и следующая из неё формула.
Отсюда любой шаг программы — может быть как раз математической, формулой. Т.е. шаг может быть как раз той самой математикой.
Получается что программирование может включать в себя математику как шаг программы. В тоже время по этому принципу математика не будет является программированием.
Опять же шаги это как правило вызов готовых функций, в которых и реализована математика. Поэтому программист напрямую не работает с математикой а только с её результатами.
Это как например человек использует автомобиль, но это не делает его конструктором автомобилей.
И да. Оппонент сразу может придраться к моему определению математики. Мол простои использование теорем в качестве инструмента для получения результата. В данном случае такая писанина как не странно будет похожа на программирование. Только записанная на листе бумаге. Последовательное выполнение шагов с использованием формул теорем для получения конечного результата. Точно также как это бы делала программа.
Вы применили крайность. А крайности как правило не валидны.
Понятно что любой человек в той или иной степени оперирует каким то объёмом информации у себя в памяти. Иначе это и не человек вообще.
Вся разница в количестве и разновидности этой информации.
И программисту для выполнения работы требуется запредельное количество специфической информации. Это алгоритмы, коды, абстракции.
Так вот по моим наблюдением оперирование этой информацией для мозга чрезвычайно затратно. И если человеку не нравиться, т.е. нету дофаминовой поддержки, мозг сопротивляется максимально сильно.
И программисты со временем развивают свою нейросеть для работы с этой специфической информацией. Т.е. со временем, когда дофаминовая поддержка уже сводится на нет, мозг уже натренирован. и можно работать дальше без поддержки.
Вот вы привели другие примеры информации. Например есть люди которым легко даются языки. Или люди актёры, которые запоминают сценарий фильма, пьесы.
Они тоже тренируют свой мозг. И если это им нравится, то им легко даётся манипулирование информацией специфичного для себя класса.
Как я уже говорил много раз. Все способности — это желание изучать конкретную информацию. А уж что тебе нравится или нет — это уже матушка природа и батюшка геном решают.
Не знаю как это работает в голове. Но если долго работать над проектом где есть тысячи функций и если кликнуть в любое место проекта сразу будет понятно что и как тут работает. Видимо подгружается из памяти.
Одновременно в быстрой памяти смысла держать всё это нет. Однако пытаясь разобраться с алгоритмом в программе приходится одновременно держать в голове пару десятков функций. И в течении рабочего дня к этим десяткам прибавляются другие десятки, а уже ненужные выгружаются из головного кеша.
Часто находишься в состоянии когда в голову нужно загрузить ещё информации, но уже не можешь, смотришь на очередной код, а он расплывается перед глазами. После этого просто включаешь на пару минут какой нибудь развлекательный сайт. Даже не особо вчитывавшийся что там. Но это позволяет разгрузить кеш в голове. Потом переключаешься обратно на проект.
И да всё это относится к сложным проектам. В программировании есть куча задач линейных. Те же формошлёпства. Там подход линейный, мозг практически не загружается, и ты просто отдыхаешь на таких задачах.
С геймдевом вообще не пересекался, но со всем остальным наверно со всем.
Разве в геймдеве сейчас не рулят движки? Юнити там разные. Где игрописатели фактически только API движков дёргают.
Хотя если новый движок писать, то согласен там прилично математики, например туже физику земного притяжения описать. Полёт стрелы там и прочего. Или геометрию пространства.
Но разве это реализуют с нуля? Наверняка уже написано 100500 библиотек которые реализуют всю эту физику.
Я только знаю что делает алгоритм. Но как он это делает? Я пытался разобраться. Но просто прочитав это — я понял что этого не достаточно. И так как мне это не надо было просто бросил.
Мне была достаточна абстракция — подаю на вход числа, получаю на выходе.
А вот дальше эти числа уже использовались в вышестоящем алгоритме.
Который я уже реализовывал сам. И математики по моим внутренним убеждениям там не было.
Хорошо пусть будет логика. Да логику я использую всюду. Собственно программирование без логики не может быть. А вот без математики ))) Тут как раз и ведём дискуссию, может или нет.
Я это отношу как раз к математике. Однако я это использую в своей работе. Просто я беру функцию где реализована вся эта математика и просто пользуюсь результатами. И т.к. я сам не реализовываю эту математику — то считаю что я не пользуюсь математикой. Но получается что я пользуюсь только результатами математики ))) Как минимум мне надо знать о существовании таких алгоритмов и где о ни используются.
Опять же вы пишите что в соей работе используете мат анализ. Но реализуете ли вы алгоритмы этого анализа? Или просто используете готовые функции? Глупо писать свою реализацию cos() или sin(), когда можно просто вызвать функцию.
И так как в библиотеках есть практически всё, то в типичной программе нету математики. Только вызов функций. И архитектура программы.
Современные абстракции в программировании задрали процесс программирования слишком высоко. Туда где математики не осталось.
Жёсткая математика, нативная, будет только в чём то новом. Что крайне редко встречается и большинство программистов не встречают за всю свою IT карьеру.
По-моему ответ очевиден. И его используют 1000чи лет.
Сиди с утра до вечера и изучай науки. И будешь умнее (задействовать больше нейронов) чем неуч.
Или пей пиво с утра до вечера. Неиспользуемые нейроны организмом удалятся из мозга.
Пример. Люди которые не пользовались речевым аппаратом с детства (маугли) в возрасте теряли навсегда возможность говорить. Только язык жестов. Участок мозга отвечающий за речь попросту удалялся.
С зрением та же история. Слепой с рождения но прооперировав глаза в в взрослом состоянии то же не могут видеть как обычный человек.
Если в гугле вбит фразу:
То сразу выдаст это:
Если вы имеете ввиду что 95% нейронов находится в резерве и не участвуют в работе нейросети, т.е. никуда не подключены и никогда не активируются, то множественные исследования анализ энцефалограмма говорит об обратном.
Весь массив головного мозга активируется в то или иное время.
И вообще все нейроны в мозге в момент когда мозг только появляется и растёт имеют одну особенность. Каждый нейрон как дерево. И его дендриты как корневая система. Растёт хаотично. Нейрон может иметь десятки тысяч дендритов. И далее вся эта каша дендритов и аксонов соединяется хаотично. Что до куда доросло и соединилось в случайном порядке.
Поэтому младенцы такие… может даже и сознания не имеют. Чисто первобытные инстинкты. Т.е. участки головного мозга где формирование нейронов отвечает уже жёсткая структура заложенная в ДНК. А не неокортекс — с его каше- структурой.
Ну а далее в процессе жизни уже идёт настройка нейросети. Миллиарды аксонов отсыхают, миллиарды вновь прорастают.
И вот тут уже можно говорить о развитии мозга. Потому ка архитектура нейросети будет разная. Как её настроишь так и будет работать.
Поэтому о 95% работы мозга говорит не корректно.Можно говорить только об качестве настройки архитектуры нейросети.
Хотя в некотором виде вы правы. Замечено что у людей интеллектуалов бороздок в головном мозге после смерти больше чем у маргиналов. Однако это вроде связанно как раз с отмиранием нейронов в процессе жизни за ненадобностью. На старте у всех примерно одинаковое количество.
Ну и да большее количество нейронов не всегда преимущество. Его может обыграть более специализированная архитектура. У Эйнштейна был вполне обычный мозг.
Это такая же информация, как и теория расщепления вселенных и прочего бреда.
Ваш мозг состоит из нейронов. Работа нейрона это его активация. Поверьте — вам не понравится если все ваши нейроны активируются в 1 момент. Хотя те кто переносил приступы эпилепсии — говорят что для них это было как полное отключение сознания.
Что бы ваше сознание работало "правильно" каждый нейрон должен активироваться тогда когда нужно. Согласно построенной карте нейросети.
Сколько не сталкиваюсь в обсуждении эксперимента с щелями — каждый раз одно и тоже. Много слов — что бы навести магию и мистику. И в результате получить ничего.
Почему никогда не обсуждают как устроен детектор. Вот реально — НИКОГДА.
Что вообще этот МИФИЧЕСКИЙ детектор из себя представляет?
А что если детектор в щели есть — но просто не включен, тупо провода, оптоволокно или ещё что там может быть, просто не подключены никуда. Что будет с дифракционной картиной?
И как вообще этот детектор работает? Может он тупо поглощает фотон, а потом излучает совершенно другой? А т.к. он будет переизлучён за щелями — собственно и получаем что и должны получить — никакой дифракции.
К вам никакой претензии не имею. Просто реально достало. 100 раз читаешь обсуждения и всегда одно и тоже. Магия, расщепляющаяся вселенная и прочий бред.
А вот то место где реально происходит "как бы" парадокс — детектор. Вот никто просто в упор это не видит.
Дошло до абсурда — детектор азм есть наблюдатель! А кто наблюдает — человек! Алилуя. Давай строить куча бредо-теорий.
Так в том и вопрос и проблема одновременна.
Химера говорит на твоём языке. Я как программист понимаю химеру. Я понимаю математическую абстракцию реализованную в программе.
Но на практике часто тебе кидают чистую математику. Чистые математические абстракции написанные на "древнеарамейском" ))). На которые я смотрю и ничего не понимаю. И делаю вывод что я такое никогда не применял в программировании. И прекрасно без этого справляюсь.
Вот тут написано что это аксиома.
Я не математик, но честно говоря не вижу ещё более простое математическое определение которое доказывало бы утверждение "от перемены мест слагаемых сумма не меняется."
да вы правы. Я опустился до уровня процессора. И арифметически логического устройства.
Но никто не мешает сделать программу которая будет оперировать абстракциями, тупо пропускать через блоки if-else стринги и получать на выходе такой же стринг.
И только человек может этот стриг определить как математическую формулу.
Но в таком варианте сам компьютер как раз не оперирует математической формулой. В АЛУ она не участвует.
Компьютер просто одну картинку превращает в другую на выходе. И только человек интерпретирует эту картинку как формулу.
Проблема такой программы в том что на выходе она нам даст картинку-формулу. Но если на вход такой программы мы подадим число с миллионом цифр после запятой, то компьютер не сможет использовать эту формулу и получить результат в виде точного числа. Разумеется можно написать программу которая будет последовательно вычислять значения после запятой. Но она не может делать это до бесконечности.
Есть чистая математика. Но заставить её работать на компьютере не получится. Не работает процессор с математическими абстракциями. Вот и появляются промежуточные науки
как натянуть сову на глобускак заставить работать математическую формулу в процессоре с приемлемой точность.К какому разделу эта наука принадлежит? К математике? К программированию?
Собственно я строю свои различия математики и программирования основываясь на чистой абстрактной математике. Потому как различие между химерами… Там они стираются. Там программатика какая то.
Ваша утверждение базируется на рассмотрении одной программы. И оно очевидно. Каждая конкретная программа будет делать только то что в ней запрограммировано, одна цель (цели), и не более.
Я же рассматриваю все программы и математические теоремы одновременно. И на этом базирую различие между этими классами.
Все программы могут делать что угодно каждая по отдельности. У них нету базового закона для всех сразу.
В то время как в математике этот закон есть. Вся математика предназначена для одной цели. Нахождение закономерностей. Нахождение любых закономерностей где угодно. Многие "сумасшедшие" математики придумывают свои вселенные со своими законами и ищут там математические закономерности.
Как бы выглядела вселенная в которой п равнялось бы 4? И подобное.
Да. И современное программирование это тоже от веба до mobile, от эмбедит до софта, от геймдева до квантмеха и ещё куча всего.
Собственно получаем две огромные кучи которые тут и там начинаю приравнивать друг другу, т.к. начинают сравнивать частности.
Я же, в дискуссии, пытаюсь предложить варианты различий всей кучи. Опять же дискуссия ради поболтать, не более )
Ну это аксиома. Т.е. недоказательные утверждения. Они настолько логичны что не требуют доказательств. Вообще все теоремы доказываются на основании других теорем. А вот начало этой доказательной цепочки это как раз аксиомы.
И да вы не докажете ваш пример "коммутативность сложения" а по простому "от перемены мест слагаемых сумма не меняется" с точки зрения математики. Математика говорит так есть и всё тут. Опять же с помощью чисел вы можете доказать только какой то предел. Вплоть до бесконечности не получится.
Про бесконечную точность я говорю исходя из того что математика предоставляет нам формулы. Которые оперирую переменными. Подставляй любое число (хоть бесконечность), и формула выдаст правильный ответ. Ну или должна выдать.
Программирование в свою очередь оперирует с конкретными числами. И предел точности работы программы будет всегда в пределе точности этих чисел.
Я просто декламирую отличие математики от программирования. А то тут в процессе дискуссии постоянно поднимается вопрос про их тождественности.
Вот я и ищу фундаментальные отличия.
Наверно это вырвано из контекста, но приведённая в данном виде вызывает некоторое недоумение.
Честно говоря я не уверен что на земле существует реальная программа доказывающая теорему. Ну т.е. последовательно выполнение операторов процессора.
Потому как программа это компьютер. А он работает с переменными конечной точности.
Математические доказательства никогда не оперирует числами, а оперирует абстракциями в виде переменных. x,y и прочее.
Все операции проводятся над этими абстракциями что бы получить в конечном счёте математическую формулу, которая может обеспечить бесконечную точность. Т.к. не оперирует цифрами, а абстракциями.
Кстати это ещё одно фундаментальное отличие программы от математики. Программа всегда будет выполнятся на процессоре и оперировать с переменными конечной точности.
Математика всегда будет оперировать абстракциями бесконечной точности. Т.к. точности как таковой у них и не будет. Нет чисел, нет точности либо точность бесконечная.
Процессоры не работают с абстракциями, они работают с битами.
Не знаю может квантовые работают?
Что то я дописался до того, что доказательство теорем с многостраничной записью это есть программа. Если рассматривать каждый шаг доказательства как шаг программы.
Уроборос какой то )))
Ладно добавим ещё одно фундаментальное отличие, но уже математики.
Любое доказательство теоремы, собственно любая математическая единица служит только 1 цели. Нахождение природной зависимости в числах. Фундаментального закона. Свойства нашей вселенной или вообще всех вселенных. Придумайте как сами это назвать.
Целью же программы может быть абсолютно любая. Или вообще без цели.
Профдеформация )
Можно долго спорить где и как пересекаются программирование и математика. С разных углов они либо похожи, либо одно и тоже, либо разные вещи.
Однако я хотел бы обозначить одну фундаментальную особенность чем программирование отличается от математики.
И это:
Как не странно результатом программирования будет программа.
И главная особенность программы — это то что она состоит из последовательно выполняющихся шагов.
Результатом математики будет теорема и следующая из неё формула.
Отсюда любой шаг программы — может быть как раз математической, формулой. Т.е. шаг может быть как раз той самой математикой.
Получается что программирование может включать в себя математику как шаг программы. В тоже время по этому принципу математика не будет является программированием.
Опять же шаги это как правило вызов готовых функций, в которых и реализована математика. Поэтому программист напрямую не работает с математикой а только с её результатами.
Это как например человек использует автомобиль, но это не делает его конструктором автомобилей.
И да. Оппонент сразу может придраться к моему определению математики. Мол простои использование теорем в качестве инструмента для получения результата. В данном случае такая писанина как не странно будет похожа на программирование. Только записанная на листе бумаге. Последовательное выполнение шагов с использованием формул теорем для получения конечного результата. Точно также как это бы делала программа.
Вы применили крайность. А крайности как правило не валидны.
Понятно что любой человек в той или иной степени оперирует каким то объёмом информации у себя в памяти. Иначе это и не человек вообще.
Вся разница в количестве и разновидности этой информации.
И программисту для выполнения работы требуется запредельное количество специфической информации. Это алгоритмы, коды, абстракции.
Так вот по моим наблюдением оперирование этой информацией для мозга чрезвычайно затратно. И если человеку не нравиться, т.е. нету дофаминовой поддержки, мозг сопротивляется максимально сильно.
И программисты со временем развивают свою нейросеть для работы с этой специфической информацией. Т.е. со временем, когда дофаминовая поддержка уже сводится на нет, мозг уже натренирован. и можно работать дальше без поддержки.
Вот вы привели другие примеры информации. Например есть люди которым легко даются языки. Или люди актёры, которые запоминают сценарий фильма, пьесы.
Они тоже тренируют свой мозг. И если это им нравится, то им легко даётся манипулирование информацией специфичного для себя класса.
Как я уже говорил много раз. Все способности — это желание изучать конкретную информацию. А уж что тебе нравится или нет — это уже матушка природа и батюшка геном решают.
Не знаю как это работает в голове. Но если долго работать над проектом где есть тысячи функций и если кликнуть в любое место проекта сразу будет понятно что и как тут работает. Видимо подгружается из памяти.
Одновременно в быстрой памяти смысла держать всё это нет. Однако пытаясь разобраться с алгоритмом в программе приходится одновременно держать в голове пару десятков функций. И в течении рабочего дня к этим десяткам прибавляются другие десятки, а уже ненужные выгружаются из головного кеша.
Часто находишься в состоянии когда в голову нужно загрузить ещё информации, но уже не можешь, смотришь на очередной код, а он расплывается перед глазами. После этого просто включаешь на пару минут какой нибудь развлекательный сайт. Даже не особо вчитывавшийся что там. Но это позволяет разгрузить кеш в голове. Потом переключаешься обратно на проект.
И да всё это относится к сложным проектам. В программировании есть куча задач линейных. Те же формошлёпства. Там подход линейный, мозг практически не загружается, и ты просто отдыхаешь на таких задачах.
С геймдевом вообще не пересекался, но со всем остальным наверно со всем.
Разве в геймдеве сейчас не рулят движки? Юнити там разные. Где игрописатели фактически только API движков дёргают.
Хотя если новый движок писать, то согласен там прилично математики, например туже физику земного притяжения описать. Полёт стрелы там и прочего. Или геометрию пространства.
Но разве это реализуют с нуля? Наверняка уже написано 100500 библиотек которые реализуют всю эту физику.
Так я и не спорю что в математику всё входит.
И все программисты пользуются в той или иной мере математикой.
Собственно это даже не обсуждается.
Однако вопрос пользуются ли программисты математикой постоянно возникает. И даже в этой статье есть.
И что бы на него ответить — надо определить какой то критерий.
И этот критерий будет чисто субъективный.
Я из своего субъективного опыта написал. Что реализация алгоритмов высшей математики в программировании сегодня практически не бывает.
Однако дискуссия нас привела к выводу — что не бывает скорее всего из за того что все алгоритмы уже реализованны в библиотеках.
А программистам только и остаётся что просто пользоваться результатами тех или иных алгоритмов.
Я только знаю что делает алгоритм. Но как он это делает? Я пытался разобраться. Но просто прочитав это — я понял что этого не достаточно. И так как мне это не надо было просто бросил.
Мне была достаточна абстракция — подаю на вход числа, получаю на выходе.
А вот дальше эти числа уже использовались в вышестоящем алгоритме.
Который я уже реализовывал сам. И математики по моим внутренним убеждениям там не было.
Хорошо пусть будет логика. Да логику я использую всюду. Собственно программирование без логики не может быть. А вот без математики ))) Тут как раз и ведём дискуссию, может или нет.
Поэтому я и определил точные критерии что бы вопрос "нужно ли знать математику программисту" имел смысл.
Я под математику поставил использование "жёстких" математических теорем и формул.
Например я упомянул алгоритм эллиптических кривых
Я это отношу как раз к математике. Однако я это использую в своей работе. Просто я беру функцию где реализована вся эта математика и просто пользуюсь результатами. И т.к. я сам не реализовываю эту математику — то считаю что я не пользуюсь математикой. Но получается что я пользуюсь только результатами математики ))) Как минимум мне надо знать о существовании таких алгоритмов и где о ни используются.
Опять же вы пишите что в соей работе используете мат анализ. Но реализуете ли вы алгоритмы этого анализа? Или просто используете готовые функции? Глупо писать свою реализацию cos() или sin(), когда можно просто вызвать функцию.
И так как в библиотеках есть практически всё, то в типичной программе нету математики. Только вызов функций. И архитектура программы.
Современные абстракции в программировании задрали процесс программирования слишком высоко. Туда где математики не осталось.
Жёсткая математика, нативная, будет только в чём то новом. Что крайне редко встречается и большинство программистов не встречают за всю свою IT карьеру.