Mathe als Programmierer?

Fragen zum Studium, zu IT-Beruf
Xeon
Beiträge: 156
Registriert: So Dez 17, 2017 4:10 pm

Mathe als Programmierer?

Beitrag von Xeon » Mo Sep 19, 2022 12:09 pm

Hallo zusammen

Braucht man Mathe als Programmierer? Hier arbeiten bestimmt einige von euch als Programmierer und ihr könnt mir sicher sagen, wie viel man Mathe brauch, um als Programmierer arbeiten zu können.


Liebe Grüße
Xeon

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8843
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Mathe als Programmierer?

Beitrag von Xin » Mo Sep 19, 2022 12:20 pm

Xeon hat geschrieben:
Mo Sep 19, 2022 12:09 pm
Braucht man Mathe als Programmierer? Hier arbeiten bestimmt einige von euch als Programmierer und ihr könnt mir sicher sagen, wie viel man Mathe brauch, um als Programmierer arbeiten zu können.
Ich arbeite im CAD-Umfeld, also 3D-Welten konstruieren und miteinander verrechnen.
Entsprechend ist Lineare Algebra definitiv ein wichtiges Thema. Das packt man dann in Algorithmen und wenn die da sind, benutzt man sie nur noch. Trotzdem muss man sie auch warten und erweitern können, also lesen, verstehen und eben weiterentwickeln.

Privat mache ich Compilerbau. Durchaus auch ein angesehener Fachbereich, aber das ist eher Algorithmik, mathematisch bewegen wir uns hier eher im Bereich von Grundschulmathematik.

Mathematik ist wichtiger Teil der Informatik. Programmierung ist heute allerdings auch viel FrontEnd/BackEnd... also Datenbank-Abfragen und die Daten angemessen aufarbeiten. Hier ist eher die Frage, ob die Daten irgendwie mathematisch relevant sind.

Es hängt also sehr vom Themengebiet ab, in dem Du arbeitest. In einem Informatikstudium sind die ersten Semester auf jeden Fall sehr mathematiklastig.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Xeon
Beiträge: 156
Registriert: So Dez 17, 2017 4:10 pm

Re: Mathe als Programmierer?

Beitrag von Xeon » Fr Sep 23, 2022 1:34 pm

Xin hat geschrieben:
Mo Sep 19, 2022 12:20 pm
Xeon hat geschrieben:
Mo Sep 19, 2022 12:09 pm
Braucht man Mathe als Programmierer? Hier arbeiten bestimmt einige von euch als Programmierer und ihr könnt mir sicher sagen, wie viel man Mathe brauch, um als Programmierer arbeiten zu können.
Ich arbeite im CAD-Umfeld, also 3D-Welten konstruieren und miteinander verrechnen.
Entsprechend ist Lineare Algebra definitiv ein wichtiges Thema.

Lineare Algebra kann ich nicht. Ich vermute man braucht überall Lineare Algebra, wenn man etwas mit 3D programmiert.

Ich mache im Moment einen C++ Kurs, dort kommen später Themen dran wo man 2D Grafik programmiert.
Im Moment ist im Kurs das Thema, wie man mit Qt grafische Oberflächen programmiert.
Später kommt noch die Datenbankprogrammierung.

So langsam zweifele ich, dass ich mit diesem Kurs eine Arbeit finde, als C++ Programmierer. Weil man doch mit
C++ komplexere Sachen programmiert?

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8843
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Mathe als Programmierer?

Beitrag von Xin » Fr Sep 23, 2022 3:23 pm

Xeon hat geschrieben:
Fr Sep 23, 2022 1:34 pm
Xin hat geschrieben:
Mo Sep 19, 2022 12:20 pm
Xeon hat geschrieben:
Mo Sep 19, 2022 12:09 pm
Braucht man Mathe als Programmierer? Hier arbeiten bestimmt einige von euch als Programmierer und ihr könnt mir sicher sagen, wie viel man Mathe brauch, um als Programmierer arbeiten zu können.
Ich arbeite im CAD-Umfeld, also 3D-Welten konstruieren und miteinander verrechnen.
Entsprechend ist Lineare Algebra definitiv ein wichtiges Thema.
Lineare Algebra kann ich nicht. Ich vermute man braucht überall Lineare Algebra, wenn man etwas mit 3D programmiert.

Ich mache im Moment einen C++ Kurs, dort kommen später Themen dran wo man 2D Grafik programmiert.
Linieare Algebra ist da hilfreich, wo Du mehrdimensionale Probleme löst. 2D ist auch mehrdimensional.

Du sagst jetzt Lineare Algebra kannst Du nicht. Heißt, da muss ein Fachmann her. Gucken wir uns Algebra an:

Code: Alles auswählen

