Przydatność matematyki w pracy programisty

0

Cześć,
Jestem na etapie wyboru kierunku studiów na uczelni technicznej. Mogę wybrać spośród wielu kierunków informatycznych dostępnych na PW. Zorientowałem się, że na jednych matmy jest więcej, a na innych mniej. Te silniej związane z matmą mają wyższe progi. Zastanawiam się, czym to jest spowodowane. Czy matematyka jest później przydatna w pracy w branży IT? Myślę nad wybraniem kierunku cyberbezpieczeństwo, który charakteryzuje się nieco niższym progiem i mniejszą ilością matematyki, ale nie wiem czy to dobry wybór - może należy wybrać np. kierunek Inżyniera i Analiza Danych, na którym matmy jest dużo?

9
  1. "To zależy". Jednemu sie przyda, drugiemu nie, nie ma reguły. Jeden będzie opracowywać nowe algorytmy sztucznej inteligencji dla google, a drugi będzie poprawiać kolorki w CSS i wyrównywać tabelki w HTMLu.
  2. IT security też może wymagać matematyki, jeśli będziesz zajmować się np. analizą ransomware czy kryptografią
  3. Analiza Danych / Data Science to jest bardziej matematyka/statystyka niż informatyka.
7

Czy matematyka jest później przydatna w pracy w branży IT?

np. w programowaniu grafiki 3D.

2
licealista napisał(a):

Czy matematyka jest później przydatna w pracy w branży IT?

Masz w systemie jakąś tabelkę. Musisz zrobić, żeby był z niej generowany wykres, jakieś statystyki itp.
Dobrze by było wcześniej liznąć podstawy z takich rzeczy, żeby potem to tylko zaimplementować.

7

Matematyka (nie tylko arytmetyka, którą akcentują koledzy) to gimnastyka umysłu, otwieranie horyzontów, wzrost produktywności mózgu, co zdecydowanie w IT jest ważne

1

Zacząłem pracę po 2 latach przerwy od nauki (po liceum). Po znajomych z pracy widzę, że o ile po studiach nie nauczyli się programować (nie wszyscy konczyli informatyke) to absolwenci kierunków technicznych rozwijają i uczą się szybciej niż ja. No i myślą sprawniej.
Sam się tym nie zrażam bo zaczynając pracę teraz w ich wieku będę nie będę juniorem, ale jest to widoczne.
Więc tak jak piszą wyżej. Przede wszystkim matematyka rozwija umysł, a to czy się przyda to już inna sprawa (choć w gamedevie dość przydatna jest znajomość fizyki i matmy)

5

Na obu kierunkach nauczą cię więcej matmy niż będzie ci potrzebne do pracy programisty, jeżeli patrzysz na to z nieistotnej perspektywy czyli z perspektywy typowego dnia przed komputerem.

Twoje pytanie przypomina mi moją naiwność z wieku szczenięcego.
Jakbym teraz miał 18 lat i zastanawiał się nad studiami z informatyki, to takie byłyby moje cele.

Cel Podstawowy: Mieć dobre szanse na pracę w super firmie. Mówię tu o minimum 100k$ na rok po skończeniu studiów. Jak w to nie celujesz, to idziesz na studia tylko na zasadzie bezwładności życiowej i tego, że twoi rodzice są klasą średnią. Bootcamp i projekt hobbystyczny to wszystko, co potrzeba aby dobić do 15k w Polsce.
Tu przydadzą się studia, które:

  • mają dużo angielskiego
  • mają renomę prestiżowości
  • uczą wymyślania algorytmów w kilka minut i krótkich form kodowania na czas. Sensu to nie ma wielkiego, ale to jest podstawowa umiejętność potrzebna do rekrutacji FANG i ich naśladowców.
  • uczą obracania się w grupie przemądrzałych nerdów. Pomyśl o serialu Silicon Valley. On jest tylko trochę przerysowany. Z kim przystajesz, takim się stajesz, btw.

Cel bonusowy: załapać przydatne znajomości. Twój kolega z akademika może cię polecić do pracy, albo wkręcić w dobry startup.

Ja uważam, że dużo matematyki na studiach jest pozytywnie skorelowane z tymi celami. Twój wybór.

2

W informatyce na pewno sie przydaje matematyka dyskretna. Grafy, kryptografia itd.

Na drugim miejscu szukalbym kierunku z obliczeniowka kwantowa. Teraz ma to moze nikle zastosowanie ale studia skonczysz za 5 lat, kto wie co bedzie wtedy na topie.

Warto liznac statystyki - przydaje sie na spotkaniach dot. estymat.

Natomiast jesli chcesz byc programista to matematyka nie moze byc dominujacym tematem studiow, bo oprocz niej masz jeszcze wiele watkow bardziej zwiazanych z programowaniem.

4

