Pure vs Math applicata per programmatori [chiuso]

13

La matematica è sempre stata la mia passione in quanto ho sempre trovato l'argomento facile. Computer Science è il mio secondo amore, però. Data la scelta, preferirei laurearmi in matematica. Dal momento che le uniche carriere che uno di solito frequenterebbe con una laurea in matematica non sono affatto allettanti, sarei molto contento di passare i miei giorni come sviluppatore di software.

La mia domanda è questa: quale disciplina matematica potrebbe trarre maggiori benefici da un futuro programmatore? Matematica applicata o matematica pura?

Mi piace insegnare a me stesso e sono fiducioso di poter insegnare a me stesso come diventare un grande programmatore, ma ho intenzione di ottenere un minore in CS!

    
posta Joose 20.04.2011 - 17:47
fonte

9 risposte

12

Dipende tutto da cosa vuoi fare come sviluppatore di software.

Se vuoi entrare nella grafica, hai bisogno di un strong background in geometria, algerbra lineare, trasformazioni di matrici, (anche la fisica non sarebbe stata terribile) ecc.

Se vuoi entrare in SQL o in altri tipi di programmazione di database, sono necessarie tutte le logiche (prove, leggi di inferenza, ecc.) e la Matematica Discreta (forse anche il calcolo lambda).

Ma in generale, più matematica applicata sai meglio.

La matematica pura sarebbe meglio in cose come lo sviluppo dell'algoritmo e la programmazione teorica. Forse anche programmare la programmazione redux o simili.

In sostanza, non puoi sbagliare in alcun modo.

    
risposta data 20.04.2011 - 17:54
fonte
4

Posso contare su un dito il numero di volte in cui ho dovuto usare una matematica più complicata dell'algebra di base in qualsiasi progetto su cui ho lavorato.

È veramente dipende dal campo in cui vai.

    
risposta data 20.04.2011 - 17:59
fonte
3

La programmazione viene applicata in matematica. Detto questo, non credo che faccia molta differenza. La matematica applicata che ho preso per la mia laurea (in matematica) era principalmente orientata verso la fisica che non avrebbe fatto molto per la logica richiesta per la programmazione, ma funziona benissimo per determinare gli algoritmi.

    
risposta data 20.04.2011 - 18:02
fonte
2

Credo che consiglierei qualche tipo di equilibrio.

È certamente utile conoscere la teoria degli automi di base, i linguaggi formali, la teoria dell'informazione e la matematica discreta di base.

È anche molto utile per molte aree applicative matematiche per conoscere il calcolo, l'algebra lineare, la probabilità e l'amp; statistiche.

È anche molto importante ottenere un'ingegneria del software senza sciocchezze, in modo da sapere come analizzare un'area problematica e proporre una serie di approcci ad essa, con pro e contro. Quindi essere in grado di portarli con una squadra. Comprendi l'importanza del controllo del codice sorgente, della manutenibilità, dei test e del controllo di qualità appropriati e della gestione del ciclo di vita del software.

Ho visto persone molto intelligenti che erano timide in una o più di queste aree e sicuramente le trattengono. E se sono insegnanti, ti trattengono gli studenti.

    
risposta data 20.04.2011 - 23:11
fonte
2

