2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4  След.
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 11:54 
Заслуженный участник


08/04/08
8562
longstreet в сообщении #753704 писал(а):
Да любой сколько-нибудь серьёзный проект этого требует.

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

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 12:09 


28/11/11
2884
Sonic86 в сообщении #753705 писал(а):
А может быть это изобретание велосипедов с квадратными колесами?

Вы правы отчасти, обычно можно найти велосипед.

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

-- 10.08.2013, 12:11 --

Sonic86 в сообщении #753705 писал(а):
настоящее творчество

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

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 13:01 
Заслуженный участник
Аватара пользователя


30/01/06
72407
AlexDem в сообщении #753653 писал(а):
Исследованием предметной области тоже часто занимается программист.

Но это не делает эту деятельность программированием. Вы готовите себе еду, но это не делает вас поваром.

AlexDem в сообщении #753653 писал(а):
Если начать отделять изучение предметной области, выявление требований заказчика, постановку задачи, проектирование и разработку архитектуры, разработку алгоритмов, разбиение и планирование подзадач, кодирование, тестирование, внедрение, поддержку и что-там-ещё по RUP и иже с ним...

Смешивать разные вещи, которые должны быть разделены - демагогический приём. Я не предлагал отделять всё перечисленное. Всё перечисленное (точнее, почти всё) относится к программированию. А исследование предметной области - нет. Задача программиста - не доказывать новые теоремы, а пользоваться существующими.

Denis Russkih в сообщении #753699 писал(а):
Программы для создания 3D-графики (в частности, для цифрового скульптинга, такие как ZBrush) требуют довольно продвинутого математического аппарата. А для разработки систем 3D-визуализации требуется ещё и знание оптики.

Не путайте использование математики и творчество в математике.

longstreet в сообщении #753704 писал(а):
Да любой сколько-нибудь серьёзный проект этого требует.

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

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

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 13:06 


28/11/11
2884
Munin в сообщении #753716 писал(а):
нельзя делать вывод, что оно совпадает по сути с математическим

Я такого вывода и не делал.

Но творчество в программирование может быть. Это факт.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 13:16 
Заблокирован
Аватара пользователя


07/08/06

3474
Munin в сообщении #753716 писал(а):
Смешивать разные вещи, которые должны быть разделены - демагогический приём. Я не предлагал отделять всё перечисленное. Всё перечисленное (точнее, почти всё) относится к программированию. А исследование предметной области - нет. Задача программиста - не доказывать новые теоремы, а пользоваться существующими.

Я очень часто сталкиваюсь с обратным - если задача невелика, всё делает сам программист, начиная с вопросов заказчику - что ему нужно. Если он не может справиться, тогда можно привлечь и специалиста. В RUP говорится, что есть различные роли, и их может выполнять одно лицо - всё зависит от объёма задачи. Документ User Requirements пишется по результатам исследования предметной области, что-то я не встречал в RUP указания, что создание этого документа - не работа программиста. С чего Вы взяли? Выдавать собственное мнение за общеизвестное доказанное утверждение - это как раз и есть демагогический приём.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 15:35 
Заблокирован
Аватара пользователя


22/03/08

7154
Саратов
Программирование без математики я что-то плохо представляю.
Наверное, потому, что сама была профессиональным программистом, но никак не без математики :-) Ибо образование получила на мех-мате университета.

Математик-прикладник - это что такое? К чему он "прикладывается"? :lol:

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

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение10.08.2013, 17:53 
Заслуженный участник
Аватара пользователя


06/04/10
3152
Nataly-Mak в сообщении #753752 писал(а):
С мнением, что программирование не может быть творчеством, не согласна.

И книжка есть почтенная, Искусство программирования, Knuth D.E. / Кнут Д. - The Art of Computer Programming :D

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 16:31 
Заслуженный участник


08/04/08
8562
А что Вы называете программированием? Дайте определение. Вопрос ко всем. (ответ на вопрос нужен для строгости рассуждений).
А я, наверное, тоже попробую дать.
Например, для начала напишу так: программирование есть аспект работы с компьютером, заключающийся в том, что человек переписывает алгоритм с естественного языка на язык команд компьютера. (на всякий случай подчеркну: именно аспект, поскольку его можно конечно описать, а не реальный процесс, конечного описания не допускающий (во всяком случае, не очевидно, что есть конечное описание), и о котором невозможно нормально рассуждать (по понятным причинам))
(определение, явно, всего не охватывает, но в целом примерно так).
Потом, если мысля поумнее придет, допишу.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 17:09 
Заслуженный участник
Аватара пользователя


