Ich zögere immer, wenn ich mit Professoren darüber spreche, den Prozentsatz der Menschen, die einen Abschluss vom Typ CS haben, im Vergleich zu der Zahl zu verbessern, die anfangen zu glauben, dass sie das wollen. Einerseits denke ich wirklich, dass es wichtig ist, dass Fachleute einbezogen werden und dieses Feedback geben, andererseits wäre es besser, wenn weniger unterdurchschnittliche Schüler CS-Abschlüsse erhalten würden.
Ich glaube nicht, dass jeder Verstand für dieses Gebiet geschaffen ist und man muss ein guter Student sein, der ein Leben lang studiert. Man muss ein hohes Maß an Geduld und Problemlösungskompetenz haben, nur um vorbeizuschauen. Wenn Sie die "richtige" Art von Gehirn haben, sind diese schweren Probleme der Motor für Sie, weiterzumachen. Wenn Sie nur eine lange Liste einfacher Probleme haben, wird es Ihnen langweilig, und diese Leute sind eigentlich nicht in der Lage, sich wiederholende Jobs zu machen. Ich muss nicht auf alle Details eingehen ... Wenn Sie dies lesen, wissen Sie wahrscheinlich, worauf ich hinaus will.
Die Frage ist also: Wie finden Sie die Ausgewogenheit eines Studiengangs, der für genügend Personen zugänglich ist, um finanziert und als erfolgreich eingestuft zu werden? Vielleicht ist eine bessere Frage, welche Metrik verwenden Sie, um zu wissen, ob die Änderungen, die Sie in einem Studiengang vornehmen, es verbessern? Ich weiß nicht, dass eine höhere Abschlussquote eine gute Messgröße ist. Und es scheint, dass sich das Feedback, das Sie versuchen könnten, viele Jahre später über die Jobs der Absolventen zu erfassen, zu sehr verzögert.
Ich habe lange mit dieser Frage gekämpft, vor allem, weil ich glaube, dass es keine Antwort gibt. Aber ich dachte, ich würde fragen, ob jemand etwas darüber weiß.
Ergänzung: Ich wurde kürzlich von einem sehr klugen Professor daran erinnert, dass nicht jeder, der einen CS-Abschluss besitzt, auch nur ein Vollzeitprogrammierer sein möchte, wenn er tatsächlich entdeckt hat, was das bedeutet. Aber mit der Ausbildung, die sie erhalten haben, könnten sie möglicherweise großartige Projektmanager, Manager, Systemadministratoren usw. werden. Ich denke, dies war ein sehr guter Punkt, über den ich hier nicht nachgedacht hatte. Es gibt einen sehr hohen Prozentsatz von Menschen, die nicht in dem Bereich arbeiten, in dem sie studiert haben. CS ist keine Ausnahme. Die zusätzlichen Leute zu haben, hilft nicht nur beim Budget für das Studium, sondern auch dabei, den Prozentsatz der Nicht-Programmierer zu erhöhen, die noch genug darüber wissen, um mit Programmierern zusammenzuarbeiten.
Antworten:
Ok, auf vielfachen Wunsch ... Lass es den freien Markt herausfinden. Wissen Sie, 95% der Psychologie-Majors machen am Ende etwas anderes. Nicht jeder mit einem CS-Abschluss / Nebenfach programmiert, aber er ist ein besserer Manager, Analyst und Projektmanager als derjenige ohne. Tragen Sie nicht das Gewicht der Welt auf Ihren Schultern. CS-Abschluss ist nur ein Stück Papier. Diejenigen mit Abschlüssen in Mathematik, Physik, Chemie und Biologie werden Programmierer, und nicht jeder mit einem CS-Abschluss wird Programmierer. Ohne Millionen von Kindern, die bestrebt sind, der beste Baseballspieler zu sein, hätten wir keine so großartigen Stars. Das System regelt sich selbst.
quelle
Ich denke zwar, dass Hiobs Antwort wichtig ist, aber die gleiche Antwort könnte auf eine Grad-Mühle angewendet werden. "Ich habe meine 199,95 Dollar bezahlt, jetzt gib mir meinen CS-Abschluss."
Es ist nicht wirklich Ihre Aufgabe, die Schülerschaft nach einem Standard von "echten Programmierern" herunterzufahren. Den Schülern beibringen, wie man programmiert / gestaltet (vermutlich?). Wenn Sie Ihre Denkweise im College nicht geändert haben, haben Sie Ihre Zeit dort verschwendet. Ihr Ziel ist es, jedem Studenten, der Interesse zeigt, zu zeigen, dass das Werden eines Programmierers seine Denkweise zum Besseren ändert. Sie tun das indirekt, indem Sie ihnen zeigen ...
Wir machen es falsch
Es gibt umfangreiche Untersuchungen, die zeigen, dass die Art und Weise, wie 95% unserer College-Programme Programmieren / CS lehren, schrecklich ist. Das durchschnittliche CS-Programm beginnt mit
Fast alles andere ist besser
Nahezu jedes Experiment verbessert die Situation, gemessen am Verständnis der Schüler für die Themen UND der Einschreibungs- UND Abschlussquoten. Einige der Experimente, die ich in den Zeitschriften von ACM CSE gesehen habe, sind ...
Jedes einzelne dieser Experimente zeigte massive Verbesserungen des anfänglichen Interesses der Schüler, des Wissenstransfers und der Bindung bis zum Abschluss. Einige sind für bestimmte College-Umgebungen besser geeignet als andere. Wenn Sie jedoch die im obigen Abschnitt beschriebene Struktur einhalten, fragen Sie sich: "Würde ich die ersten zwei Jahre dieses Programms durchhalten?"
quelle
Programmieren heißt, logisch zu instruieren, um die gewünschte Ausgabe zu erzielen. Mit anderen Worten, es fordert den Computer auf, eine Aufgabe zu erledigen. Der einzige Weg, um vorwärts zu kommen, ist das Üben.
Genau wie beim Erlernen von Englisch oder einer anderen Sprache müssen Sie zunächst die Syntax (Alphabet) erlernen und dann mit der Grammatik und anderen Konstrukten fortfahren. Die erforderliche Zeit hängt von der Komplexität der Sprache ab. Python ist mit höheren Programmiersprachen wie SQL fast wie das Schreiben von Englisch.
quelle
Ein paar Aspekte würden helfen, denke ich -
Profis, die sich der modernen Realität bewusst sind . Wenn sie in der Lage sind, über aktuelle Technologien zu sprechen und darüber, wie sie in theoretische Rahmenbedingungen passen, ist dies für Studenten, die sich der Geschichte nicht bewusst sind, weitaus relevanter als Dissektionen von VAXen ohne Bezug zur aktuellen Technologie.
Abteilungsunterstützte Praktika. Wenn die Abteilung mindestens zwei Sommer bezahlter Arbeit mit Technologiefirmen garantieren kann, gibt es einen großen Anreiz, bei der Sache zu bleiben.
Ehrlich gesagt, sind moderne Informatikstudenten viel gesegneter als diejenigen, die vor fünf bis zehn Jahren gelebt haben. Die Möglichkeit, ein Low-End-System zu kaufen und dann eine VM zu installieren und mehrere Sprachen, Betriebssysteme usw. kostenlos zu lernen, ist ein solcher Enabler, der nur schwer zu übertreiben ist.
Natürlich haben sich die wegweisenden Leute wie Hopper und Knuth selbst beigebracht, ohne zu glänzen. Genius wird raus.
quelle
Schaffen Sie einen Staging-Bereich für potenzielle, erfolgreiche Studenten außerhalb Ihres Studiengangs, um das Risiko zu verringern. Dies könnte das Sponsern von AP CompSci-Klassen an örtlichen Gymnasien umfassen, um die Spreu vom Weizen zu trennen. Wenn sich herausstellt, dass dies zu schwierig ist, versuchen Sie, lokale DECA-Kapitel mit einem CS-orientierten Programm in den Abteilungen der High School oder des Colleges zu infiltrieren (oder ein neues zu erstellen). Umgekehrt zeigen Sie unternehmerisch denkenden Studenten, die nach Managementfähigkeiten mit möglicherweise nicht realisiertem CS-Potenzial suchen, einen neuen Weg, um ihre geschäftlichen Ambitionen durch Ihr akademisches Medium zu erfüllen.
quelle
Ich würde argumentieren, dass der Schlüssel darin liegt, verschiedene Ebenen solcher Programme zu verstehen:
Universitäten - Hier kann man in der Regel nur zum Zweck des Studiums studieren. In diesem Fall kann es einen ganz anderen Standard für die Erstellung und Anpassung von Programmen geben, da dies durchaus theoretisch sein kann, oder zumindest das, woran ich mich aus dem Studium der Informatik in meinen Oberstufen erinnere.
Hochschulen - Diese sind in der Regel eher karriereorientiert. Hier ist das Feedback der Branche und die Verbindung von Unternehmen mit Hochschulen von zentraler Bedeutung. Ein Blick auf die Praktika 6-12 Monate nach dem Abschluss kann als Maßstab dafür dienen, wie gut die Leute nach dem Abschluss abschneiden, da die Schlüsselfrage lautet, ob jemand ihre Zeit und ihr Geld für eine solche Ausbildung als lohnenswert ansieht oder nicht. Die Aktualisierung des Programms wird wahrscheinlich häufiger sein, da die Programme hier möglicherweise etwas kürzer sind, z. B. bei den Honour-Bachelor-Programmen der Universität mit einer Laufzeit von 4 Jahren und bei den College-Diplomprogrammen mit einer Laufzeit von 18 bis 24 Monaten. Daher besteht die Herausforderung eher darin, diesen Teil mit Unternehmen in Verbindung zu bringen, damit die Leute der Arbeit ausgesetzt werden und sehen können, was für sie funktioniert oder was nicht.
quelle