Vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering?

Permalänk
Inaktiv

Vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering?

Under några års tid har jag läst och hört att om man vill bli professionell på att programmera, då måste man först bli professionell på matematik? I mina ögon får jag då bilden att man aldrig kan komma upp till Mark Zuckerberg, Steve Jobs eller Bill Gates nivå inom skapande av plattformar så som programvaror, hemsidor med mera om man inte är bra på matematik?

Nu är frågan, vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering? För gör man egen research så verkar det bara handla om att man ska förstå vissa matematiska symboler, så som "+, -, *, /" plus, minus, gånger och delat med. Sen finns det ju andra också som jag tror Matematik 2B använder och som även används i programmering.

Permalänk
Medlem
Skrivet av anon347081:

Under några års tid har jag läst och hört att om man vill bli professionell på att programmera, då måste man först bli professionell på matematik? I mina ögon får jag då bilden att man aldrig kan komma upp till Mark Zuckerberg, Steve Jobs eller Bill Gates nivå inom skapande av plattformar så som programvaror, hemsidor med mera om man inte är bra på matematik?

Nu är frågan, vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering? För gör man egen research så verkar det bara handla om att man ska förstå vissa matematiska symboler, så som "+, -, *, /" plus, minus, gånger och delat med. Sen finns det ju andra också som jag tror Matematik 2B använder och som även används i programmering.

Du behöver inte kunna räkna, bara veta hur/varför du ska räkna så.

Visa signatur

PSU: Cooler Master V850 SFX Case: Lian Li O11 Mini
GPU:
RTX 4090 TUF OC CPU: Ryzen 5950x RAM: G.Skill 32GB Trident Z Neo Motherboard: Asus ROG Strix X570-i
Onkyo TX-RZ820 | Advance Paris X-A160 EVO | Dynavoice DF-8

Permalänk
Medlem