30/01/06
72407
AlexDem в сообщении #753724 писал(а):
Я очень часто сталкиваюсь с обратным - если задача невелика, всё делает сам программист, начиная с вопросов заказчику - что ему нужно.

Разумеется, это всеобъемлющая практика. Но я повторяю:
    Munin в сообщении #753716 писал(а):
    Вы готовите себе еду, но это не делает вас поваром.

AlexDem в сообщении #753724 писал(а):
Документ User Requirements пишется по результатам исследования предметной области, что-то я не встречал в RUP указания, что создание этого документа - не работа программиста.

Не советую молиться на RUP как на единственный свет в окошке. Это всего лишь практические советы по организации разработки software. Причём в довольно специфической ситуации: в компании, занятой разработкой software. Например, в компании, решающей другие задачи, и разрабатывающей software не для внешнего заказчика, а под собственные нужды, RUP "как есть" неприменим, а reqiurements могут составляться коллегами из "непрограммистского отдела".

Да и вообще, странное заявление, с учётом того, что в RUP вообще нет понятия программиста в указанном вами смысле "мастер на все руки".

AlexDem в сообщении #753724 писал(а):
Выдавать собственное мнение за общеизвестное доказанное утверждение - это как раз и есть демагогический приём.

В данном случае то, что я сказал, не общеизвестно (как выясняется) и не доказано (в этой области вместо понятия доказательства следует пользоваться понятием практики). Просто то, что я сказал, более-менее соответствует положению дел.

Если человек будет программистом - шансы, что ему придётся заниматься математикой, около 10 % (а шансы, что серьёзной и глубокой математикой - около 1 % (вычметоды и криптография) и 0,01 % на всё остальное).

Если человек будет математиком-прикладником - шансы, что ему придётся заниматься программированием - 99 %, но шансы, что ему придётся заниматься профессиональным программированием (в смысле RUP и software engineering) - ниже 50 %.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 18:12 
Заблокирован
Аватара пользователя


07/08/06

3474
Munin в сообщении #753900 писал(а):
AlexDem в сообщении #753724 писал(а):
Я очень часто сталкиваюсь с обратным - если задача невелика, всё делает сам программист, начиная с вопросов заказчику - что ему нужно.

Разумеется, это всеобъемлющая практика. Но я повторяю:
    Munin в сообщении #753716 писал(а):
    Вы готовите себе еду, но это не делает вас поваром.

Это повторение ничего не даёт, Ваше мнение я понял. Но не считаю его общепринятым.

Munin в сообщении #753900 писал(а):
В данном случае то, что я сказал, не общеизвестно (как выясняется) и не доказано (в этой области вместо понятия доказательства следует пользоваться понятием практики). Просто то, что я сказал, более-менее соответствует положению дел.

То, что сказал я, тоже более-менее соответствует положению дел. На предыдущем месте работы у нас были специальные аналитики (специалисты по банкам, не программисты), и в то же время в одном проекте я общался с работниками банка и выяснял их требования самостоятельно. Более того, меня программирование изначально привлекало тем, что решая разные задачи из разных предметных областей, появляется возможность узнать об об этих сферах деятельности. Ещё учась в институте, я узнал, как работают мелкооптовые магазины, чем они отличаются от розничных, как работает сеть торговцев газет, из чего делают мороженое, как работает станция переливания крови и т.п. Потом посмотрел, как делаются авиационные движки (те, которые сейчас идут на Super-JET), и движки снегоходов: ребята рассказали как делаются движки снегоходов сейчас - берётся японский движок, разбирается, перемеривается, делается из собственных деталей и - разваливается, т.к. материалы не держат расчётных нагрузок. Посмотрел, как работают банки, был в Deutsche Bank, Intesa и BSGV. И так далее.

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

Munin в сообщении #753900 писал(а):
Не советую молиться на RUP как на единственный свет в окошке. Это всего лишь практические советы по организации разработки software. Причём в довольно специфической ситуации: в компании, занятой разработкой software. Например, в компании, решающей другие задачи, и разрабатывающей software не для внешнего заказчика, а под собственные нужды, RUP "как есть" неприменим, а reqiurements могут составляться коллегами из "непрограммистского отдела".

Да и вообще, странное заявление, с учётом того, что в RUP вообще нет понятия программиста в указанном вами смысле "мастер на все руки".

