2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Математическая подготовка ненужна в комп.прогрограммировании
Сообщение24.02.2011, 12:38 
Аватара пользователя


13/09/10
271
Есть разные мнения о возможности мышления вне языка, но я убежден, что аналитическое мышление того типа, который нужен в компьютерном программировании, тесно связано с языковыми навыками. Я не думаю, что является случайностью то, что многие из знакомых мне лучших программистов имеют дипломы по истории, филологии и схожим наукам.
Также не является случайностью то, что некоторые из виденных мной худших программ были написаны инженерами, физиками и математиками, затратившими в университете массу энергии на то, чтобы держаться как можно дальше от занятий по языку и литературе.
Сущность заключается в том, что математическая подготовка почти не нужна в компьютерном программировании. Тот тип организационного мастерства и аналитических способностей, который нужен для программирования, связан полностью с гуманитарными науками. Логика, например, преподавалась на философском факультете, когда я был в университете. Процесс, используемый при проектировании и написании компьютерных программ, почти полностью идентичен тому, который используется, чтобы сочинять и писать книги. Процесс программирования совсем не связан с теми процессами, которые используются для решения математических уравнений.
ВЕРЕВКА
ДОСТАТОЧНОЙ ДЛИНЫ,
ЧТОБЫ… ВЫСТРЕЛИТЬ
СЕБЕ В НОГУ
Правила программирования на Си и Си++
Ален И. Голуб
Москва

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

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение24.02.2011, 16:38 
Аватара пользователя


01/02/09
206
Центрированный текст не читабелен.

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение24.02.2011, 17:50 


20/12/09
1527
Ginsbur в сообщении #416558 писал(а):
Есть разные мнения о возможности мышления вне языка, но я убежден, что аналитическое мышление того типа, который нужен в компьютерном программировании, тесно связано с языковыми навыками.

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

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение24.02.2011, 19:13 
Аватара пользователя


31/10/08
1244
Хороший ниньзя владеет всеми неджитсуми. :lol:
Так и у программисту ему надо владеть многим: математикой, логикой и уметь планировать свои действия.
Также и гуманитарные умения ему пригодятся.
Но даже имея в свое распоряжении только один навык можно легко стать первокласным ниньзя или программистом.

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение25.02.2011, 11:00 


24/05/09

2054
Ginsbur в сообщении #416558 писал(а):
Сущность заключается в том, что математическая подготовка почти не нужна в компьютерном программировании.

А кто по-вашему разрабатывает сложные математические алгоритмы - поэты?

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение25.02.2011, 11:50 
Заслуженный участник


26/07/09
1559
Алматы
2Ginsbur
Полагаю, что автор веревки достаточной длины вовсе не хотел преуменьшить значение математики и других технических областей знаний для программиста и его ремесла. В конце-концов, программирование -- это все-таки сугубо прикладная дисциплина и сталкивается не только со своими внутренними проблемами, но и с необходимостью решения задач математики, химии, физики и т.д. Да-да, программисту неплохо быть экспертов сразу во всех науках. :)

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

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

Дополню. Мне кажется, что для программиста крайне важна постоянная практика (nulla dies sine linea) и развитая культура программирования (правильный выбор языка, хороший стиль, отступы, разумные идентификаторы, большая грязная кофейная кружка намертво прилипшая к листу бумаги и т.д.).

2Alexu007
В идеале, должно быть разделении труда -- математик придумывает математику, а программист реализовывает задуманное. Другое дело если вы Д.Кнут, тогда да, ну этих поэтов. :)

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение25.02.2011, 20:28 


24/05/09

2054
Современные языки (например С++ Builder) позволяют писать программы, не углубляясь в тонкости организации кнопок, меню, диаграмм и прочего. Естественно в ущерб эффективности, по крайней мере размеру получаемого в результате exe-шника, но кого сейчас волнует пара-тройка лишних мегабайт? То есть язык для непрофессионалов, позволяющий сосредоточиться на собственно алгоритме программы, а не заморачиваться внешним оформлением. Для написания программ windows вполне достаточно знаний языка С.

 Профиль  
                  
 
 Re: Математическая подготовка ненужна в комп.прогрограммировании
Сообщение26.02.2011, 09:22 
Аватара пользователя


01/02/09
206
Цитата:
Современные языки (например С++ Builder)

Цитата:
языки

Цитата:
С++ Builder

:facepalm:
Цитата:
То есть язык для непрофессионалов, позволяющий сосредоточиться на собственно алгоритме программы, а не заморачиваться внешним оформлением.

Угу. В результате такого «не заморачивания» появляются программы с ужасно неудобным интерфейсом и отсутствием layout'ов.

Цитата:
В идеале, должно быть разделении труда -- математик придумывает математику, а программист реализовывает задуманное.

А специалист по usability пишет UI.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group