Модераторы: Се ля ви, Nastya, neutrino
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программист и Математика, Нужна ли математика программисту? 
:(
    Опции темы
Arat
Дата 13.7.2007, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 11.7.2007

Репутация: нет
Всего: 1



Недавно прочитал книжку - 
"ВЕРЕВКА ДОСТАТОЧНОЙ ДЛИНЫ, ЧТОБЫ… ВЫСТРЕЛИТЬ СЕБЕ В НОГУ"
"Правила программирования на Си и Си++"

Ален И. Голуб

И вот что он пишет по поводу математики:


Цитата

Я не думаю, что является случайностью то, что многие из знакомых мне лучших программистов имеют дипломы по истории, филологии и схожим наукам. Также не является случайностью то, что некоторые из виденных мной худших программ были написаны инженерами, физиками и математиками, затратившими в университете массу энергии на то, чтобы держаться как можно дальше от занятий по языку и литературе.
    Сущность заключается в том, что математическая подготовка почти не нужна в компьютерном программировании. Тот тип организационного мастерства и аналитических способностей, который нужен для программирования, связан полностью с гуманитарными науками. Логика, например, преподавалась на философском факультете, когда я был в университете. Процесс, используемый при проектировании и написании компьютерных программ, почти полностью идентичен тому, который используется, чтобы сочинять и писать книги. Процесс программирования совсем не связан с теми процессами, которые используются для решения математических уравнений.
    Здесь я делаю различие между информатикой (computer science) — математическим анализом компьютерных программ — и программированием или разработкой программного обеспечения — дисциплиной, интересующейся написанием компьютерных программ. Программирование требует организационных способностей и языковой подготовки, а не абстрактного мышления, необходимого для занятий математическим анализом. (В университете меня заставили проходить год на лекции по математическому анализу, но я никогда из него ничего не использовал ни на занятиях по информатике, хотя для них матанализ был необходимым условием, ни в реальной жизни).
    Я как-то получил открытую рецензию на книгу, посвященную мной предмету проектирования компиляторов, в которой рецензент (который преподавал в одном из ведущих университетов) заявил, что он "считает абсолютно неуместным включение исходного кода компилятора в книгу о проектировании компиляторов". По его мнению, необходимо учить "фундаментальным принципам" — лежащей в основе математике и теории языка, а детали реализации — "тривиальны". Первое замечание имеет смысл, если у вас создалось впечатление, что книга написана ученым-специалистом по информатике, а не программистом. Рецензент интересовался лишь анализом компилятора, а не тем как его написать. Второе замечание просто показывает вам, насколько изолировала себя научная элита от реального труда программирования. Интересно, что основополагающая работа по теории языка, сделавшая возможным написание компиляторов, была выполнена в Массачусетском технологическом институте лингвистом Наумом Хомским, а не математиком.



Так нужна ли программисту математика?

Интересно узнать ваше мнение по этому вопросу.


П.С.


Цитата

Об авторе.

Ален Голуб — программист, консультант и преподаватель, специализирующийся на Си++, объектно-ориентированном проектировании и операционных системах Microsoft. Он проводит семинары по приглашению частных фирм повсюду на территории США и преподает в филиалах Калифорнийского университета, расположенных в Беркли и Санта-Круз. Он также работает программистом и консультантом по объектно-ориентированному проектированию, используя Си и Си++ в операционных средах Microsoft Windows, Windows-95, Windows NT и UNIX.
М-р Голуб регулярно пишет для различных компьютерных журналов, включая "Microsoft Systems Journal", "Windows Tech Journal" и изредка "BYTE". Его популярная колонка "Сундучок с Си", публиковавшаяся в "Dr.Dobb's Journal" с 1983 по 1987 годы, стала для многих людей первым введением в Си. В число его книг входят "Compiler Design in C", "C+C++" и "The C Companion". М-р Голуб сочиняет музыку и имеет лицензию частного пилота.




Это сообщение отредактировал(а) Arat - 13.7.2007, 12:23
PM MAIL   Вверх
spin2
Дата 13.7.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 15.12.2005
Где: Москва-Одесса

Репутация: нет
Всего: 31



Так ведь речь не о том, что математика не нужна. А о том, что нужна не только она.


--------------------
"С кем тяжело молчать, с тем не о чем говорить" (Метерлинк)
блог
Все об ICQ-ботах
PM MAIL WWW ICQ Skype Jabber   Вверх
Arat
Дата 13.7.2007, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 11.7.2007

Репутация: нет
Всего: 1



Цитата(spin2 @ 13.7.2007,  14:06)
Так ведь речь не о том, что математика не нужна. А о том, что нужна не только она.

Не соглашусь, речь как раз о том, что математика может даже помешать человеку создать ясную и четкую программу. Так во всяком случае утверждает автор книги.  
PM MAIL   Вверх
Sartorius
Дата 13.7.2007, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: нет
Всего: 37



Цитата

математика может даже помешать человеку создать ясную и четкую программу


 бред  smile 
PM MAIL ICQ   Вверх
Wanderer2019
Дата 13.7.2007, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 937
Регистрация: 3.12.2004
Где: Санкт-Петербург/П рага

Репутация: нет
Всего: 17



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

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

смотря о каком направлении в программировании говорить
PM ICQ MSN   Вверх
sTa1kEr
Дата 14.7.2007, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


Профиль
Группа: Завсегдатай
Сообщений: 1553
Регистрация: 21.2.2007

Репутация: нет
Всего: 146



Имхо, он во многом прав. В частности, что именно логическое мышление крайне важно в программировании (но я не отношу логику к гуманитарным наукам, это мое мнение).  Но то, что математика не важна в программировании - это полнейший бред. Часто именно математика позволяет решить такие, вопросы, которые никогда не решить, будь ты хоть трижды Сократом. Имхо, логическое мышление + математический склад ума = идеальная возможность для программиста. Всевозможные же гуманитарные науки: язык, литература, история итп абсолютно неуместны в программировании.
PM MAIL   Вверх
AlexST
Дата 14.7.2007, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 30.4.2006
Где: Москва

Репутация: нет
Всего: 3



Опа. Ну просто БАЛЬШОЕ спасип тебе Arat! Моё мнение на 90% совпадает с мнением Голуба. Теперь буду знать единомышленников.

Цитата(Wanderer2019 @  13.7.2007,  14:53 Найти цитируемый пост)
смотря о каком направлении в программировании говорить
Вот именно. Народ начал писать, и сразу путать, а ведь автор очень верно подчеркнул!
Цитата
Здесь я делаю различие между информатикой (computer science) — математическим анализом компьютерных программ (я буду называть это алгоритмизацией) — и программированием или разработкой программного обеспечения — дисциплиной, интересующейся написанием компьютерных программ (я буду называть это кодированием). Программирование требует организационных способностей и языковой подготовки, а не абстрактного мышления, необходимого для занятий математическим анализом. (В университете меня заставили проходить год на лекции по математическому анализу, но я никогда из него ничего не использовал ни на занятиях по информатике, хотя для них матанализ был необходимым условием, ни в реальной жизни).
Дело в том, что в части программистов эти два направления сочетаются, а в части - нет. Поэтому некорректно говорить о том, нужна ли математика программисту. Математика намного меньше нужна кодеру.

Цитата
Сущность заключается в том, что математическая подготовка почти не нужна в компьютерном программировании. Тот тип организационного мастерства и аналитических способностей, который нужен для программирования, связан полностью с гуманитарными науками. Логика, например, преподавалась на философском факультете, когда я был в университете. Процесс, используемый при проектировании и написании компьютерных программ, почти полностью идентичен тому, который используется, чтобы сочинять и писать книги. Процесс программирования совсем не связан с теми процессами, которые используются для решения математических уравнений.
Именно! Я очень часто встречаю знающих технологии программистов, которые имели 3 по математике. Что говорит о знании кодирования, а слабой их стороной является алгоритмизация.

Цитата(spin2 @  13.7.2007,  14:06 Найти цитируемый пост)
Так ведь речь не о том, что математика не нужна. А о том, что нужна не только она.
Не всегда нужно хорошее знание математики.

Цитата(Arat @  13.7.2007,  14:42 Найти цитируемый пост)
речь как раз о том, что математика может даже помешать человеку создать ясную и четкую программу. Так во всяком случае утверждает автор книги.  
Автор этого не говорил. Ты не понял.

Цитата(Wanderer2019 @  13.7.2007,  14:53 Найти цитируемый пост)
матиматика не помешает, но не обязательна... в особенности, например, для разработки прикладного ПО...
если же речь идет о разработки сложных алгоритмов, требующих высшки (обработка звуковых потоков, графика-игры, алгоритмы архивации и т.п.), то разумеется она просто необходима...
Именно.

Цитата(sTa1kEr @  14.7.2007,  00:23 Найти цитируемый пост)
В частности, что именно логическое мышление крайне важно в программировании (но я не отношу логику к гуманитарным наукам, это мое мнение).  Но то, что математика не важна в программировании - это полнейший бред. Часто именно математика позволяет решить такие, вопросы, которые никогда не решить, будь ты хоть трижды Сократом. Имхо, логическое мышление + математический склад ума = идеальная возможность для программиста. Всевозможные же гуманитарные науки: язык, литература, история итп абсолютно неуместны в программировании.
Вот у тебя тут тоже перемешаны понятия.


Это сообщение отредактировал(а) AlexST - 15.7.2007, 13:03
PM MAIL ICQ   Вверх
Arat
Дата 15.7.2007, 01:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 11.7.2007

Репутация: нет
Всего: 1



Цитата(AlexST @ 14.7.2007,  15:49)
Цитата(Arat @  13.7.2007,  14:42 Найти цитируемый пост)
речь как раз о том, что математика может даже помешать человеку создать ясную и четкую программу. Так во всяком случае утверждает автор книги.  
Автор этого не говорил. Ты не понял.

Я имел в виду вот этот момент:

Цитата

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


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

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

Хотя все это конечно вопрос сложный, и не могу не согласится с тобой, это смотря чем занимаешься конкретно.

Добавлено через 9 минут и 26 секунд
AlexST, думаю сейчас в тебя полетят шишки, типа -- подобное мнение может существовать только в оправдание того, что не знаешь математики. Во всяком случае, как только я начинаю поддерживать данную точку зрения, сразу слышу подобные обвинения в свой адрес. 

Так что держись, нас мало но мы в тельняшках  smile  

  

Это сообщение отредактировал(а) Arat - 15.7.2007, 01:48
PM MAIL   Вверх
AlexST
Дата 15.7.2007, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 331
Регистрация: 30.4.2006
Где: Москва

Репутация: нет
Всего: 3



Цитата(Arat @  15.7.2007,  01:44 Найти цитируемый пост)
Думаю здесь автор подчеркивает, что черезмерное углубление в математику, может помешать.Конечно я не утверждаю, что знания математики это плохо для программиста. Речь идет именно о глубоком уходе в математику, часто за счет занятия другими науками.  
Нет, нет. Не будет оно мешать.  smile Просто нужно иметь не настолько математический ум, чтоб кодировать.

Цитата(Arat @  15.7.2007,  01:44 Найти цитируемый пост)
Я постараюсь найти  это момент в книге, где был приведен пример того, что разобрать код написанный математиком очень сложно, он практически не поддается обработки. Думаю автор имеет в виду, что многие подходят к программированию  как к науке напрямую вытекающей из математики, а это не совсем так. Часто требуются совсем другого типа подход нежели сухо-математический. 
С этим полностью согласен. Но здесь разговор о кодировании.

Цитата(Arat @  15.7.2007,  01:44 Найти цитируемый пост)
сейчас в тебя полетят шишки, типа -- подобное мнение может существовать только в оправдание того, что не знаешь математики. 
Да нет, я как раз много больше люблю алгоритмизацию, чем кодирование. Да и пусть опровергнут пример с троешниками.  smile 

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Наука и Мир"
Smartov
Nastya

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

Спасибо.



С уважением, Smartov, Nastya.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Наука и Мир | Следующая тема »


 




[ Время генерации скрипта: 0.0516 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.