Attualmente sto terminando una laurea in matematica pura, ma ho anche passato molto tempo a lavorare in progetti di ricerca matematica applicata. Sebbene ogni disciplina tragga i propri confini culturali, la distinzione tra matematica pura e applicata è spesso più elusiva di quanto vorremmo ammettere. Fino a poco tempo fa, nella storia della matematica, quasi tutta la matematica era ciò che ora chiameremmo "matematica applicata". (Concedi un'eccezione per la teoria dei numeri, se vuoi.) A volte anche i confini cambiano. Uno dei miei interessi di ricerca era motivato da un problema estremamente "applicato" che corrispondeva a un sistema fisico reale, ma che comprendeva tecniche centrali dalla teoria del semigruppo e del linguaggio formale, argomenti relativamente "puri". Ricorda che anche Gauss, il principe della pura, ha passato ore a calcolare l'orbita di Cerere a mano. (Questo dovrebbe aver motivato la scoperta di minimi quadrati, quindi non era un lavaggio totale.)

È molto difficile dire molto di più sulla tua situazione senza dettagli specifici su corsi e opportunità di ricerca, ma sarebbe corretto dire che la matematica applicata ti darà molta più esperienza nella programmazione. Questo non vuol dire che non ci siano problemi computazionali nella "matematica pura", (ci sono!), Ma che questi non saranno enfatizzati, e dovrete scavare per loro da soli. D'altra parte, sembra che la maggior parte delle persone abbia un tempo più semplice passando dal puro all'applicazione al vice-versa. Ci sono molte opportunità per le variabili confondenti qui, ma questo potrebbe darti una pausa.

In definitiva, una delle abilità più utili che puoi coltivare come studente non laureato è la capacità di determinare le risposte a quanto segue: "A cosa serve una pistola alla testa per imparare?" Se hai interessi che si estendono su più campi e ti impediscono di esaurire le offerte del corso in ciascuna, quella domanda dovrebbe motivare una grande quantità di corsi. Ad esempio, amo molto la teoria degli automi, ma non ho mai seguito un corso di teoria della computazione perché potevo semplicemente leggere il libro di testo per piacere. (Nota bene: funziona solo se in realtà leggi il libro di testo ). Nella geometria differenziale, tuttavia, sapevo che non sarei mai stato in grado di trattare i simboli di Christoffel e simili, a meno che non avessi una pistola alla testa nella forma di un quiz settimanale.

Dovresti imparare a riconoscere le tue inclinazioni e le tue disinclinazioni e reindirizzare intorno a loro.

    
risposta data 21.04.2011 - 07:11
fonte
1

Pura matematica, sicuramente. In particolare, matematica discreta e logica matematica.

Il Dipartimento di matematica dell'Università dell'Illinois ha un interessante M.S. programma chiamato Applied Math (Theory of Computation). È un programma congiunto tra il Dipartimento di matematica e il Dipartimento C.S. Potrebbe essere il tipo di cosa che vuoi, ma è un programma di laurea.

    
risposta data 20.04.2011 - 17:55
fonte
1

Sono riuscito ad avere una laurea in ingegneria del software perfettamente gradevole con una laurea in matematica computazionale. Sono stato fortunato, la mia scuola aveva un programma specifico per questo, ed era una miscela di CS e matematica con un focus sulla matematica che supportava CS (Algebra Discreta, Astratta, Teoria dei Grafici e Reti) e matematica che richiede un aiuto del computer ( analisi numerica, algebra lineare).

Suppongo che sia una matematica "pura", ma non l'ho mai pensato in quel modo - era così concentrato sui computer, che la matematica computazionale era una descrizione davvero buona.

    
risposta data 20.04.2011 - 20:39
fonte
1

Se pensi a una carriera finanziaria: statistiche, analisi, PDE, simulazioni Monte Carlo (e varie "matematiche di (pseudo) casualità"), algebra.

    
risposta data 20.04.2011 - 21:48
fonte
1

Penso che dipenda da cosa vuoi fare. Sono sempre stato coinvolto nel calcolo, applicato alla scienza e all'ingegneria, quindi la matematica applicata è la parte più grande del set di abilità. Un sacco di scienze comp, mi colpisce come matematica più pura, preoccuparsi se esiste un algoritmo che è NP completo e tutte quelle cose, non mi ha mai colpito come molto interessante o pratico. Ma l'approssimazione funzionale, PDE, algebra lineare, ecc. È sempre stata piuttosto fondamentale. Ma se stai pianificando una carriera nella programmazione generale, sospetto che questa roba non faccia molto per te se non per le capacità di pensiero dello sviluppo.

    
risposta data 20.04.2011 - 23:11
fonte

Leggi altre domande sui tag