Długoterminowy plan ataku na naukę matematyki? [Zamknięte]

12

Jestem programistą stron internetowych, który chce poszerzyć swój zestaw umiejętności o matematykę związaną z programowaniem.

Jako druga kariera utknąłem na studiach, spełniając niektóre wymagania podczas pracy.

Miałem nadzieję, że moje wykształcenie nauczy mnie niezbędnych umiejętności stosowania matematyki, jednak szybko okazuje się, że jest to zbyt łatwe do przetestowania podejście oparte na szerokości, bardzo nieefektywne dla zainwestowanego czasu.

Na przykład w mojej klasie rachunku 2 jedyne zdalnie użyteczne poszerzanie umysłu, jakie miałem, to objętości i obszary pod krzywą. Reszta to po prostu monotonna gloryfikowana algebra, która, choć przychodzi mi łatwo, może być wykonana przez oprogramowanie takie jak wolfram alfa w ciągu kilku sekund. To nie jest mój pomysł uczenia się matematyki.

Więc jestem sfrustrowanym studentem szukającym sposobu na lepsze zrozumienie matematyki w sposób, który koncentruje się na zastosowaniu, zrozumieniu i maksymalnie usuniętym niepotrzebnym nudy.

Jednak nie mogę znaleźć dobrej długoterminowej strategii badań z takim podejściem.

Więc dla osób o podobnych umysłach, jak poszedłbyś na naukę niezbędnej matematyki, nie martwiąc się zbytnio o rzeczy, które komputer może zrobić znacznie lepiej?

zhenka
źródło

Odpowiedzi:

20

Przeczytaj post Steve'a Yegge na temat matematyki dla programistów.

Wśród jego spostrzeżeń:

  1. Matematyka jest o wiele łatwiejsza do opanowania po tym, jak umiesz programować. W rzeczywistości, jeśli jesteś w połowie przyzwoitym programistą, przekonasz się, że to prawie kłopot.

  2. Uczą matematyki wszelkiego zła w szkole. Sposób, nie tak. Jeśli nauczysz się matematyki we właściwy sposób, nauczysz się szybciej, zapamiętasz ją dłużej, a dla programisty będzie ona dla ciebie o wiele cenniejsza.

  3. Znajomość nawet odrobiny odpowiednich rodzajów matematyki może pozwolić Ci napisać całkiem interesujące programy, które w innym przypadku byłyby zbyt trudne. Innymi słowy, matematyka jest czymś, co możesz trochę podnieść, kiedy tylko masz wolny czas.

  4. Nikt nie zna całej matematyki, nawet najlepsi matematycy. Dziedzina stale się rozwija, ponieważ ludzie wymyślają nowe formalizmy, aby rozwiązać własne problemy. I przy każdym zadanym problemie matematycznym, podobnie jak w programowaniu, jest na to więcej niż jeden sposób. Możesz wybrać ten, który najbardziej ci się podoba.

  5. Matematyka jest ... właściwie trochę zabawna, jeśli podejdziesz do niej we właściwy sposób.

Robert Harvey
źródło
1
+1 tak, to jest dokładna odpowiedź, którą bym dał.
Bob Cross
Wow, to niesamowity artykuł!
Mason Wheeler
To, co powiedział, a następnie khanacademy.org
Filip Dupanović
3

Zdajesz sobie sprawę z różnicy między matematyką a matematyką, której uczą cię w szkole .

Jest to doskonale opisane w Lamentie matematyka Paula Lockharta. Podobne odczucia wyraża Conrad Wolfram w swoim przemówieniu TED, Nauczanie dzieci prawdziwej matematyki na komputerach .

Większość matematyki potrzebnej w „życiu” była nauczana w szkole podstawowej (np. Jak obliczyć napiwek w głowie). Matematyki, której będziesz używać w swojej pracy, może uczyć twój uniwersytet, jeśli wybierasz się na dziedzinę wymagającą rachunku różniczkowego lub innej zaawansowanej matematyki - ale większość programistów nie używa rachunku różniczkowego na co dzień (ponieważ większość programistów kończy pisać aplikacje biznesowe , a nie jakąś dziedzinę inżynierii lub nauki).

Niezależnie od tego wiele matematyki, której się uczysz, nie będzie dotyczyć ciebie. I wiele z tego, co robisz podczas nauki, to obliczenia. Czy kiedykolwiek zostanie to naprawione? To zależy od ciebie i reszty twojego pokolenia (i wszystkich przyszłych pokoleń) do podjęcia decyzji.