Во-первых, я изначально упоминал "RUP и иже с ними", я работал также по V-Model, правда давно, то есть никто и не молится. Во-вторых, если мы хотим найти какое-то общепринятое мнение, то необходимо на что-то опираться, я привёл пример из того материала, который мне известен, был бы не против, если бы Вы также ссылались на что-нибудь. В-третьих, в RUP есть набор ролей, и сказано, что несколько ролей может выполнять один человек, причём совмещение аналитика с разработчиком не запрещается (я не встречал). В-четвёртых, достаточен ли Ваш опыт использования RUP, чтобы его не советовать?

Munin в сообщении #753900 писал(а):
Если человек будет программистом - шансы, что ему придётся заниматься математикой, около 10 % (а шансы, что серьёзной и глубокой математикой - около 1 % (вычметоды и криптография) и 0,01 % на всё остальное).

Если человек будет математиком-прикладником - шансы, что ему придётся заниматься программированием - 99 %, но шансы, что ему придётся заниматься профессиональным программированием (в смысле RUP и software engineering) - ниже 50 %.

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

-- Вс авг 11, 2013 19:33:29 --

Upd: а, да, забыл - ещё мы студентами работали в конторе, занимавшейся акциями (типа Гермес-Союз, Токур-Золото), и тогда я разрабатывал схему работы Городского Депозитария. Правда этот рынок потом пошёл на спад и в итоге всё накрылось медным тазом, так что тот проект в реализацию не пошёл.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 19:33 
Заблокирован
Аватара пользователя


07/08/06

3474
Upd2: Ещё забыл - писал программу учёта телефонных переговоров завода, она в автономном режиме с цифровой АТС-ки в реальном времени брала лог через COM-порт, и заносила в базу. Со спецификациями АТС тоже пришлось немного поразбираться. Так что к слежке за юзерами даже руку приложил.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 19:36 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
longstreet в сообщении #753704 писал(а):
Munin в сообщении #753568 писал(а):
Где вы такое видели?

Да любой сколько-нибудь серьёзный проект этого требует.

Очень часто (возьмите любой сервис в интернете, например) есть база, 100500 на 100500 на 100500 на 100500 данных, на которую надо повесить систему фильтров, рекомендаций, прогнозов. Чтобы это всё обрабатывать в уместное время зачастую под конкретную специфику приходится менять алгоритмы, порой существенно. И творчество там есть, не хуже чем творчество при решении математических задач.
В типовых задачах творчества нет. Ваш пример - задача типовая дальше некуда. Средства увеличения производительности баз данных хорошо известны и описаны на всех языках. Правильная структура данных, индексы по нужным полям, настройка ОС и прочего окружения творят чудеса. До определенного предела вы оптимизируете, потом резерв оптимизации заканчивается и вы начинаете добавлять второй сервер, третий и т. д. На этом этапе от "мяч" от программистов переходит админам - настройка репликации, кеширования и прочего. Некоторые, правда, предпочитают все это не читать, а вместо этого лепят свои адские велосипеды - ну так тем хуже для них.
Действительно творческими вещами в программировании я назвал бы то, что делается впервые, но я не знаю, что это... :oops: Системы распознавания изображений и звука, машинный перевод? Вроде бы тоже поставлено на поток, хотя, возможно, таким системам далеко до совершенства и простор для творчества там все еще есть.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 19:46 


28/11/11
2884
rockclimber в сообщении #753929 писал(а):
резерв оптимизации заканчивается

Естественно, я имел в виду не типовые приблуды, часть которых Вы описали, а увеличение этого резерва после их применения.
Это задача программиста, причём не типовая.

Ну, возьмите хотя бы рекомендательные алгоритмы, которые я упоминал и посмотрите Netflix Prize.

rockclimber в сообщении #753929 писал(а):
что делается впервые

Зачастую решения сильно используют конкретику данных, так что новое делается достаточно часто.

rockclimber в сообщении #753929 писал(а):
Системы распознавания изображений и звука

Это ближе к инженерии.

rockclimber в сообщении #753929 писал(а):
машинный перевод

Это ближе к лингвистике.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 19:51 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
rockclimber в сообщении #753929 писал(а):
Системы распознавания изображений и звука, машинный перевод? Вроде бы тоже поставлено на поток, хотя, возможно, таким системам далеко до совершенства и простор для творчества там все еще есть.
«Возможно»?! Ну вы и выражаетесь.

 Профиль  
                  
 
 Re: Разница между математиком-прикладником и программистом
Сообщение11.08.2013, 19:54 


28/11/11
2884
Aritaborian, +1

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

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 58 ]  На страницу Пред.  1, 2, 3, 4  След.

Модератор: Модераторы



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

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


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

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