1+2=3
Und jetzt gucken wir uns dreimal Algebra an und behaupten, eine Rechnung wäre für x, die andere für y, die letzte für z. Wir verschieben einen 3D-Punkt (1,4,3) um die Werte (2,5,2):

Code: Alles auswählen

1+2=3
4+5=9
3+2=5
Und jetzt gucken wir uns das als Problem der linearen Algebra an:

Code: Alles auswählen

/1\   /2\   /3\
|4| + |5| = |9|
\3/   \2/   \5/
Aus drei Gleichungen für jeweils eine Dimension haben wir eine Gleichung mit 3D-Zahlen gemacht, Vektoren genannt. Oben steht X, in der Mitte Y, unten Z.

Wir haben die Zahlen in einer Reihe (entlang einer Linie) untereinander geschrieben, fertig ist die lineare Algebra. Okay... da kommt noch einiges mehr - Multiplikation funktioniert jetzt beispielsweise anders, aber das war die Grundlage.
Man muss dafür eine Vorstellung entwickeln. Aber wenn man etwas lernen möchte, ist "Kann ich nicht" definitiv kein Grund das Lernen aufzugeben.
Wie es bei der Programmierung Bücher gibt, die C++ erklären, gibt es für soetwas Mathebücher, Du kannst Dir Vorlesungen auf Youtube ansehen.

Und wenn Du 2D-Grafik machst und Dir einen Punkt A vorstellt, der an der Position x und y liegt, dann schreibst Du A liegt an (x,y). Auch das ist ein Vektor, nur dass die Linie entlang sich die Zahlen aufreihen nun von links nach rechts geht und nicht von oben nach unten. Und wenn Du den Abstand zwischen A und B wissen willst, dann machst Du zwei Gleichungen auf und mit 2D-Vektoren halt nur eine. Inhaltlich ist das aber das aber identisch.

Wenn Du also Dich für 3D interessierst - da fängst Du nicht bei Null an, selbst dann nicht, wenn Du nur einen Hauptschulabschluss hast. Wir hatten hier schon 15jährige, die mit OpenGL 3D-Welten entwickelten.
Xeon hat geschrieben:
Fr Sep 23, 2022 1:34 pm
So langsam zweifele ich, dass ich mit diesem Kurs eine Arbeit finde, als C++ Programmierer. Weil man doch mit
C++ komplexere Sachen programmiert?
Die Frage kann ich Dir nicht beantworten. Sagen wir mal so... Datenbanken und GUI sind in C++ etwas unterbesetzt heute. Das geht mit zum Beispiel C# häufig einfacher. Das könnte bedeuten, dass Du mit dem Know-How gesucht bist, weil es kaum einer macht, wie es auch bedeuten wird dass Du lange suchen musst, weil es nunmal kaum einer macht, weil es nunmal auch kaum einer sucht. ^^
Aber wenn ihr euch findet, hast Du Deinen Job.

Ich empfehle Dir aber auch, zu überlegen was Du erreichen möchtest und was Du investieren möchtest. Ja, für Mathe muss man schon Zeit investieren. Für C++ auch. Aber der Jobmarkt ist leergefegt und die Arbeitgeber müssen Leute auch anlernen, denn niemand in dem Bereich ist perfekt ausgebildet. Vieles lernt man auch erst im Job und je komplexer der Job ist, desto eher ist auch dem Arbeitgeber bewusst, dass eine Einarbeitung Monate dauert oder auch mal ein Jahr. Man fragte nach, ob ich Erfahrung in dem Bereich habe... ich sagte, es gibt drei Hersteller, die das Problem haben und keiner von denen steht als Arbeitgeber in meinem Lebenslauf. Da war die Aussage bei meinem letzten Bewerbungsgespräch mit über 25 Jahren C++-Erfahrung: Im ersten Jahr wird man von mir nicht viel verlangen, weil ich mich erstmal einarbeiten müsste.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Xeon
Beiträge: 156
Registriert: So Dez 17, 2017 4:10 pm

Re: Mathe als Programmierer?

Beitrag von Xeon » Di Okt 04, 2022 3:57 pm

Entschuldige für die späte Antwort Xin.
Xin hat geschrieben: Ich arbeite im CAD-Umfeld, also 3D-Welten konstruieren und miteinander verrechnen.
Entsprechend ist Lineare Algebra definitiv ein wichtiges Thema.
So ein Job wie du hast wäre cool.
Xin hat geschrieben: Du sagst jetzt Lineare Algebra kannst Du nicht. Heißt, da muss ein Fachmann her. Gucken wir uns Algebra an:
CODE: ALLES AUSWÄHLEN

Code: Alles auswählen

1+2=3
Und jetzt gucken wir uns dreimal Algebra an und behaupten, eine Rechnung wäre für x, die andere für y, die letzte für z. Wir verschieben einen 3D-Punkt (1,4,3) um die Werte (2,5,2):
CODE: ALLES AUSWÄHLEN

Code: Alles auswählen

1+2=3
4+5=9
3+2=5
Und jetzt gucken wir uns das als Problem der linearen Algebra an:
CODE: ALLES AUSWÄHLEN

Code: Alles auswählen

/1\   /2\   /3\
|4| + |5| = |9|
\3/   \2/   \5/
Aus drei Gleichungen für jeweils eine Dimension haben wir eine Gleichung mit 3D-Zahlen gemacht, Vektoren genannt. Oben steht X, in der Mitte Y, unten Z.
Ist wirklich nicht schwer was du erklärt hast :D
Xin hat geschrieben: Wir haben die Zahlen in einer Reihe (entlang einer Linie) untereinander geschrieben, fertig ist die lineare Algebra. Okay... da kommt noch einiges mehr - Multiplikation funktioniert jetzt beispielsweise anders, aber das war die Grundlage.
Man muss dafür eine Vorstellung entwickeln. Aber wenn man etwas lernen möchte, ist "Kann ich nicht" definitiv kein Grund das Lernen aufzugeben.
Wie es bei der Programmierung Bücher gibt, die C++ erklären, gibt es für soetwas Mathebücher, Du kannst Dir Vorlesungen auf Youtube ansehen.
Aufgeben? Das kommt nicht in Frage!
Ich hole seit länger Zeit Mathe nach, was ich versäumt habe in der Schule.
Xin hat geschrieben: Wenn Du also Dich für 3D interessierst - da fängst Du nicht bei Null an, selbst dann nicht, wenn Du nur einen Hauptschulabschluss hast.
Dazu noch ein sehr schlechter Hauptschulabschluss.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8843
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Mathe als Programmierer?

Beitrag von Xin » Di Okt 04, 2022 4:54 pm

Xeon hat geschrieben:
Di Okt 04, 2022 3:57 pm
So ein Job wie du hast wäre cool.
Es ist ein Job, er bezahlt meine Rechnungen und ich habe auch Bissspuren im Schreibtisch, aber ich hätte auch was mit Datenbanken machen können und würde mich zu Tode langweilen. ;-)
Xeon hat geschrieben:
Di Okt 04, 2022 3:57 pm
Ist wirklich nicht schwer was du erklärt hast :D
Man muss sich darüber klar werden, dass Mathematik einfache Regeln sind. Die muss man lernen und durchführen.
Der Unterschied von Mathe zum Alltag ist, dass ein Operator eine exakte Bedeutung hat, da gibt es keine subtilen Untertöne, keine Zweideutigkeiten, keine Gedichtsinterpretation. Es ist eine Sprache ohne Interpretation. Was die Sache eigentlich sehr einfach macht, aber so denken wir halt nicht im Alltag.

Aber so denken wir beim Programmieren.
Xeon hat geschrieben:
Di Okt 04, 2022 3:57 pm
Xin hat geschrieben: Man muss dafür eine Vorstellung entwickeln. Aber wenn man etwas lernen möchte, ist "Kann ich nicht" definitiv kein Grund das Lernen aufzugeben.
Wie es bei der Programmierung Bücher gibt, die C++ erklären, gibt es für soetwas Mathebücher, Du kannst Dir Vorlesungen auf Youtube ansehen.
Aufgeben? Das kommt nicht in Frage!
Ich hole seit länger Zeit Mathe nach, was ich versäumt habe in der Schule.
Mit passablen Grundlagen der Schulmathematik hast Du auch die wichtigsten Grundlagen zum Programmierer.
Ich habe auch schon ausgebildeten Programmierern erklärt, wie man bis 16 zählt - hexadezimal. Zahlensysteme war - glaube ich - Stoff der 5. Klasse.
Xeon hat geschrieben:
Di Okt 04, 2022 3:57 pm
Xin hat geschrieben: Wenn Du also Dich für 3D interessierst - da fängst Du nicht bei Null an, selbst dann nicht, wenn Du nur einen Hauptschulabschluss hast.
Dazu noch ein sehr schlechter Hauptschulabschluss.
Macht die Sache nicht einfacher, aber die Frage ist immer, was haben die Leute im Kopf.

Der letzte Mathenachhilfeschüler, den ich hatte, hat ADHS und stand in Mathe 4- auf Hauptschulnivea weil die Lehrer ihn möglichst nicht sitzen lassen wollten, damit die Nervensäge nächstes Jahr von der Schule abgeht. Man schenke ihm Punkte für Unsinn wie dafür, dass er Werte aus der Aufgabe ins Heft übertragen hatte, damit er die Mathearbeiten nicht mit der Note zurück bekam, die er für seine Unkenntnis verdient hätte.
Dann kam er auf die blöde Idee, Abitur zu machen - keine Ahnung, wer ihm den Quatsch in den Kopf gesetzt hat... dafür brauchte er aber bessere Leistungen in Mathe. Der Jung war erkennbar intelligent, aber halt dumm. Und nun brauchte er Mathe-Nachhilfe.

So testete ich ihn, damit ich weiß, wo ich ansetzen muss. Bei der Frage was 7xx-8xx ist, schrieb er drunter, dass ich da einen Fehler in der Aufgabe habe, weil das geht ja gar nicht. Bruchrechnung strich er komplett durch, konnte er nicht. Er wusste, dass 1000m ein Kilometer sind, aber er wusste nicht wieviel Gramm ein Kilogramm sind. Sagen wir mal so, realistisch stand er sechs und es war noch genug Luft drin, um zur fünf aufzusteigen. Mein Versuch ihn zu testen, war selbst bei den einfachsten Aufgaben zu hoch gegriffen. Wir haben wirklich in der Grundschule angefangen, ganz am Anfang. Was sind Ziffern und wie werden aus Ziffern Zahlen und was soll das alles. Wohlgemerkt - in der Zeit war er in der 10. Klasse und ich hatte vor dem Test gesagt, dass ich ihn auf eine eins bringe. Nach dem Test hatte ich den Eindruck, dass ich mich da etwas weit aus dem Fenster gelehnt hatte. Er war intelligent, aber eben auch wirklich strunzdumm.
Und: Er interessiert sich nicht im Entferntesten für Mathe.

Die zentrale Abschlussprüfung am Ende der 10. Klasse empfand er zu einfach, weswegen er sich nicht richtig darüber freuen wollte, dass er die mit "sehr gut" bestanden hatte.
Er hatte Mathe dann auch schnell wieder aufgegeben - zum Abitur hat es dieses Jahr aber trotzdem gereicht. Er überlegt jetzt zu studieren. Allerdings nicht Mathe... :-D

Wer sich in seiner Freizeit einem Programmierforum aufhält, kann nicht vollkommen unterbelichtet sein. Der muss sich für sowas interessieren. Und wer sich interessiert, kann auch Mathe. Und wenn jemand fähig ist, Mathe zu lernen, aber dann schlecht in Mathe ist, hat entweder sehr viel um die Ohren, was ihm das Lernen unmöglich macht und/oder miese Lehrer.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Xeon
Beiträge: 156
Registriert: So Dez 17, 2017 4:10 pm

Re: Mathe als Programmierer?

Beitrag von Xeon » Sa Okt 08, 2022 7:59 pm

Ab welcher Klasse ist Linieare Algebra in Mathe?

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8843
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Mathe als Programmierer?

Beitrag von Xin » Sa Okt 08, 2022 8:08 pm

Xeon hat geschrieben:
Sa Okt 08, 2022 7:59 pm
Ab welcher Klasse ist Linieare Algebra in Mathe?
Elfter. Das ist häufig der Einstieg in Abi-Mathe.

Ich hab vor ein paar Jahren einem Hauptschüler in Mathe gegeben, da sind wir am Ende auch mal kurz in die lineare Algebra gehüpft, damit er es mal sieht. Der hat dieses Jahr sein Abitur gemacht. Ohne, dass er in der Zeit noch Nachhilfe von mir genommen hat.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3121
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Mathe als Programmierer?

Beitrag von cloidnerux » Mo Okt 10, 2022 7:57 pm

Viele kompliziertere Probleme lassen sich nur mit Mathematik erschlagen, machen aber m.M.n den meisten Spaß. Von Routenplanung, Logistikoptimierung, Daten Empfangen und Senden, Auswertungen, Signalprozessierung, KI/AI, Simulationen.
Da wird teilweise Wild mit höherer Mathematik um sich geschmissen, wirkt von außen immer ziemlich Wild, aber wenn man einmal den Einstieg geschafft hat macht es mehr spaß als Stumpf irgendwelche Anwendungen zu schreiben.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Xeon
Beiträge: 156
Registriert: So Dez 17, 2017 4:10 pm

Re: Mathe als Programmierer?

Beitrag von Xeon » Di Okt 11, 2022 12:06 pm

cloidnerux hat geschrieben: Viele kompliziertere Probleme lassen sich nur mit Mathematik erschlagen, machen aber m.M.n den meisten Spaß. Von Routenplanung, Logistikoptimierung, Daten Empfangen und Senden, Auswertungen, Signalprozessierung, KI/AI, Simulationen.
Das bedeutet, man sollte auch andere Gebiete in der Mathematik dafür können, als nur Lineare Algebra?

Antworten