Zalezy od tego nad czym pracujesz :P

  • arytmetyka prawie zawsze
  • trygonometria, macierze, geometria (podstawowy poziom) -> gamedev, grafika
  • statystyka, rachunek prawdopodobienstwa (podstawy + pare pojec typu mediana, percentyl itp.) -> testy wydajnosciowe i opracowywanie wynikow
  • calki -> u mnie nigdy :P
3

Matematyka można przydać się przydać w informatyce, ale to zależy od poletka jakim się zajmujemy. Czasem może być też tak, że łatwiej jest zrozumieć algorytm rozpisując to na kartce. Wtedy przydaje się np.:

  • złożoność obliczeniowa,
  • równania charakterystyczne (derekursywacja),
  • macierze,
  • liczby zespolone,
  • wielomiany,
  • grafy,
  • teoria mnogości (grafika, operacje na zbiorach w bazach danych).

Oczywiście zawsze można znaleźć program, który wszystko policzy za nas. W każdym razie matematyka pomaga w ćwiczeniu analitycznych umiejętności, więc intensywna jej nauka przez kilka lat - nawet po studiach - może zaowocować sprawniejszym rozwiązywaniem problemów. Tak że nie ma co się matematyki bać, tylko znaleźć dobre źródło wiedzy albo nauczyciela.

3

Tak jak mówione było wcześniej. Matematyka rozwija mocno umysł, szybciej potem przyswajasz techniczne rzeczy jeśli matematyke potrafisz przyswoic sprawnie.
Dzięki przyswajaniu trudnych rzeczy Twój mózg mysli analitycznie, co jest cięzkie u kogoś po bootcampie kto od łopaty przebranżowuje się na programistę.

Natomiast w zwykłym klepaniu CRUDów i 95% codziennym developmencie jaki robi większość z nas, nie użyjesz matematyki praktycznie wcale.

4

Całe życie nie lubiłem trygonometrii. A potem prawie dwa lata jedynie co robiłem to soft gdzie cała logika biznesowa to była trygonometria + algebra. Także czasami projekty mogą zaskoczyć xD. Nigdy nie wiesz na co trafisz.

2

Myślę nad wybraniem kierunku cyberbezpieczeństwo, który charakteryzuje się nieco niższym progiem i mniejszą ilością matematyki

Poza crypto to matematyki w security nie za wiele. A ta matma, która jest w crypto też jest dość specyficzna, bo nie polega ona na rozwiązywaniu równań czy znajomości tysiąca wzorów tak jak Ci każą robić na studiach, a dostrzeganiu ukrytych cech i zależności w bardzo prostych wzorach. Fajnie to widać w RSA Survey autorstwa Dana Boneh, gdzie podsumowuje typowe ataki na potencjalne błędy implementacyjne w RSA. Przy okazji jednego projektu miałem osobisty kontakt z człowiekiem, który robił doktorat specjalizując się w kryptografi na jakimś uniwerku w Australii, po współpracy z nim estymuję, że ludzi tak na prawdę rozumiejących całą dzisiejszą kryptografię jest może do tysiąca na całym świecie.

Jako programista w biznesie matmy prawie na pewno nie uświadczysz, chyba, że wyspecjalizujesz się w np. w grafice komputerowej.

3
  1. Mam ochotę dodać, że absolwenci wszelkich fizyk i pokrewnych, czyli ludzie można powiedzieć utuczeni matematykami (świadomie używam liczby mnogiej) z palcem w pewnej części budują karierę w IT, o ile tego chcą. I nagle się okazuje, że brak jakiegoś narzędzia, Springa, IDE na studiach im krzywdy nie zrobiło

  2. Ze studiów, po latach ... dobrych kilku ... najbardziej cenię problemy podstawowe. Poznane wtedy kilkusezonowe narzędzia ... może pan sobie wsadzić, tam gdzie pan może pana majstra w d... pocałować

2

Matematyka we frontendzie to (szerokość ekranu - szerokość budki na ekranie)/2 Ale teraz pewnie mają już do tego parę bibliotek. (tak trolling, ale nie mogłem się powstrzymać).
Są kawałki informatyki, w których pewnie działy matematyki się przydają:

  • AI (algebra liniowa, ale są biblioteki, jak chcesz wejść głębiej, to się przydaje matma)
  • Google powstał na podstawie prac doktorskich z mocnymi elementami matematyki (Page Rank)
  • Geometria płaska i 3D przydają się w gamingu, nawigacji. Wszystkie te równania okręgu, lerpy, slerpy i inne potworki. Macierzami też trzeba się czasami pobawić.
  • Optymalizacja procesów - opracuj program, który poukłada produkcję fabryki, logistykę i terminy dostaw pod kątem odpadów produkcyjnych, przestojów linii produkcyjnej, mieszczenia się produktu na naczepie, minimalizacji pustych przebiegów i dostarczania zamówionych elementów na czas. Bez matematyki (różniczki, gradienty, algebra) nie da się.
  • Symulacje działania elementów elektronicznych (np. program, który symuluje jak będzie działał procesor i7 zanim ktoś go w waflu wypali.

Zanim pojawią się marudnicy od "w PL tylko CRUD" - za wyjątkiem Google Page Rank, gdzie nie mam wiedzy, pozostałe tematy są rozwijane w Polsce.

0
AnyKtokolwiek napisał(a):
  1. Mam ochotę dodać, że absolwenci wszelkich fizyk i pokrewnych, czyli ludzie można powiedzieć utuczeni matematykami (świadomie używam liczby mnogiej) z palcem w pewnej części budują karierę w IT, o ile tego chcą. I nagle się okazuje, że brak jakiegoś narzędzia, Springa, IDE na studiach im krzywdy nie zrobiło

Nom. Mam kolegę po Fizyce Technicznej na Politechnice. Powtarzał kilka lat, ale teraz jest kierowcą TIRa! :]