float Q_rsqrt( float number ) { long i; float x2, y; const float threehalfs = 1.5F; x2 = number * 0.5F; y = number; i = * ( long * ) &y; // evil floating point bit level hacking i = 0x5f3759df - ( i >> 1 ); // what the fuck? y = * ( float * ) &i; y = y * ( threehalfs - ( x2 * y * y ) ); // 1st iteration // y = y * ( threehalfs - ( x2 * y * y ) ); // 2nd iteration, this can be removed return y; }

Nää, man måste kunna denna annars är man bara en jäkla amatör.
Skämt åtsido, det mest avancerade jag har gjort var att räkta ut skön scrollninghastighet som funkar bra per komponenthöjd och både scroll på mus och trackpad.

Permalänk
Medlem
Skrivet av 13ers3rk:

Du behöver inte kunna räkna, bara veta hur/varför du ska räkna så.

Alltså bör man kunna räkna.

Permalänk
Medlem
Skrivet av GooGeL:

Alltså bör man kunna räkna.

Nja, datorn kan ju räkna åt dig, men du behöver förstå logiken om hur matematiken fungerar. Sedan så kanske man inte behöver vara matematikexpert.
Matten man får i gymnasiet räcker ju rätt bra, du behöver ju inte nöta in hela Calculus som man gör för att bli ingenjör för att kunna bli bra på att programmera.

Permalänk
Skrivet av anon347081:

Under några års tid har jag läst och hört att om man vill bli professionell på att programmera, då måste man först bli professionell på matematik? I mina ögon får jag då bilden att man aldrig kan komma upp till Mark Zuckerberg, Steve Jobs eller Bill Gates nivå inom skapande av plattformar så som programvaror, hemsidor med mera om man inte är bra på matematik?

Nu är frågan, vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering? För gör man egen research så verkar det bara handla om att man ska förstå vissa matematiska symboler, så som "+, -, *, /" plus, minus, gånger och delat med. Sen finns det ju andra också som jag tror Matematik 2B använder och som även används i programmering.

Så här: du behöver en viss nivå av analytisk förmåga som du har nytta av i båda fälten, och du behöver förstå via koncept som fungerar liknande mellan matematik och programmering: när vi började med algebra i skolan kunde jag direkt göra kopplingen mellan variablerna jag använt i Commodore Basic och variablerna i ekvationer och funktioner.

Men jag skulle säga att du oftast inte behöver djup matematisk kunskap mer än vad du kan snappa upp medan du lär dig det som behövs för att lösa uppgiften du jobbar med. De som behöver kunna ”riktig” matte är supernördarna som utvecklar nya sätt att tänka runt olika former av databehandling.

Gates, Jobs och Zuckerberg har det gemensamt att de i första hand var totalt hänsynslösa affärsmänniskor, och sekundärt hade tillräcklig teknisk kunskap för att produktifiera en aspekt av IT. Ingen av dem verkar vara ett IT-geni per se.

Permalänk
Medlem
Skrivet av loefet:

Nja, datorn kan ju räkna åt dig, men du behöver förstå logiken om hur matematiken fungerar. Sedan så kanske man inte behöver vara matematikexpert.
Matten man får i gymnasiet räcker ju rätt bra, du behöver ju inte nöta in hela Calculus som man gör för att bli ingenjör för att kunna bli bra på att programmera.

Hur vet du att datorn räknar rätt då? Med förståelse för matematik, så kan du troligen tyda vad som är ett rimligt resultat.

Men jag förstår vad du menar.

Permalänk
Medlem

Programmering handlar om att formulera uppgifter som något en dator kan lösa, man måste helt enkelt förstå problemet man vill lösa.

Så gör man en fysikmotor är det svårt att inte använda matte för att skapa det man vill. Men att använda fysikmotorn i sig behöver inte kräva så mycket matte då den har smidiga funktioner tillgängliga.

Permalänk
Medlem

Det beror naturligtvis på vad du ska programmera.

Om du kan De Morgans teorem och räkna ut priset exklusive moms från ett pris som inkluderar moms så kan du antagligen lösa de flesta problem som uppkommer för en dussin-webbutvecklare.

Att nämnda personer har skapat gigantiska multinationella företag har antagligen väldigt lita att göra med deras (sannolikt utmärkta) matematikkunskaper. Det är snarare så att intelligenta människor är högpresterande på olika områden. Korrelation och kausalitet är för övrigt något som man behöver förstå förstå skillnaden på om man ska bli bra på att felsöka datorprogram.

Permalänk
Medlem

Det hela beror ju på vad du ska programmera för något. Det är ju rätt bra att kunna vektoranalys om man ska bygga en 3D-motor. Ska du programmera ett spel ala MS-röj så klarar man sig med gymnasiematten.

Permalänk
Medlem

Du behöver inte nödvändigtvis vara bra på matte men det hjälper väldigt mycket om du vet vad det finns för matte man kan räkna. T.ex. i spelprogrammering, förutom addition/subtraktion/division/multiplikation, använder vi mycket vektorer, matriser och modulo (bland annat).
Jag är inte bra på att räkna matte, men jag är glad att jag gick mycket matte i gymnasiet så t.ex. konceptet om matriser ligger där någonstans i bakhuvudet så jag har lättare att komma igång med att programmera sånt (även om det blir mkt googlande också såklart)

https://www.youtube.com/watch?v=fjOdtSu4Lm4

Visa signatur

13600KF, RTX 4070 FE, B760I, 32GB DDR4, NR200P

Permalänk
Skrivet av lambdan:

Jag är inte bra på att räkna matte, men jag är glad att jag gick mycket matte i gymnasiet så t.ex. konceptet om matriser ligger där någonstans i bakhuvudet så jag har lättare att komma igång med att programmera sånt

Jag tror en viktig faktor är att även om man glömt allt om hur man räknade med de här verktygen, så minns man att det fanns matematiska verktyg för detta och man slipper återuppfinna hjulet utan kan just istället använda en sökmotor för att hitta formler och teori.

Permalänk
Medlem
Skrivet av anon347081:

Under några års tid har jag läst och hört att om man vill bli professionell på att programmera, då måste man först bli professionell på matematik? I mina ögon får jag då bilden att man aldrig kan komma upp till Mark Zuckerberg, Steve Jobs eller Bill Gates nivå inom skapande av plattformar så som programvaror, hemsidor med mera om man inte är bra på matematik?

Nu är frågan, vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering? För gör man egen research så verkar det bara handla om att man ska förstå vissa matematiska symboler, så som "+, -, *, /" plus, minus, gånger och delat med. Sen finns det ju andra också som jag tror Matematik 2B använder och som även används i programmering.

Jag tror själva förvirringen bakom detta handlar om att man ser det kopplingen till matematik på ett onödigt specifikt sätt, typiskt då till begreppet matematik som något slags helhet, men matematik är ett jättestort ämne med massor av underdiscipliner.

Datorn är ju i grund och botten en beräkningsmaskin, hela grejen den gör "är matematik" om man hårddrar det; och algoritmer t.ex. är ju i grund och botten ett matematiskt begrepp som är fundamentalt för programmering.

MEN inget av det där innebär inte att du behöver vara professor i matematik för att börja programmera, eller att det nödvändigtvis skulle hjälpa särskilt mycket för den delen.
Om du bara kan lite grundläggande matematik kan du ju absolut börja lära dig programmera. Du behöver inte egentligen bry dig om att delar av det du lär dig genom att lära dig programmera formellt även kan räknas in i ämnet matematik.

Sedan kan det förstås krävas domänkunskap som involverar mer avancerad matematisk kunskap för att lösa vissa typer av problem, men det handlar inte så mycket om att lära sig programmera som det handlar om hur man löser just dessa problem.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem

Hur mycket matematikkunskaper du behöver beror på vad för typ av programmering du ska göra. Jag är dålig på matematik och använder bara grundläggande kunskaper på gymnasienivå i mitt dagliga arbete. Jag har i stort sett aldrig känt mig begränsad/hindrad i detta avseende.

Visa signatur

Klicka på citera när du ska svara någon!

Permalänk
Medlem
Skrivet av anon347081:

Under några års tid har jag läst och hört att om man vill bli professionell på att programmera, då måste man först bli professionell på matematik? I mina ögon får jag då bilden att man aldrig kan komma upp till Mark Zuckerberg, Steve Jobs eller Bill Gates nivå inom skapande av plattformar så som programvaror, hemsidor med mera om man inte är bra på matematik?

Nu är frågan, vad är sant och falskt när det kommer till kopplingen mellan matematik och programmering? För gör man egen research så verkar det bara handla om att man ska förstå vissa matematiska symboler, så som "+, -, *, /" plus, minus, gånger och delat med. Sen finns det ju andra också som jag tror Matematik 2B använder och som även används i programmering.

Beror ju klart på vilket område du kommer att arbeta som utvecklare inom. Om du förväntas göra någon implementation som baseras på matematik som folk normalt studerar på universitetsnivå så är det klart svårt om du inte förstår det (eftersom du då har svårare att avgöra om svaren du får eller om flödet är rimligt).

Har jobbat som utvecklare både back och frontend i ungefär 15 år och har aldrig använt någon av alla de mattekurserna vi var tvungna att ta för ingenjörstiteln. Fullständigt bortkastat för min del (har inte ens använt linalg). Sitter du som webutvecklare så skulle jag säga att på sin höjd har du eventuellt lite nytta av boolesk algebra för att förenkla dina uttryck (men det får du från digitalteknik ändå) och som någon skrev: räkna ut övergångar.

tl:dr; de flesta utvecklare behöver inte ha några högre matematikkunskaper (finns klart undantag).

Visa signatur

Att förespråka Mac på Swec är som att förespråka hybridbilar på en raggarträff i Mora.

Permalänk

Läs numeriska metoder.

Där har du ditt svar på vilken matematik du SKALL kunna.

Den är dessutom enklare än vanlig matematik