Долгосрочный план атаки по изучению математики? [закрыто]

12

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

На 2-й карьере я застрял в колледже, выполняя некоторые требования во время работы.

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

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

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

Однако я не могу найти хорошую долгосрочную стратегию обучения с учетом этого подхода.

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

Женька
источник

Ответы:

20

Прочитайте статью Стива Йегге о математике для программистов.

Среди его идей:

  1. Математику намного легче подобрать после того, как вы научитесь программировать. На самом деле, если вы наполовину приличный программист, вы обнаружите, что это почти несложно.

  2. Они учат математике все неправильно в школе. Путь, Путь неправильно. Если вы научите себя математике правильным образом, вы будете учиться быстрее, дольше будете помнить об этом, и это будет гораздо более ценно для вас, как для программиста.

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

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

  5. Математика ... на самом деле забавная, если подойти к ней правильно.

Роберт Харви
источник
1
+1 да, это точный ответ, который я бы дал.
Боб Кросс
Вау, это классная статья!
Мейсон Уилер
Что он сказал, а затем khanacademy.org
Филипп Дупанович
3

Вы понимаете разницу между математикой и математикой, которой вас учат в школе .

Это превосходно описано в «Плаче математика» Пола Локхарта. Схожие чувства выражены Конрадом Вольфрамом в его TED Talk, « Обучение детей реальной математике с помощью компьютеров» .

Большая часть математики, которая вам нужна в «жизни», преподавалась в начальной школе (например, как рассчитать чаевые в голове). Математика, которую вы будете использовать в своей работе, может преподаваться в вашем университете, если вы собираетесь в область, которая потребует исчисления или другой углубленной математики - но большинство программистов не используют исчисление каждый день (так как большинство программистов заканчивают тем, что пишут бизнес-приложения). , а не какой-то инженерной или научной области).

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

БББ
источник
2

Я нахожусь в аналогичной лодке и до сих пор наслаждаюсь www.projecteuler.net :

Project Euler существует для того, чтобы поощрять, испытывать и развивать навыки и получать удовольствие от любого, кто интересуется увлекательным миром математики.

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

Еще один замечательный ресурс - http://www.khanacademy.org/#calculus.

KhanAcademy - это больше, чем просто блестяще снятые видеоролики, у него также есть целая система упражнений, чтобы проверить вас. Смотрите http://www.khanacademy.org/about

Гидеон
источник
1

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

Если вы заинтересованы в таких базах данных, как я, я изучаю прикладную математику для специалистов по базам данных. Как только я закончу с этим, я займусь всем, что подходит моей фантазии, возможно, что-то от CJ Date, и множеством и теорией групп.

Чтобы ответить на ваш вопрос о том, как разработать учебный план, исследуйте различные университеты и посмотрите, что они предлагают в области компьютерных наук или прикладной математики. Университеты публикуют требования к степени. Вероятно, вы можете найти все курсы в Интернете, обычно с видео, набором задач, и, вероятно, найти книгу через Amazon. У MIT есть Open Courseware, в Гарварде и Беркли также есть онлайн-курсы. Также ознакомьтесь с OpenStudy, там может быть учебная группа, которая сформирована для класса, который вы хотели бы взять.

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

MarkSchoonover
источник
0

Если вы хотите заниматься алгоритмами в целом, вам могут помочь курсы по математике и абстрактной алгебре (или вы можете просто пройти курс по алгоритмам ...). Конечно, математика также поможет с кодированием, шифрованием и множеством других областей вычислительных алгоритмов. Вы должны попытаться взглянуть на «Искусство компьютерного программирования» Кнута , хотя бы лишь как указатель на то, какую математику вы могли бы найти полезной.

Если вы хотите сократить число (то, что будет использовать ваше исчисление и линейную алгебру), посмотрите последнюю редакцию Числовых рецептов . Я также рекомендую Матричные вычисления Голуба и Ван Лоана как более математически правильный текст по вычислительной линейной алгебре.

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

comingstorm
источник