1

Zależy od branży. Z perspektywy c++ owca kiedy chcesz pracować w czymś innym niż projekt napisany w C z klasami sprzed epoki kamienia łupanego, to matma jest przydatna. Gamedev, praca z AI, analiza obrazu, VR, metody numeryczne, jakieś inne projekty inżynierskie itd Na wielu rozmowach kwalifikacyjnych miałem pytania o matme, szczególnie o algebre liniową. W wielu przypadkach również inna wiedza ze studiów często się przydaje, np związana z architekturami komputerów, optymalizacji itd. Natomiast ... jeżeli planujesz iść w webówke(90% rynku w Polsce) to praktycznie nic Ci się nie przyda z studiów i pośród moich znajomych raczej nikt sobie tym nie musiał zakrzątać głowy.
Także, pytanie w jaką branże celujesz :-) Ja ogólnie bym się przykładał na studiach do tych matematycznych/fizycznych przedmiotów też, bo nigdy nie wiesz co Cię zainteresuje i w co będziesz chciał iść a nóz nie trzeba będzie powtarzać wiedzy od zera, ale wystarczy prosta powtórka materiału.

1

Zgadzam się z tym, co napisali przedmówcy, że to zależy, mi do tej pory (web, potem embedded) nie była zbyt przydatna, ale w aktualnej pracy matematyka i fizyka przydaje mi się bardzo (tworzenie modeli części składowych satelitów i satelitów jako całości), więc po prostu zależy, gdzie się trafi i co się chce robić.

3

Jeśli spojrzeć na matematykę szerzej, jako sposób myślenia i język zapisu (a nie poszczególne ich przejawy jak algebra czy trygonometria) to dobre zrozumienie matematyki jest pomocne w programowaniu. Nawet banalne wydawałoby się przekształcanie wzorów, robię je bez przerwy robiąc refactor funkcyjnego kodu. Matematyka wymaga też bardzo ustrukturyzowanego myślenia, które jest pomocne w organizowaniu kodu. Jeśli zrozumiesz matematykę, łatwiej będzie programować funkcyjnie.
Oprócz tego, oczywiście tu i ówdzie używa się trygonometrii, algebry, rozwiązuje się układy równań, itp. Matematyka też może być przydatna w mierzeniu wydajności i optymalizacji, żeby przewidzieć czy warto coś optymalizować czy nie. Jeszcze bym dodał, bo chyba nie padło, teorię kategorii i dowodzenie poprawności kodu.
To wszystko raczej sprawi, że będziesz lepszym programistą, większość programistów nie ma o tym pojęcia i z tym żyją. Też nie liczyłbym, że na studiach nauczą cię matematyki. W końcu studia nie są od tego, żeby uczyć tylko wykładać, student uczy się sam, uczelnia tylko kierunkuje wysiłki.

0

Dziękuję bardzo za wszystkie wypowiedzi. Nie spodziewałem się tak dużego odzewu. Po przeczytaniu każdej odpowiedzi i wyciągnięciu wniosków zdecydowałem się na kierunek "Inżynieria i analiza danych". Czy słusznie - czas pokaże.

0

Kiedyś dane mi było pracować z doktorem matematycznym.
Łebski gość, ale on to się w robocie nudził.
Taski jak Taski nic szczególnego, tu bug tu coś zapisać do db, tam coś zakodzic.

Jak sam mówił jego problemem były rekrutacje, bo nie przykładał wagi do frameworka, narzędzia, a interesowało go sedno sprawy.
To było już ładnych parę lat temu nie było tylu opcji jak teraz i mówił że był ulewany bo brak komercyjnego doświadczenia w.....

Nasze drogi się rozeszły, nie wiem co u niego teraz, ale patrząc się na jego przykład to matematyka raczej przeszkadzała niż pomagała. Nie miał gdzie rozwinąć skrzydeł.

1 użytkowników online, w tym zalogowanych: 0, gości: 1