Ich habe einen Abschluss in Informatik. Es war großartig, um Türen zu öffnen und einen Job zu bekommen. Soweit es mir im professionellen Bereich der C # .NET-Programmierung (der beliebtesten Plattform und Sprache in dem Bereich, in dem ich arbeite, wenn nicht die gesamten Vereinigten Staaten auf zweifellos das beliebteste Betriebssystem der Welt) hilft, ist es kaum nützlich. Warum hilft es Ihnen als Programmierer in Ihrer beruflichen Laufbahn (außerhalb des Ausstoßens des Prims-Algorithmus, um einen Interviewer zu beeindrucken)?
In der heutigen Welt der Anpassung ermöglichen ein schneller Verstand, starke Kommunikation, OO und grundlegende Designfähigkeiten einem Entwickler, Software zu schreiben, die ein Kunde akzeptieren wird. Diese Fähigkeiten werden nur im cs-Programm überflogen. Meiner Meinung nach bietet das Lesen eines 500-seitigen C # -Buchs von Wrox weitaus mehr nützliche Fähigkeiten als 4 Jahre der Comp-Science-Mathematik-Blaster-Kurse. Viele sind anderer Meinung. Warum ist ein Informatik-Abschluss wichtig?
quelle
Antworten:
Warum Informatik ?:
Das soll nicht heißen, dass ein CS-Abschluss notwendig ist, um ein großartiger Entwickler zu sein. Kaum. Einige der besten Entwickler, mit denen ich zusammengearbeitet habe, haben keinen Abschluss. Ein Abschluss gibt Ihnen einen Anlauf. Bis zu Ihrem Abschluss haben Sie (hoffentlich) eine Menge Code in verschiedenen Sprachen und Umgebungen geschrieben, um viele Arten von Problemen zu lösen. Damit sind Sie auf dem besten Weg zu den 10.000 Stunden , die Sie als Experte benötigen .
Ein zweiter Vorteil ist, dass Sie als Arbeitgeber in der Lage sind, sich für ein langfristiges Ziel zu engagieren und erfolgreich zu sein. In vielen Unternehmen ist das meiner Meinung nach wichtiger als das, was Sie gelernt haben.
quelle
Ich gehe davon aus, dass .NET und C # in 40 Jahren nichts weiter als ein schwerwiegender Haufen von Legacy-Code auf veralteten Betriebssystemen sein werden.
Aber die grundlegenden Konzepte der Informatik werden genauso lebendig sein wie vor über 40 Jahren, als Shannon, von Neumann, Knuth, Dijkstra, Hoare und die anderen sie aus den Gründen der formalen Logik und Mathematik ausgegraben haben.
quelle
Ich benutze fast alle CS, die ich in der Schule (*) gelernt habe, jeden Tag an meinem Arbeitsplatz. Wenn Sie in den Bereichen Programmiersprachendesign, Suchmaschinenoptimierung, Quantanalyse oder in einem ähnlichen Bereich arbeiten möchten, können Sie dies vermutlich auch ohne einen entsprechenden Abschluss tun, aber es scheint eine Menge Dinge zu sein, die Sie am Arbeitsplatz lernen müssen. Ich bin bei meiner Arbeit nicht besonders gut ausgebildet. Viele meiner Kollegen haben einen Doktortitel in Informatik und einige von ihnen waren Professoren für CS.
Es hat sich für mich enorm gelohnt, meinen Abschluss zu machen. Es hat sich vielfach bezahlt gemacht, sowohl in Dollar als auch in Zufriedenheit.
Das heißt, ich verstehe Ihren Punkt gründlich. Die meisten Menschen, die Computer programmieren, haben Jobs, die keinen CS-Abschluss erfordern. Sie benötigen zum Beispiel solide Kenntnisse in der Programmierung auf Community-College-Ebene und müssen mit den aktuellen Branchentrends Schritt halten. Und das ist gut so. Sie brauchen keinen Abschluss in Meeresbiologie, um ein erfolgreiches Aquariumgeschäft zu führen, und ich denke, dass Aquariumgeschäfte großartig sind. Aber es ist furchtbar schwer , einen Job in Woods Hole zu bekommen , wenn alle Sie wissen , wie ist Goldfisch erhöhen zu tun.
(*) Ich habe einen B.Math in Angewandter Mathematik und Informatik von Waterloo.
quelle
Es ist wichtig, weil die Technologie nicht statisch bleibt. Informatik ist die Basis für alle digitalen Technologien. Die meisten Autodidakten haben genau einen Technologiezyklus hinter sich, weil ihnen die Grundlagen fehlen, um einen großen Paradigmenwechsel zu überstehen. Sicher, es gibt Ausnahmen von dieser Regel, aber ein starkes Fundament in der Informatik erhöht die Chancen, einen großen Paradigmenwechsel zu überleben, erheblich.
quelle
Es hängt davon ab, was Sie tun möchten. Wenn Ihr Ziel in erster Linie die Programmierung von Unternehmenssoftware im großen Stil ist, bei der das Geschäftsproblem und das praktische Komplexitätsmanagement das Problem sind, dann hilft ein CS-Abschluss nicht viel. Wenn es jedoch Ihr Ziel ist, Dinge zu programmieren, bei denen die Hauptschwierigkeit im technischen Bereich liegt, ist ein CS-Abschluss sinnvoller. (Obwohl ich keinen CS-Abschluss habe, fühle ich mich wie ein großer Heuchler, wenn ich das sage. Füge also "oder Autodidakt in CS-Fächern" hinzu.)
Ich bin mir sicher, dass es viele Programmierer gibt, die die Komplexität gut managen, große Programmieraufgaben erledigen und allgemeine Geschäftsprobleme lösen können. Sie wären jedoch absolut verloren, wenn Sie sie bitten würden, einen Speicherallokator, eine Parallelitätsbibliothek oder eine Datenbank zu schreiben Sammlungen Bibliothek oder ein Betriebssystem oder ein Compiler, etc. Ich bin sicher, das Gegenteil existiert in einem anständigen Ausmaß auch. Beide haben ihren Platz und verdienen Respekt, aber ein CS-Abschluss hilft viel mehr auf der technischen Seite.
quelle
Ich denke nicht, dass ein CS-Abschluss ein absoluter Indikator dafür ist, dass eine Person ein guter Softwareentwickler ist. Tatsächlich habe ich meine Karriere als Programmierer mit einem Mathematik-Abschluss begonnen, aber mit einem starken CS-Bias (Mathematik und CS waren in mein Studienprogramm integriert). Ich denke, es gibt zwei Gründe, warum es insgesamt wichtig ist.
1 - Weil Ingenieure nicht das Front-End für die Rekrutierung sind
Human Resources Menschen sind. Und während ich mir viele Leute vorstelle, die mit den Augen rollen, sage ich "Gott sei Dank!" Was ist wichtiger - dass Sie die Ingenieure Sachen machen lassen (oder Sachen zerbrechen lassen) oder dass Sie sie dazu bringen, Tausende von Lebensläufen zu sortieren und Tausende von Interviews zu führen?
Also lassen wir HR-Mitarbeiter und HR-Mitarbeiter die Kandidaten überprüfen, bis wir zu einer Schlüsselgruppe gelangen, die von Ingenieuren überprüft werden kann. HR-Mitarbeiter haben im Laufe der Zeit gelernt, dass ein CS-Abschluss ein ziemlich starker Indikator dafür ist, dass der Kandidat etwas über die Entwicklung von Software weiß. Hoffentlich wissen sie auch, dass das 20-jährige Schreiben von Software ein guter Indikator dafür ist, dass der Kandidat Software schreiben kann.
2 - Weil es besser als gar kein System ist, etwas über CS zu lernen
CS ist ein riesiges Feld mit viel zu wissen. Und es ändert sich ständig. In diesen Tagen kann ich mit Sicherheit sagen, dass die 75% der Studienleistungen in meinem Grundstudium für meine Karriere irrelevant geworden sind. Und dass die Studienleistungen meines Meisters vor 5 Jahren rapide sinken. Aber als ich anfing, war ich froh, dass ich eine große Institution bezahlt habe, um mir etwas über Computerorganisation, Netzwerke, guten Software-Engineering-Prozess, objektorientiertes Design, Compiler und die Syntax / Semantik einer großen Programmiersprache beizubringen, die derzeit auf dem Markt ist.
Und ich war froh, dass es in einer Umgebung war, in der jemand dafür bezahlt wurde, mir Dinge zu erklären, wenn das Projekt Buch / Website / Runde nicht von Natur aus offensichtlich war.
Und ich war froh, dass ich Zugang zu einem Labor hatte, in dem Computergesundheit und SDE nicht mein Problem waren. Ich konnte mich mehr oder weniger auf einen kleinen Teil des Problems konzentrieren, anstatt auch alle zur Lösung erforderlichen Tools reparieren zu müssen das Problem.
Und obwohl in den Kursen nicht ausdrücklich gute Kommunikation gelehrt wurde, kann man das meines Erachtens nur durch Teamarbeit lernen. Dies ist ein wesentlicher Bestandteil vieler führender Institute, die CS-Abschlüsse anbieten.
Und einen Zeitplan mit häufigen Rückmeldungen (dh Noten und Prüfungen), die mich wissen lassen, ob ich wirklich verstanden habe, was mir beigebracht wurde.
Diese Dinge sind meiner Meinung nach mehr wert als jedes Buch zu diesem Thema, aber es ist sicherlich nicht das A und O. Es gibt sicherlich Dinge, die mir nichts ausmachen, wenn sich Hochschulen verbessern, und ich denke, dass etwa 10 Jahre nach Ihrem Abschluss der Grad, den Sie ursprünglich erhalten haben, weniger wichtig ist als die Arbeit, die Sie seitdem geleistet haben.
quelle
Für mich ist der Grund, dass ich weiß, dass sie einige schwierige Kurse durchlaufen haben und nicht aufgegeben haben. Einige der Kurse wie Compiler, Data Struct, Discrete Math (und andere) neigten dazu, viele Leute aus CS-Programmen herauszuspülen. Ein CS-Abschluss bedeutet, dass Sie hart gearbeitet und einen Preis bezahlt haben (lange Nächte, um Programme zum Laufen zu bringen), anstatt zum Spaß auszugehen.
quelle
Für mich ist es eine Frage der Einstellung .
Ihre Denkweise definiert, wie Sie an ein bestimmtes Problem herangehen, und ermöglicht es Ihnen, ein breiteres Spektrum von Möglichkeiten in Betracht zu ziehen, als dies in den Konzepten nicht geschult ist.
Ein typisches Beispiel ist das "Travelling Salesman" -Problem, bei dem Sie wissen, dass es 1) für die allgemeine Version NP-vollständig ist. Sie müssen also alle Möglichkeiten ausprobieren, aber 2) wenn Sie mehr über das Problem wissen, können Sie entweder innerhalb von a approximieren bestimmte Grenze oder sagen, dass Sie wissen, dass AC immer länger als AB + BC ist (was für Entfernungen gilt, aber nicht für Preise), so dass Sie es in kürzerer Zeit lösen können.
Ein anderes Beispiel ist die numerische Analyse, bei der Sie wissen müssen, dass Sie Ihre Berechnungen anders als auf mathematisch einfache Weise ausführen müssen, um die numerische Ungenauigkeit zu minimieren. Dies erfordert theoretisches Wissen und wird wahrscheinlich nicht auf dem Weg aufgenommen, es sei denn, Sie wurden ausdrücklich davon gebissen.
quelle
"Ja wirklich?" Beeindruckend.
Sie sagen mir also, dass C # - und OOP-Kenntnisse ausreichen, und Sie können Ihren eigenen Algorithmus für die zufällige Sortierung entwickeln und die Feinheiten des Umgangs mit NP-vollständigen Problemen im wirklichen Leben entschlüsseln?
C # und OOP sind in Ordnung, aber wenn Sie versuchen, etwas zu tun, das nicht triviales Logikdesign ist, dann brauchen Sie die Grundlagen der Informatik.
Alter, Sie werden nicht einmal wissen, welchen C # -Container Sie verwenden sollen, wenn Ihre Fähigkeiten in Bezug auf Datenstrukturen oder Algorithmen nicht den Anforderungen entsprechen.
Lass uns jetzt erwachsen werden.
quelle
Ich nehme an, Sie haben sich damals wirklich nicht zu sehr auf das Studium eingelassen, haben nur das Nötigste mitgenommen und sind ausgestiegen oder sind zu einer Schule gegangen, die CS-Majors als "Programmierer" und nicht als "Programmierer" ansah. Außerdem gehören einige meiner besten / beliebtesten "CS" -Klassen - zumindest an meiner Universität - zum Fachbereich Elektrotechnik. Mein Umgang mit verschiedenen Architekturen und Stilen war sehr wichtig und mein Abschluss hat dies in einer "kontrollierten" Umgebung erleichtert.
Klassen, die nicht nur Algorithmen und Cutesy Fluff sind:
Und schließlich eine Klasse, die mir den Garaus gemacht hat, die nur aus Algorithmen und Datenstrukturen bestand - Künstliche Intelligenz. Es gibt Dinge, die das Universitätssystem im Lernprozess erheblich beschleunigen, und ich würde das Gelernte als von unschätzbarem Wert erachten, wenn man später auf Arbeitssuche geht.
quelle
Meiner Meinung nach ist jeder Abschluss, der einen Schwerpunkt auf Computerkenntnisse legt, ziemlich gleichwertig, es sei denn, Sie bewerben sich um eine Stelle im Bereich "Computer-Wissenschaften".
Tatsächlich haben viele der mir bekannten Programmierer einen Abschluss in einer ganz anderen Disziplin. Die besten Programmierer, die ich kenne, haben einen Abschluss in Bauingenieurwesen, Linguistik, Wirtschaft und Finanzen.
Wenn Sie einmal Erfahrung gesammelt haben, wird Ihr Abschluss letztendlich zum Pass-Fail-Test für einen Personalvermittler. Das heißt, es sei denn, Sie haben es von einer beeindruckenden Schule oder einem postgradualen Abschluss erhalten, spielt es keine Rolle, was Ihr Hauptfach war.
quelle
für mich und viele meiner Kollegen hat es nicht (keiner von uns hatte einen CS-Abschluss)
quelle
OK dann was ist
Wenn Sie folgende Themen durchlaufen haben:
a.Computerarchitektur und Organisation
b.Software Engineering
c.DBMS
d.Basic Electronics
e. Grundlegende digitale elektronische Schaltung
f.Mikroprozessor
g.Compiler-Design
Denken Sie, dass alle obigen Angaben nur der Formalität dienen. Denken Sie daran, dass die obigen Punkte "gute Programmierer" zu "großartigen Programmierern" machen.
Lesen Sie hier etwas über die Wichtigkeit elektrischer und elektronischer Themen
quelle
Über 70% des Codes sind in C geschrieben (da es mehr eingebettete Geräte als Anwendungen auf hoher Ebene gibt). Laut populären Jobsuchen wie Würfel oder dem TIOBE-Index ist Java die beliebteste Programmiersprache für Unternehmen (da es mehr Unix / Linux-Back-End-Server als Windows-Server gibt.) Es gibt mehr Smartphones und Tablets (die Computerplattform von die Zukunft) mit einer Variante von Linux oder Mac OS als Windows, die auf etwas anderem als C # oder .NET programmiert ist.
Schauen Sie sich Ihren Router zu Hause an, schauen Sie sich Ihr Handy an, schauen Sie sich den Computer in Ihrem Auto an, schauen Sie sich die verdammte Mikrowelle zu Hause an, sehen Sie sich die Steuerungen in Ihrer häuslichen Klimaanlage an, schauen Sie sich Ihr Telefon und Ihre Arbeit an, faxen Sie und drucken Sie / Scanner. Sehen Sie sich die Anzahl der Computergeräte an (die Windows-Systeme übersteigen).
Denken Sie, dass sie in C # programmiert sind?
Wenn Sie der festen Überzeugung sind, dass .NET oder C # die beliebtesten Plattformen der Welt sind, sollten Sie zu Ihrer CS-Schule zurückkehren und eine Rückerstattung beantragen.
Vielleicht, weil Programmierung viel mehr bedeutet als dynamische Webseiten und Unternehmensanwendungen zu entwickeln? Dafür brauchst du nicht einmal einen BS-Abschluss, ein AA reicht aus - ich weiß, weil ich meine Programmierkarriere mit einem AA-Abschluss begonnen habe und langsam aber sicher auf einen CS hingearbeitet habe und dann während der Vollzeitarbeit als Entwickler die Grad-Schule durchgearbeitet habe .
Es gibt eingebettete Entwicklung, es gibt Entwicklung von Gerätetreibern, es gibt Entwicklung von Betriebssystemen, es gibt Entwicklung von Algorithmen, Signalen, Kommunikationen, Netzwerkprotokollen, Entwicklung von Datenbank-Engines, Entwicklung von Dateisystemen, verteiltes Rechnen, Compiler. Keine Forschung, sondern tatsächliche Arbeit in gemeinnützigen Organisationen. Abgesehen von den natürlich Begabten kann man es in keinem dieser Industriebereiche ohne einen CS-Abschluss (manchmal auch nicht mit einem BS-Abschluss) hacken.
Eine Person, die einen CS-Abschluss erhält und darauf achtet, weiß dies. Wieso machst du das nicht?
OO entstand aufgrund von CS. Und die meisten Leute, die denken, sie machen OO, können nicht einmal einen guten Job machen. Schauen Sie einfach nach draußen und schauen Sie sich den beschissenen Zustand der Software an (insbesondere in Java und .NET, ganz zu schweigen von PHP). Ein solider CS-Hintergrund (oder ein Hochschulabschluss in einer Art Ingenieurwesen) garantiert kein 100% gutes Verständnis von OO und analytische Fähigkeiten, aber es hilft in der Regel. OTH, ohne einen grundlegenden CS-Hintergrund, ist in der Regel eine rote Fahne, wenn es um OO und analytische Fähigkeiten geht. Wir haben genug empirische Beweise in der Branche, um diese Behauptung zu stützen.
Abhängig vom CS-Programm und vom Schüler. Zumindest für mich habe ich viele gute Kurse zu Design, OO-Analyse, kommerziellen Tools und Praktiken gesehen. Wir hatten Kurse mit lokalen Unternehmen und Praktika, von Unternehmen finanzierte Projekte und Forschungsarbeiten, technisches Schreiben, wie Sie es nennen. Entschuldigung, ich kann diese Aussage nicht beschreiben oder verstehen.
Auch dies hängt von Ihrer Arbeit ab. Sogar im Unternehmen habe ich meinen CS verwendet, um Dinge zu reparieren oder zu verbessern. Dies alles beinhaltet Modellierung, Architektur, verteiltes Rechnen, Sicherheit und hohe Leistung, hohe Verfügbarkeit und Fehlertoleranz. Ich habe all das in CS gelernt.
Es ist nichts Falsches daran, ein Wrox-Buch zu verwenden, um eine kontextspezifische , technologiespezifische Qualifikation zu erhalten. Das mache ich selber. Aber mein CS-Hintergrund gibt mir den Kontext, an dem ich arbeiten kann. Ohne meinen CS-Hintergrund wäre alles, was ich tun könnte, Programmieren, Programmieren (das ist alles, was ich tun könnte, wenn ich zu Beginn meiner Karriere nur einen AA-Abschluss hatte).
Überraschend, nicht wahr?
Wem fällt Ihrer Meinung nach Google, Hadoop, Cassandra oder Hochleistungs-Datenbank-Engines ein? Wer glaubst du, schreibt den Windows-Kernel? Wer programmiert Ihrer Meinung nach die beliebten Tools, die Sie für Ihre C # -Entwicklung verwenden?
Ich bin mir sicher, dass bei den Tools, die Sie für die C # -Entwicklung verwenden, ein CS-Typ dahintersteckt.
Ob Sie einen CS-Abschluss benötigen oder nicht, hängt von der Art Ihrer Arbeit, der Art der Arbeit, die Sie ausführen möchten, und der Art der Arbeit ab, die Sie ausführen können.
Es gibt eine Menge Arbeit in der Unternehmens- und Webentwicklung, für die kein CS-Abschluss erforderlich ist. Das gebe ich zu. Ich weiß auch, dass die Welt des Programmierens viel breiter ist als nur diese beiden Bereiche, wobei viele Bereiche (die meisten davon tatsächlich) einen CS-Abschluss oder mehr erfordern.
Sie haben einen CS-Abschluss, wie Sie nicht wissen, dass das ein Rätsel ist.
quelle
Es gibt einige Grundlagen, die ich in meinen CS-Kursen gesehen habe und die manchmal sehr nützlich waren. Der Wasserfall-Prozess und seine Schritte sind etwas, das ich in meiner Karriere wiederholt verwendet habe, mit einigen Variationen für Agile, wo es nicht ganz so starr in Schritten ist, aber die gleichen Schritte gibt es.
Manchmal können auch Fähigkeiten zur Problemlösung und verschiedene algorithmische Heuristiken hilfreich sein. Es gibt etwas zu sagen für die indirekten Vorteile eines CS-Abschlusses. Zu lernen, wie man eine Antwort rechtfertigt, um zu zeigen, warum etwas richtig ist, ist nur eine von wenigen Fähigkeiten, die ich an der Universität verfeinert habe, aber ich bin mir nicht sicher, wie offensichtlich es ist, dass dies am Ende des Programms von Vorteil ist.
quelle
Ich stimme Thorbjørn Ravn Andersen in Bezug auf die Denkweise zu. Das ist die Hauptsache, die Sie mit einem guten CS-Lehrplan entwickeln.
Grundsätzlich geht es darum, Dinge wie Datenstrukturen und Algorithmen zu verstehen. Nicht, dass Sie dies nicht alleine lernen können, aber ein guter CS-Lehrplan bietet eine bessere Sichtbarkeit.
quelle
Schreiben
Bei der Entwicklung von Unternehmenssoftware ist es wichtig, Code schreiben und schreiben zu können . Damit meine ich: das Schreiben von E-Mails, Fehlerberichten, technischen Dokumenten usw. Sowohl das Schreiben als auch das Codieren erfordern klare Gedanken und angemessene Ausdrucksmöglichkeiten.
Ich wette, dass zwischen zwei Softwareentwicklern derjenige mit einem CS-Abschluss von einer soliden Universität (starkes CS-Programm und erforderliche Wahlfächer in den Geisteswissenschaften) beide Fähigkeiten hat. (Richtig, das ist keine Garantie: Menschen aus den Geisteswissenschaften können großartige Programmierer und erstklassige Schriftsteller sein. Viele CS-Absolventen sind Programmierer, die nicht schreiben können und so weiter.)
lesen
Ein Mentor von mir behauptete, er könne Entwickler nach dem beurteilen, was sie lasen. Der ursprüngliche Post erwähnt WROX-Bücher. Meiner Meinung nach ist es wahrscheinlicher, dass jemand mit einem CS-Abschluss nach solchen professionellen IT-Büchern sucht und sie effektiv einsetzen kann. Wenn man mit CLR umgehen kann , kann man mit "Professional C #" umgehen.
Mathematik
Mathematik entwickelt Logik, Beweise, Strenge usw. und der Nebeneffekt ist, dass sie das Schreiben unterstützt. Obwohl für die meisten IT-Abteilungen in Unternehmen keine intensiven Mathematikkenntnisse erforderlich sind, verfügt die Person mit einem CS-Abschluss bei Bedarf über diese Kenntnisse. Dies ist ein viel besserer Weg, um durchs Leben zu gehen, als ohne ihn zu leben und sich zu fragen, was Sie in der Schule verpasst haben.
quelle
Ich denke, es hängt wirklich von der Qualität des CS-Programms ab, das Sie durchlaufen haben. Ich weiß, was Sie meinen. Der meiste Code, den ich täglich schreibe, ist nur Standard-VB.Net. Rufen Sie die Daten vom SQL Server ab, fügen Sie sie in das Formular ein, speichern Sie sie zurück in die Datenbank und erstellen Sie einige Berichte. Waschen, ausspülen, wiederholen. (Manchmal sehr langweilig) Das CS-Programm, das ich durchlief, brachte neben Theorie und Grundkenntnissen eine Menge praktischer Dinge bei. Wir haben Bereiche wie Softwaredesign, Datenbankdesign und Projektmanagement abgedeckt. Das Erlernen von Programmiersprachen war der einfache Teil, das Design und die Methodik der Erstellung von Softwaresystemen waren das, was ich aus meiner College-Erfahrung mitgenommen habe. Wir erhielten Projekte, die auf realen Problemen basierten und manchmal sogar Softwaresysteme für andere Abteilungen auf dem Campus entwarfen.
Als Programmierer haben wir natürlich die Fähigkeit, selbstständig zu lernen, was in unserem Bereich eine Notwendigkeit ist. Ich muss sagen, dass ich sehr froh bin, das CS-Programm durchlaufen zu haben. Meine Professoren waren großartig und haben mir viel beigebracht. Meine Klassenkameraden waren tolle Leute und wir hatten viele lustige Nächte im Computerraum. Um die Wahrheit zu sagen, ich vermisse diese Tage irgendwie ......
quelle
Es ist alles in der Fähigkeit, stellvertretend zu leben.
Wenn Sie den Abschluss überspringen, müssen Sie die Lektionen wahrscheinlich auf sehr persönliche Weise lernen (auch bekannt als der harte Weg). Das Fehlen eines Abschlusses bedeutet nicht, dass Sie den schwierigeren Weg des Lernens durch Ausprobieren beschreiten werden. Der Abschluss garantiert Ihnen jedoch, dass Sie einer Schatztruhe mit zuvor erlangten Kenntnissen begegnen, die andere bis spät in die Nacht verdienen mussten, frustrierten Programmiersitzungen und im Allgemeinen "auf die harte Tour".
Der wirklich ausgezeichnete Mensch wird nicht verwerfen, was andere für wahr befunden haben, sondern es herausfordern, bis sie die Grenzen des Wissens kennen und dann mit dem "System" neu gewonnener Ideen spielen, bis sie es sich zu Eigen machen. Es steht auf den Schultern derer, die zuvor gekommen sind, und lebt die Lösungen vergangener Jahre aus, ohne sie neu entdecken zu müssen.
Natürlich ist eine Person mit einem Abschluss in Informatik nicht immer der bessere Kandidat. Es gibt diese einzigartigen Individuen, die zum Strom geführt wurden, sich aber (aus irgendeinem seltsamen Grund) weigern, daraus zu trinken.
quelle
Ich bin 21 Jahre alt und habe gerade einen CS-Bachelor abgeschlossen. Ich bin der Meinung, dass Sie, egal wie gut Sie programmieren, als CS-Absolvent bereits mit verschiedenen Bereichen vertraut sind. Wenn Sie also neue Dinge lernen möchten, haben Sie keine Angst zu erkunden, auch wenn dies irrelevant ist . Wenn Sie ein Experte in einer Technologie oder Programmiersprache sind, gut. Aber ich glaube nicht, dass Sie abenteuerlustig sind und bereit sind, sich mit anderen Technologien zu befassen. So machst du dich schmutzig (und das auch schnell). Sie werden nicht grübeln, dass das, was Sie erforschen, irrelevant sein wird, da es Ihnen nicht dabei hilft, Geld zu verdienen. (Sie haben in Ihrer CS UG bereits viele irrelevante Dinge studiert;)).
Es ist die Leidenschaft für CS, die Sie nach Ihrem Abschluss haben, die Sie zum Software-Profi macht.
Jemand zustimmen?
quelle
Nun, als ich in CS eintrat, dachte ich, dass wow, ich wirklich gut bin, und ich werde hier nichts lernen ... Nach 5 Jahren habe ich nur gelernt, als Team zu arbeiten, und einige Dinge Von der Technik, die mich von jemandem trennt, der nur Code schreiben kann, und von jemandem, der darüber nachdenken kann, was er tut, bevor er codiert. Kurz gesagt, es hat mich gelehrt, darüber nachzudenken, bevor ich überhaupt einen einzelnen Buchstaben in meinen Texteditor oder ide eingebe.
quelle
Um einen Job in einer Open-Source-Sprache zu bekommen, muss man nicht in die Hocke gehen. Die meisten Unternehmen rekrutieren eher aufgrund ihrer Fähigkeiten als aufgrund ihrer Qualifikationen und Sprachen wie PHP haben einen Hobby-Ruf, der besagt, dass Menschen Talent haben können, ohne jemals CS studiert zu haben. Das einzige Mal, wenn Sie einen Job in .Net-Sprachen bekommen, ist dies hilfreich, da die meisten Hobby-Experten nicht Tausende für eine Lizenz ausgeben möchten, um nur an den Wochenenden damit herumzuspielen. Daher wird jemand, der einen ersten Job in C # sucht, wahrscheinlich nur eine haben 2-3 Jahre Erfahrung.
Natürlich ist die kommerzielle Erfahrung die wirklich wertvolle, da sie Ihre Fähigkeit unter Beweis stellt, Qualitätscode fristgerecht zu liefern.
Abschließend erhalten Sie Interviews für die Arbeit mit nicht Open-Source-Sprachen.
quelle
Ein Abschluss an einem College oder einer Universität bedeutet, dass Sie CS studiert haben und über einige Grundkenntnisse verfügen, die für einen Beruf in der Praxis erforderlich sind, auch wenn Sie andere Dinge selbst lernen müssen.
Außerdem, wenn ein IT-Recruiter einen Soft finden muss. Dev. Und 500 Bewerber senden ihren Lebenslauf und müssen mindestens 50 von ihnen interviewen. Ein Abschluss in Ihrem Lebenslauf hilft sowohl dem Personalvermittler als auch Ihren Chancen, eingestellt zu werden.
(von einem Softwareentwickler, der HHRR studiert hat)
quelle
Wahrscheinlich hilft das nicht viel, aber jetzt, wo ich Assembler gelernt habe und alles damit verbundene Wissen, fühle ich mich wie ein vollständigerer Programmierer und ich bin mir sicher, dass dies wieder passieren wird, wenn ich zur Uni gehe. Ich meine, ich benutze meistens C oder VB, ich muss nicht wissen, was ein Wartezustand ist, um meine Programme auszuführen, aber einfach zu wissen, was hinter meinem Code vor sich geht, ist großartig! Und Wissen hilft Ihnen dabei, besseren, schnelleren und besser wartbaren Code zu schreiben. Ein Informatik-Abschluss vermittelt meiner Meinung nach genau das Wissen, das man braucht, um großartigen Code zu schreiben .
quelle
Software Engineering ist heute eine experimentelle Wissenschaft, keine angewandte Mathematik.
In den Informatikabschlüssen liegt der Schwerpunkt auf Algorithmen. Wie viel von Ihrer täglichen Arbeit beinhaltet die Implementierung oder sogar Verwendung neuartiger Algorithmen und Datenstrukturen?
Wie viel kostet der Umgang mit Gerüstschichten und den undichten Abstraktionen? Inwieweit wird versucht zu bestimmen, was eine API tatsächlich tut - und nicht, was die Dokumente implizieren? Wie viel kostet das Testen und Entscheiden, wie es getestet werden soll?
Trotzdem ist ein Abschluss in Physik oder Chemie eine viel bessere Ausbildung als Knuth auswendig zu lernen
quelle
Dies ist wichtig, da Personalvermittler einen Indikator haben, der angibt, dass Sie nicht völlig ahnungslos sind, was Sie tun sollen. Dies bedeutet jedoch nicht unbedingt, dass Sie wirklich wissen, was Sie tun, oder dass Sie es auf technisch bequeme Weise tun.
Es gibt brillante Leute mit Abschlüssen, die ihre Arbeit lieben und wirklich gute Programmierer sind, und es gibt auch Idioten mit Abschlüssen, die wirklich schlechte Programmierer sind und nicht einmal einige Grundlagen kennen. Es gibt brillante Leute ohne Abschluss, die alles entwickeln können (Business-Software / Compiler / ein Betriebssystem), und es gibt Idioten ohne Abschluss, die nicht wissen, wie man eine Hash-Tabelle richtig benutzt.
quelle
Absolut richtig, der Abschluss in Informatik spielt keine Rolle. Deshalb sollte Ihre einzige Wahl sein, stattdessen ein Ingenieurstudium zu absolvieren.
Bei der Befragung von Kandidaten mit unterschiedlichem Hintergrund sticht folgendes Merkmal für Kandidaten ohne Abschluss heraus: mangelnde technische Kommunikationsfähigkeiten und mangelnde Disziplin. Dies sind grundlegende Eigenschaften, die man bei jedem naturwissenschaftlichen Abschluss erlernt hat (ich würde das mit einem Ingenieurabschluss noch mehr sagen).
Da die meisten Dinge gleich sind (und eine einzige Runde von Interviews oft mit "ungefähr gleichen" Kandidaten endet), stellte ich die Person mit dem Ingenieur-Abschluss zuerst, den Informatik-Abschluss an zweiter Stelle und den Nicht-Abschluss an dritter Stelle ein. Es gibt jedoch Möglichkeiten, die Dinge im Vergleich sehr ungleich zu machen, so dass jeder auch die mit einem Stammbaum-Abschluss schlagen kann - aber das ist eine separate Frage, nicht wahr?
quelle
Für einen Programmierer ... ist es nicht viel (außer vielleicht, wie Sie sagten, die Türen für Interviews zu öffnen).
Für einen CS-Job (Recherche, Algorithmusanalyse, formale Sprachkenntnisse und Design). Es ist unwahrscheinlich, dass Sie diese Dinge in einem anderen, nicht auf Mathematik basierenden Programm lernen.
// Haftungsausschluss: Ich habe einen Abschluss in Informatik, daher musste ich all diese anderen Kurse wiederholen, um in meinem Arbeitsbereich erfolgreich zu sein.
quelle
Ich habe einen Computer-Abschluss. Was mir geholfen hat, meine erste Computerrolle zu bekommen, war die Tatsache, dass das dritte Jahr ein Praktikum als IT-Administrator war. Ich empfehle Praktika im Bildungsbereich.
quelle