bbb
źródło
2

Jestem na podobnej łodzi i do tej pory cieszę się www.projecteuler.net :

Projekt Euler istnieje po to, by zachęcać, rzucać wyzwania i rozwijać umiejętności i przyjemność wszystkim, którzy interesują się fascynującym światem matematyki.

Są to problemy, które rozwiązujesz przy programowaniu, ale większość z nich ma na celu nauczyć cię (lub musisz nauczyć się) konkretnej matematyki, aby ją rozwiązać. Pomaga nauczyć się ciekawostek matematycznych, które możesz zastosować podczas programowania.

Innym doskonałym źródłem informacji jest http://www.khanacademy.org/#calculus

KhanAcademy to znacznie więcej niż tylko świetnie zrobione filmy, ma też cały system ćwiczeń, aby Cię przetestować. Zobacz http://www.khanacademy.org/about

gideon
źródło
1

Nie wspominasz o tym, jakiego rodzaju programujesz lub jesteś zainteresowany. Jeśli interesujesz się naukami obliczeniowymi, potrzebujesz tego tła rachunku, wszystkich 3 semestrów, algebry liniowej, równań różniczkowych, analizy numerycznej, aby wymienić kilka. Ponadto będziesz potrzebować wszystkich wymagań w zakresie nauki, fizyki, biologii, chemii. Istnieje inna gałąź matematyki stosowanej w teorii systemów komunikacyjnych. Tam poznasz teorię liczb, teorię kodowania algebraicznego, kryptografię, matematyczne aspekty teorii systemów, zastosowaną analizę Fouriera i prawdopodobnie są jeszcze inne.

Jeśli interesujesz się bazami danych takimi jak ja, studiuję matematykę stosowaną dla specjalistów baz danych. Kiedy to skończę, zajmę się tym, co pasuje do moich upodobań, prawdopodobnie CJ Date, a także teorią zbiorów i teorii grup.

Aby odpowiedzieć na pytanie, jak opracować plan studiów, zbadaj różne uniwersytety i zobacz, co oferują w dziedzinie informatyki lub matematyki stosowanej. Uniwersytety publikują wymagania dotyczące stopnia naukowego. Prawdopodobnie możesz znaleźć wszystkie kursy online, zwykle z filmami, zestawami problemów i prawdopodobnie możesz znaleźć książkę przez Amazon. MIT ma Open Courseware, Harvard i Berkeley także kursy online. Sprawdź także OpenStudy, może istnieć grupa analityczna utworzona dla klasy, którą chcesz wziąć.

Kiedy potrzebujesz wiedzy i nie chcesz zadłużać się na studia magisterskie, samouczenie się to świetny sposób.

MarkSchoonover
źródło
0

Jeśli chcesz robić algorytmy w ogóle, pomocne mogą być kursy matematyki skończonej i algebry abstrakcyjnej (lub możesz po prostu wziąć udział w kursie algorytmów ...). Skończona matematyka pomoże również w kodowaniu, szyfrowaniu i wielu innych domenach algorytmów obliczeniowych. Powinieneś rzucić okiem na sztukę programowania komputerowego Knutha , choćby jako wskaźnik do matematyki, która może ci się przydać.

Jeśli chcesz wykonywać dzielenie liczb (coś, co będzie korzystało z rachunku różniczkowego i algebry liniowej), przejrzyj najnowszą edycję Przepisów numerycznych . Polecam również Obliczenia macierzowe Goluba i van Loana jako bardziej matematycznie poprawny tekst na temat obliczeniowej algebry liniowej.

Ogólnie rzecz biorąc, jeśli istnieje domena aplikacji, którą jesteś zainteresowany, powinieneś odwiedzić bibliotekę i przejrzeć książki na ten temat, aby znaleźć rodzaj matematyki, którego potrzebują. Może nie być dostępny konkretny kurs na ten temat, ale nie powinieneś na to pozwolić. Zdolność do wyśledzenia i zdobycia wiedzy z własnej inicjatywy jest jedną z najcenniejszych umiejętności, jakie możesz zdobyć: gdyby to była jedyna rzecz, której nauczyłeś się w szkole, Twój czas i pieniądze byłyby nadal dobrze wydane.

nadchodząca burza
źródło