Тема: Применение математики в программировании

Ответить в теме
Страница 2 из 7 ПерваяПервая 1 2 3 4 ... ПоследняяПоследняя
Показано с 21 по 40 из 134
  1. Вверх #21
    Посетитель Аватар для Rector
    Пол
    Мужской
    Возраст
    37
    Сообщений
    122
    Репутация
    28
    Теория кодирования применяется на практически во всех сложных электронных приборах, которые оперируют (а тем более пересылают данные по какому либо каналу связи). Чаще всего в ПК мы можем его наблюдать в форме CRC32 кода или,так называемой, контрольной суммы. Однако практическая область применения кодов с обнаружением (исправлением) ошибок - гораздо шире, в первую очередь она затрагивает телекоммуникации и передачу данных.
    Я понял, что математика нужна, я хоть и не программист, а больше системщик. Однако, понимание (я не говорю о глубоком знании и о том, чтобы помнить наизусть таблицу интегралов) банальной вышки необходимо.
    Хватит тупить


  2. Вверх #22
    Постоялец форума Аватар для Пилигрим
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    37
    Сообщений
    1,161
    Репутация
    136
    Давайте отделим мух от котлет: есть области разработки, в которых математика может потребоваться отсилы в 0.1% случаев .. типа веб и т.п., - там в первую очередь надо знать стек применяемых фреймворков.
    Да, в подавляющем большинстве в офшор ничего интересного не попадает, и математика там крайне редко всплывет.

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

    Случай из личной практики - надо было сэкономить на десятке индусов и заменить сотню-другу ручных тестов на автоматические для одной подсистемы проекта. После пары недель анализа, свели все это дело к 2-3 десяткам сценариев. У заказчика возникли вопросы, а почему именно столько, и какое между ними соответствие. Ну что ж хотели знать, получите - нагрузили их немного математикой и красивыми картинками для наглядности. Хз разобрались ли они, но вопросы отпали сразу, да и отношение к нам поменялось тоже, зауважали что ли

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

    + полностью поддерживаю высказывание "программисту нужно развивать прежде всего логику, алгоритмическое мышление, иметь ясный ум и (что очень ценится) уметь четко формулировать и доносить свои мысли."

  3. Вверх #23
    Не покидает форум Аватар для Fallout
    Пол
    Мужской
    Сообщений
    6,648
    Репутация
    822
    Цитата Сообщение от Rector Посмотреть сообщение
    Теория кодирования применяется на практически во всех сложных электронных приборах, которые оперируют (а тем более пересылают данные по какому либо каналу связи). Чаще всего в ПК мы можем его наблюдать в форме CRC32 кода или,так называемой, контрольной суммы. Однако практическая область применения кодов с обнаружением (исправлением) ошибок - гораздо шире, в первую очередь она затрагивает телекоммуникации и передачу данных.
    Я понял, что математика нужна, я хоть и не программист, а больше системщик. Однако, понимание (я не говорю о глубоком знании и о том, чтобы помнить наизусть таблицу интегралов) банальной вышки необходимо.
    Отлично, применяется где то на низком уровне, и чаще всего используются уже готовые библиотеки. Но повторюсь, зачем об этом знать каждому программисту?

  4. Вверх #24
    Посетитель Аватар для Rector
    Пол
    Мужской
    Возраст
    37
    Сообщений
    122
    Репутация
    28
    Для возможности контроля целостности своих данных.
    Да, пускай используются стандартные библиотеки, но знать как это работает - необходимо.
    Если отсеивать по принципу "зачем оно каждому", то скоро вырастет поколение ИТ-специалистов, которые не будут знать сколько бит в байте, почему в килобайте 1024 байта или чем отличается килобайт от кибибайта Ну и в таком духе.
    Понятно, что все хотят писать программы, чтобы это было интересно и просто, можно было видеть наглядный результат своей работы (посмотрите как много людей занимаются вэбом, там ведь даже компилировать не надо).
    А вы попробуйте писать что то более серьёзное, например, для ядра ОС. Я в универе как то реализовывал под linux зачатки нового сетевого протокола. Там программирование чисто в ядре. Там и пригодилось знание помехоустойчивого кодирования, хотя бы базового. Без знаний математики не разрабатывается ни один большой проект. Как вы думает, за счет чего происходит разработка баз данных, файловых систем и прочих новых технологий?
    Да, наверное, вы правы - обычному программисту математика не нужна, обычный программист просто пишет код. Пускай инновациями занимаются необычные программисты.
    Хватит тупить

  5. Вверх #25
    Посетитель
    Пол
    Мужской
    Адрес
    Одесса, Украина
    Возраст
    35
    Сообщений
    117
    Репутация
    14
    Цитата Сообщение от Fallout Посмотреть сообщение
    Интересна разница в понятиях обычный кодер и полноценный разработчик. Поясните что означет первое, а что второе?
    Обычный кодер - это человек, верстает решения типовых задач.
    Полноценный разработчик - человек, который способен решать нетривиальные задачи.

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

  6. Вверх #26
    Постоялец форума
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    48
    Сообщений
    1,151
    Репутация
    228
    Изучение математики помогает в программировании не больше чем изучение физики и химии в вождении автомобиля (который безусловно построен с учетом законов физики и химии).
    Другими словами никак не помогает.

    Те, кто говорят что математика - в основе программирования, просто не видят насколько мизерную нишу в программировании занимает математика (и не как основа а как одна лишь из прикладных областей).
    Я сейчас говорю не про математику вообще, а про высшую математику изучаемую в вузах.
    За 20 лет программирования я создал тысячи (я не преувеличиваю) программ, начиная с СУБД и компиляторов и заканчивая ERP и вебсайтами.
    И ни разу не применял высшую математику.
    Это я вам как человек, который не помнит, чему равна производная логарифма, говорю.
    (Правда помню чему равна дивергенция ротора, но это так - чисто поржать )

    А что же нужно для успешного программирования?
    1) Умение формулировать задачу и понимать сформулированную задачу
    2) Умение находить и использовать готовые стандартные решения и инструменты если они есть
    3) Умение решить задачу так чтобы в будущем на основе этого решения можно было с меньшими затратами решать другие аналогичные задачи (база для п.2).
    4) Умение находить компромис между тем что хотелось бы и тем что реально доступно.

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

    А математика да, она может пригодиться в одной из следующих областей программирования:
    - разработка игр
    - разработка кодеков звука/изображения и прочая работа с образами
    - околонаучные программы

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

  7. Вверх #27
    Постоялец форума Аватар для Newton
    Пол
    Мужской
    Адрес
    Calgary, Alberta
    Сообщений
    1,105
    Репутация
    825
    Цитата Сообщение от 18-я весна Посмотреть сообщение

    Те, кто говорят что математика - в основе программирования, просто не видят насколько мизерную нишу в программировании занимает математика (и не как основа а как одна лишь из прикладных областей).
    Я сейчас говорю не про математику вообще, а про высшую математику изучаемую в вузах.
    За 20 лет программирования я создал тысячи (я не преувеличиваю) программ, начиная с СУБД и компиляторов и заканчивая ERP и вебсайтами.
    При этом наибольшие зарплаты среди всех программистов у тех людей, кто высшую вузовскую математику применяет на постоянной основе. Я бы даже сказал, что они в первую очередь хорошие математики, а во вторую уже программисты, умеющие эту математику запрограммировать.
    Моя хата з найкращого краю в світі.

  8. Вверх #28
    Постоялец форума
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    48
    Сообщений
    1,151
    Репутация
    228
    Цитата Сообщение от Newton Посмотреть сообщение
    При этом наибольшие зарплаты среди всех программистов у тех людей, кто высшую вузовскую математику применяет на постоянной основе. Я бы даже сказал, что они в первую очередь хорошие математики, а во вторую уже программисты, умеющие эту математику запрограммировать.
    Раз вы знаете такие подробности как размер зарплат, то наверняка вам несложно будет в двух словах рассказать что же это за задачи у этих программистов-математиков, которые на постоянной основе требуют применения высшей математики.

    Я честно не могу представить вот это "на постоянной основе".
    Вот допустим в неком условном проекте требуется решать дифференциальные уравнения для множества моделей.
    Тут два варианта:
    1) Написали один раз библиотеку которая в численном виде дифференцирует и годами пользуемся, задаем только функцию и параметры (а для этого не нужно вообще знать как решаются дифуры).
    2) На каждую модель (функцию) пишем просчет уравнения заново.

    В первом случае это программирование, а во втором - копи-паст
    Надеюсь вы не это имели в виду?

  9. Вверх #29
    Постоялец форума Аватар для Newton
    Пол
    Мужской
    Адрес
    Calgary, Alberta
    Сообщений
    1,105
    Репутация
    825
    Цитата Сообщение от 18-я весна Посмотреть сообщение
    Раз вы знаете такие подробности как размер зарплат, то наверняка вам несложно будет в двух словах рассказать что же это за задачи у этих программистов-математиков, которые на постоянной основе требуют применения высшей математики.
    Моделирование поведения финансовых инструментов на фондовых рынках.

    Для этого решаются уравнения в частных производных, которые не могут быть решены аналитически в общем виде.
    Моя хата з найкращого краю в світі.

  10. Вверх #30
    Посетитель Аватар для Comunity
    Пол
    Мужской
    Сообщений
    474
    Репутация
    167
    Цитата Сообщение от 18-я весна Посмотреть сообщение
    Изучение математики помогает в программировании не больше чем изучение физики и химии в вождении автомобиля (который безусловно построен с учетом законов физики и химии).
    Другими словами никак не помогает.

    Те, кто говорят что математика - в основе программирования, просто не видят насколько мизерную нишу в программировании занимает математика (и не как основа а как одна лишь из прикладных областей).
    Я сейчас говорю не про математику вообще, а про высшую математику изучаемую в вузах.
    За 20 лет программирования я создал тысячи (я не преувеличиваю) программ, начиная с СУБД и компиляторов и заканчивая ERP и вебсайтами.
    И ни разу не применял высшую математику.
    Это я вам как человек, который не помнит, чему равна производная логарифма, говорю.
    (Правда помню чему равна дивергенция ротора, но это так - чисто поржать )

    А что же нужно для успешного программирования?
    1) Умение формулировать задачу и понимать сформулированную задачу
    2) Умение находить и использовать готовые стандартные решения и инструменты если они есть
    3) Умение решить задачу так чтобы в будущем на основе этого решения можно было с меньшими затратами решать другие аналогичные задачи (база для п.2).
    4) Умение находить компромис между тем что хотелось бы и тем что реально доступно.

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

    А математика да, она может пригодиться в одной из следующих областей программирования:
    - разработка игр
    - разработка кодеков звука/изображения и прочая работа с образами
    - околонаучные программы

    Это настолько редкие виды деятельности, что если специально не искать работу по ним, то вы никогда за свою жизнь с ними не столкнетесь.
    Да и не дай бог столкнуться - разработчики игр например пашут за копейки как рабы на галерах - это те кому удалось пройти через мозгоклюйские интервью при приеме на работу.
    Ну да. У вас большой опыт программирования?
    Давайте обсудим например алгоритмы шифрования, или например пространственная ориентация информации. Можем например еще обсудить разработку сложных анимаций на Actionscript 3, как то разбитое стекло с разными сложными фрагментами, расчет траекторий движения разных объектов и прочие алгоритмы поведения объектов, которые не будут описаны простыми условиями IF, а заданы определенной формулой.

    Лично я закончил Академию Связи и очень жалею, что на уроках Высшей Математики спал... сейчас очень этого не хватает. И думаю след летом поступать в Мечникова.


    18-весна, Вы видимо просто еще не сталкивались с такими задачами. Я конечно не спорю, что быть профессором в области математики и физики не обязательно. Но изучить ее один раз досконально - достаточно важно, т.к. в дальнейшем - это даст Вам возможность быстрее решать сложные задачи, зная что использовать и где это искать.

  11. Вверх #31
    Постоялец форума
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    48
    Сообщений
    1,151
    Репутация
    228
    Цитата Сообщение от Comunity Посмотреть сообщение
    Давайте обсудим например алгоритмы шифрования,
    На обсуждение всего нет времени.
    Давайте на примере шифрования.

    Количество человек в мире которые могут предметно обсуждать внутреннее устройство алгоритмов шифрования и разрабатывать новые - можно пересчитать по пальцам.

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

    Цитата Сообщение от Comunity Посмотреть сообщение
    Вы видимо просто еще не сталкивались с такими задачами
    Так я об этом и написал - это настолько редкие задачи, что с ними сталкиваются единицы.
    Специально изучать вышку для программирования (а не для общего развития в рамках общеинженерного курса) - это все равно что тренировать вестибулярный аппарат на центрифугах на случай если ты вдруг станешь космонавтом, хотя известно что в 99.999% ты будешь водить максимум автомобиль, а если и полетишь то в кресле пассажира самолета

  12. Вверх #32
    Посетитель Аватар для Passagir
    Пол
    Женский
    Адрес
    Одесса
    Сообщений
    369
    Репутация
    295

    По умолчанию Выбранное направление

    Цитата Сообщение от Sergey67 Посмотреть сообщение
    Я прекрасно понимаю, что вопросы а-ля "А нужна ли математика программисту?" задавались в той или иной форме как минимум несколько раз только на этом форуме. Отвечающие всегда делятся на 2 лагеря, каждый из которых имеет своё мнение и свои доводы; каждая из сторон по-своему права, понятно, что однозначного ответа этот вопрос не имеет (т. е. кому-то нужна, а кому-то нет).

    Но я хочу попросить вас вот о чём: приведите пожалуйста примеры, когда вы применяли математику университетского уровня на работе.

    P.S. Вопрос студента, сомневающегося в выбранном направлении.
    Надо было идти на ФИТ, а Вы на ПМ?

  13. Вверх #33
    Не покидает форум Аватар для Fallout
    Пол
    Мужской
    Сообщений
    6,648
    Репутация
    822
    Цитата Сообщение от Newton Посмотреть сообщение
    При этом наибольшие зарплаты среди всех программистов у тех людей, кто высшую вузовскую математику применяет на постоянной основе. Я бы даже сказал, что они в первую очередь хорошие математики, а во вторую уже программисты, умеющие эту математику запрограммировать.
    Хотел уже было спросить "откуда дровишки", но увидел ответ:

    Цитата Сообщение от Newton Посмотреть сообщение
    Моделирование поведения финансовых инструментов на фондовых рынках.

    Для этого решаются уравнения в частных производных, которые не могут быть решены аналитически в общем виде.
    Что то мне кажется это те люди которые работают с математикой 99% времени, может их более правильнее называть математиками, а не программистами?

    И тогда вопрос примет вообще другую форму: "Что выгоднее - быть математиком или программистом?"

  14. Вверх #34
    Посетитель Аватар для Aeore
    Пол
    Мужской
    Адрес
    Black Sea
    Возраст
    38
    Сообщений
    210
    Репутация
    40
    Лично я пока что встречался с:

    1. Теория графов
    2. Преобразования Фурье
    3. Комбинаторика
    4. Фильтрация
    5. Векторная алгебра
    6. Топография
    7. Комплексные числа
    ..

    Для игр во многом нужна аналитическая геометрия, но я играми не занимаюсь
    Последний раз редактировалось Aeore; 29.11.2010 в 21:27.
    * Origin: I live... somewhere in time!

  15. Вверх #35
    Новичок
    Пол
    Мужской
    Сообщений
    10
    Репутация
    10
    Изучение математики это простой и эффективный способ тренировки мышления. А развитое мышление нужно не только программистам)

  16. Вверх #36
    Постоялец форума
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    48
    Сообщений
    1,151
    Репутация
    228
    Цитата Сообщение от abssend Посмотреть сообщение
    Изучение математики это простой и эффективный способ тренировки мышления. А развитое мышление нужно не только программистам
    Изучение математики - это способ тренировки математических способностей, не больше.
    А мышление действительно нужно.
    Но мышление - это главная функция мозга человека, и тренируется она не только и не столько в вузах, а начиная с рождения.
    Поэтому если человек всю жизнь решал одни только математические (или любой другой узкой области) проблемы, то в программировании он не сможет решать никаких других. Не хватит кругозора для формализации задач и построения модели предметной области.

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

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

    И самое главное - для программирования большинства узкоспециализированных задач, если вы чего-то не знаете - достаточно заглянуть в справочник - вовсе не нужно 5-6 лет это все изучать в вузе, а потом забыть через полгода после выпуска из-за отсутствия практики. А в вузе и до него надо изучать основы и расширять кругозор, чтобы знать с какого справочника начинать поиск.

  17. Вверх #37
    Новичок
    Пол
    Мужской
    Сообщений
    10
    Репутация
    10
    Цитата Сообщение от 18-я весна Посмотреть сообщение
    Изучение математики - это способ тренировки математических способностей, не больше.
    Почему же не больше? Разве навык логически рассуждать не относится к мышлению или он не тренируется в математике?

    Цитата Сообщение от 18-я весна Посмотреть сообщение
    Но мышление - это главная функция мозга человека, и тренируется она не только и не столько в вузах, а начиная с рождения.
    Поэтому если человек всю жизнь решал одни только математические (или любой другой узкой области) проблемы, то в программировании он не сможет решать никаких других. Не хватит кругозора для формализации задач и построения модели предметной области.
    Ни математикой едины - с этим никто не спорит.

  18. Вверх #38
    Постоялец форума Аватар для Newton
    Пол
    Мужской
    Адрес
    Calgary, Alberta
    Сообщений
    1,105
    Репутация
    825
    18-я весна, вы даже не представляете себе на сколько вы далеки от реальности.

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

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

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

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

  19. Вверх #39
    Постоялец форума
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    48
    Сообщений
    1,151
    Репутация
    228
    Цитата Сообщение от Newton Посмотреть сообщение
    Я не знаю ваш бекграунд, но то, что вы пишете, мне говорит об ограниченности именно вашего кругозора.
    Это полнейшая глупость говорить, что математика в чем-то может ограничить человека занимающегося ею.
    Я так предполагаю, что у вас математическая подготовка.
    Если это так, то она серьезно скопрометирована отсутствием логики у ее обладателя, т.к. из моего текста никак не следует, что математика ограничивает человека.

    Цитата Сообщение от Newton Посмотреть сообщение
    По моему опыту, математики с легкостью решают любые задачи программирования.
    По моему опыту, именно за математиками, которые само собой умнее всех (тут я не спорю), приходится подчищать хвосты. Они среди всех остальных чаще всего с легкостью пишут несопровождаемые программы, для внесения непринципиальных изменений в которые нужно переписывать огромные полотна кода.

  20. Вверх #40
    Постоялец форума
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    48
    Сообщений
    1,151
    Репутация
    228
    Цитата Сообщение от abssend Посмотреть сообщение
    Почему же не больше? Разве навык логически рассуждать не относится к мышлению или он не тренируется в математике?
    Навык логически рассуждать относится к мышлению в целом, но он тренируется в математике только в применении к математике.
    Например, глядя на правильный код программы, мы казалось бы логически можем сделать вывод, что программа должна работать.
    А она при запуске она работает не так как написано в ее коде, хоть ты тресни.
    В математике такое невозможно.
    Именно поэтому математика очень далека от программирования.

    Я не говорю что математики не могут быть хорошими программистами.
    Я всего лишь говорю, что в том что они хорошие нет никакой заслуги математики.


Ответить в теме
Страница 2 из 7 ПерваяПервая 1 2 3 4 ... ПоследняяПоследняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения