ich persönlich bin ja der meinung dass heutige informatik studiengänge viel zu wissenschaftlich angelegt sind. für die forschung ist das ja ganz gut was man da beigebracht kriegt, aber wenn man als softwareentwickler arbeiten will, was denke ich auf die breite masse derjenigen zutrifft, die heute informatik studieren, dann hat man wenn man sich nicht während des studiums selbst alles beibringt, nen ganz klaren nachteil wenn man von der uni ins berufsleben einsteigt. es ist zwar gut dass man viel von mathe versteht und so, das man formeln lesen kann, aber wenn man mich fragt, dann ist das meiste was man beigebracht kriegt einfach nur balast.
Ich denke nicht, dass die Studiengänge zu wissenschaftlich ausgelegt sind. Die ersten Programmierer - und ich wette auch die Hälfte deiner Profs - haben Mathe oder Physik studiert und sind dann die Informatik gegangen. Wenn du mal einen Mathestudenten triffst wird der auch mit Sicherheit Programmieren können. Mathematikfächer lehren dich das korrekte, sachliche, analytische Programmieren. Man zerlegt z.B. auch in der Mathematik oft in Teilprobleme. Hinzukommt das du Mathe mindestens für Automaten/Formale Sprachen (+Compilerbau), Datenbanken und Kryptographie benötigt. Außerdem brauchst du die Numerik um deine Rechenfehler abzuschätzen und die Statistik sowieso um die Komplexität des Problem/Algorithmusses abzuschätzen. Seit es die Informatik gibt wird das von Mathematikern betrieben oder eben Menschen die sich das "selbst beigebracht haben". Und weil es nunmal jeder irgendwie selbst versucht gibt es auch so unendlich viele Schrottsoftware und die Informatik hat so einen schlechten Ruf. Ich denke um der gesamten IT einen seriöseres Image zu geben sollten fachlich gut ausgebildete exakt arbeitende Programmierer ausgebildet werden, wofür meiner Meinung nach Mathematik unerlässlich ist.
Und übrigens hat selbst Andrew Tanenbaum, dessen Bücher über Netzwerkprogrammierung und Betriebssysteme jeder Informatiker kennen sollte, Physik studiert. Genauso wie Dijkstra, Begründer der strukturierten Programmierung, dessen Algorithmen und Verfahren jeder Computer und jedes Navi-Software (in abgewandelter Form) verwendet.
es reicht wenn man ein bisschen was von aufwandsbetrachtungen und algorithmik versteht, der rest kommt dann von ganz alleine, wenn man es wirklich will. naja, die ein oder andere mathematische formel sollte man halt dann schon lesen können, und die la, erstes semester kann man auch ganz gut gebrauchen, aber der rest
vor allem so zeugs wie programmieren eingebetter systeme oder so. da sollte viel mehr wert drauf gelegt werden und das sollte schon im grundstudium behandelt werden. hardwarennahe programmierung, betriebssysteme in und auswendig können. von so zeugs kann man (zumindest im grundstudium) meist nur träumen

und wenn ich erstmal fertig bin mit dem studium, dann würd ich ziemlich alt aussehen wenn ich mir das ganze zeugs hier nicht selbst beigebracht hätte (wir haben an der uni nur java gelernt, im ersten semester

von daher hast dus sogar besser. du kannst dich voll und ganz auf die sprachen konzentrieren, nur fehlen dir am ende dann so staatliche instanzen wie zertifikate oder so oder ein diplom

ist halt ein zweischneidiges schwert.
Hardwarenahe Programmierung sollten technische Informatiker machen aber auf keinesfalls alle. Das Programmieren von zeitkritischen Echtzeitsystemen oder hardwarenahen Mikrocontrollern ist ersten auf einem absteigenden Ast, da selbst mein Handy mittlerweile mit einer Hochsprache zu programmieren ist. Hinzukommt das grade hardwarenahe Software oft in sehr kritischen Systemen verwendet wird wo absolut keine Fehler tolerierbar sind (Autos, Flugzeuge, etc), deswegen sollten das nur von speziell ausgebildeten Programmierern getan werden. Das einem aufzuhalsen der theoretische oder (so wie ich) angewandte Informatik studiert halte ich für unnötig.
Betriebssysteme sollte auf jedenfall gelehrt werden, aber eher allgemein, was nützt es dir wenn du eine Vorlesung lang die Windows XP API durchgehst und unter WIndows 7 alles anders ist. Es sollten dort theoretische Probleme und Lösungen gelernt werden (Verklemmungen/Philosophenproblem, und so ein Zeugs). Man sollte wissen was ein Mutex oder Semaphor ist, nicht wie man den unter Windows XP mit SP3 erzeugt oder so.
Was in meinen Augen viel zu selten vorkommt sind Fächer in Richtung Usability oder Anwenderpsychologie. Es kann doch nicht sein, dass es immernoch Software gibt die einfach unterirdisch oder gar nicht zu bedienen ist. Das trägt nämlich ebenfalls zu dem schlechten Image der IT bei. Es ist mittlerweile natürlich schon deutlich besser geworden, aber bei einiger Software die mir schon so unter die Finger gekommen ist fall ich immernoch vom Glauben ab. Da muss sich noch mehr tun denke ich.
und wenn dus genau wissen willst. john carmack, der urvater der 3d-egoshooter, hat auch nicht zuende studiert

vermutlich aus genau diesem grund. an den unis kriegt man einfach zuviel balast aufgebürdet.
Nicht zuende studiert??? Der hat nichtmal richtig angefangen, mit seinen 2 Semestern. Sicher hat er aber nicht aufgehört, weil ihm da zuviel Mathe war.
Ganz extrem fällt einem es im Webbereich auf. Da tummeln sich grade viele Anfänger die mal irgendein PHP-Buch gelesen haben und meinen jetzt kommerzielle Websites hochziehen zu müssen (oder ganz beliebt Clanpages). Deswegen sind auch so furchtbar viele Websites anfällig für CSS, CSFR, SQL-Injection und so weiter (bestes Beispiel ist studiVZ). Wenn man sich mal die Top 25 der Common Weakness Enumeration stellt man fest, dass es sich meistens um Anfängerfehler handelt. Das könnte mir ja egal sein, wenn da Leute schrottige Websites hochziehen, aber die Frickelkinder machen einem ja nunmal auch die Preise kaputt.