TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What programming languages are used in CS courses these days?

31 pointsby bayonetzalmost 11 years ago
I did my undergrad &#x27;96-&#x27;99. The following were what my courses required us to code our exercises and projects in:<p>Core<p>---------------<p>Intro to Programming =&gt; C<p>Intro to Data Structures =&gt; C<p>Advanced Data Structures =&gt; Java<p>Compilers =&gt; C&#x2F;Lex&#x2F;Yacc or C++&#x2F;Flex&#x2F;Bison<p>Systems Software =&gt; SIC assembly language<p>Operating Systems =&gt; C<p>Database =&gt; SQL and also a &quot;build you own DBMS&quot; project in Java<p>Electives<p>---------------<p>Software Tools =&gt; Perl and Java<p>Neural Networks =&gt; C<p>Artificial Intelligence =&gt; LISP<p>As you can see, C was still mainstream but Java was on the rise. When I went to grad school around 2004, no surprise, Java had mostly replaced C in these same classes. You&#x27;ll notice no Javascript, no Python, no cool Functional languages, etc. in this list. Just interested to see where things have evolved and especially to see if more &quot;modern&quot;&#x2F;&quot;cool&quot;&#x2F;&quot;web oriented&quot; languages have made it into the core courses yet or perhaps spawned new more relevant core course. Thanks for playing...<p>EDIT:<p>Hey folks, mind putting your year of graduation so we can pin the answers in time?<p>Also, since apparently no schools have moved very far past Java, care to speculate on how you might change the core curriculum if you could?

49 comments

bayonetzalmost 11 years ago
I told my friend at work about this thread. He isn&#x27;t on here so I am ghost posting for him for fun and perspective.<p>He did his undergrad in CS at UCLA &#x27;78-&#x27;82.<p>Intro to Programming =&gt; PL&#x2F;1<p>Problem Solving using Computers =&gt; Algol 68<p>Operating Systems =&gt; MIX pseudo assembly<p>Data Structures =&gt; Mostly theory&#x2F;test based<p>Programming Languages =&gt; COBOL, Fortran, APL, and ALGOL 68<p>Software Engineering =&gt; C<p>Simulations =&gt; GPSS (General Purpose Simulation System)<p>Graphics =&gt; GDDM (Graphical Data Display Manager)<p>Very cool how diverse the language selections were.<p>Also interesting to that C hadn&#x27;t really caught on yet.
评论 #7987450 未加载
CocaKoalaalmost 11 years ago
Intro to programming =&gt; Java<p>Data Structures =&gt; Mostly java, a couple projects in C<p>Computer Organization: pretty sure this one was entirely in c.<p>Programming Languages =&gt; Whatever the most recent version of Ada is, python 2.7, prolog, haskell, c#, java, &quot;language of your choice, suggested choices are ruby, python, or perl&quot; and most people chose Ruby, and I believe that was the gamut. I may be forgetting a few, and I know that course has switched to using Ocaml instead of Haskell for the functional language section. The course is all about how languages are implemented and what makes one language different from another, so obviously it bounces around a lot. Super interesting class, one of my favourites.<p>Networks: Java or C; at least one project was mandated to be in C.<p>Software design: Ruby, and a tiny bit of Haskell<p>Operating Systems: C.<p>Human-Computer Interaction: Mostly javascript.<p>Almost all grad level courses (except for the intro programming), taken circa &#x27;12&#x2F;&#x27;13
saryantalmost 11 years ago
I started my undergrad in 2008. At the time, my department&#x27;s intro sequence was C -&gt; Java -&gt; C++. Essentially, intro to programming -&gt; intro to OOP -&gt; data structures.<p>After that, professors used whatever they wanted. Most electives let students use whatever language they wanted so long as it ran on the department&#x27;s Linux machines and you provided build instructions for the professor.<p>Scala became the intro language the year I graduated with C and C++ following for data structures. Other courses use everything from Scheme to Java to Haskell to Python, depending on the specific course the professor.<p>My undergrad thesis mentor actually wrote an intro CS textbook using Scala and from what I hear it&#x27;s worked quite well.<p><a href="http://www.programmingusingscala.net/" rel="nofollow">http:&#x2F;&#x2F;www.programmingusingscala.net&#x2F;</a>
sp332almost 11 years ago
I graduated in &#x27;08 (wow that&#x27;s 6 years ago already!). We used C++ for all the core courses except Data Structures, which used Java. C++ wasn&#x27;t <i>too</i> bad as an intro language, with a very encouraging teacher. Java was a disaster because there was way too much boilerplate when you&#x27;re just trying to write a toy data structure for an assignment. At the time I left, they were considering moving to Python for the intro courses, but there didn&#x27;t seem to be much enthusiasm behind it.<p>And we used Access for our database course. Sigh.<p>That said, it wasn&#x27;t as monolingual as it sounds. Even though the courses were geared toward C++, several of our teachers were enthusiastic polyglots (actually one of them spoke four human languages!), and we were encouraged to explore.
评论 #7950532 未加载
marcosdumayalmost 11 years ago
Started my graduation in 99, finished it in 04, at Brazil.<p>1st year: Intro to programming in Prolog, and data structures in Prolog or C (student&#x27;s choice).<p>2dn year: Everything in C, except for system level courses, in MIPS and x86 assembly.<p>3rd year: Mostly C and MIPS&#x2F;x86 assembly, a very interesting discipline in programming paradigms teaching Lisp, Prolog, and Java.<p>4th year: From tis point on, the course starts to lose structure, my choice of disciplines used mostly C&#x2F;C++, with specialized languages for compilers, and VLSI design. (Have you ever tried to do network programming in C? Strings are funny.)<p>5th year: About the same as 4th year.<p>In retrospect, the official list of languages teached in graduation is ridiculously small near the list of languages students were unofficially expected to know at its end.
评论 #7951957 未加载
TallGuyShortalmost 11 years ago
I graduated in &#x27;08, although my major was IT and not CS. All the CS courses I took (pretty much all the required 100- and 200-level classes, a couple of 300-level electives) were in Java (although in one class we used Prolog for some stuff). Other coding classes for my major included Computer Architecture in which we used C and MIPS assembly, some web programming class that was JavaScript and PHP, Systems Administration that was Python, Information Assurance and Security used a lot of C (mainly for demonstrating various flaws). In most other classes were given a lot of freedom in the language because we were graded on functionality, not code. I generally focused on C, Python and Java.
pbr_robalmost 11 years ago
Class of &#x27;04, Computer Science<p>- Programming I in C<p>- Programming II in C++<p>- Data Structures in C++<p>- Theory of PL rotated languages every semester and project had to be in a language you didn&#x27;t know coming into the class. (C#, php, pl&#x2F;sql)<p>- Software Engineering divided into groups, each group assigned a stack to implement (mine was LAMP)<p>- Databases pl&#x2F;sql<p>- Compilers C&#x2F;lex&#x2F;yacc<p>- OS projects in C and assembly<p>- Parallel projects in C, python and mpi<p>- Python language class<p>- Scripting languages survey was always python and ruby, but rotated in something new or interesting each section.<p>- A COBOL section with old mainframe<p>- Assembly class was in MASM<p>No FP for undergrads. No one had to learn Java or C#, you were given the opportunity to be exposed to them through User Groups or electives, but directed classes in them were reserved for the Information Systems people over in the Business school.<p>--- edit: formatting
0x0539almost 11 years ago
I&#x27;ve not graduated yet as I started in 2009 and just take courses every now and again instead of doing it all at once, I&#x27;m completing my last term this fall.<p>First year with C++ and C. The C++ usage was C-style code just used cout&#x2F;cin&#x2F;booleans.<p>Second year was C, Forth(had to write an interpreter) MIPS32, Java, and Objective-C(Elective in iPhone dev[pre-iOS days])<p>Third year: C, Java, Haskell, Prolog<p>Fourth Year: Matlab, C, whatever you want. Most 4th year courses are either fairly specific or you&#x27;re free to use any language you want. Ex. the Computer Vision course uses Matlab, but the AI course you could use whatever language you wanted provided you supplied steps for running it that the marker could follow.
x3roalmost 11 years ago
I studied in Hamburg, Germany. We started our first programming course with Ruby, the second was Java. We did some Prolog and Erlang later on and I took an optional course on the the basics of FP in which Scala was used. Oh, and there as a Software Engineering project where we could choose from either Java or C#. And we did some Assembly&#x2F;C in an OS course as well.<p>All these were undergrad courses. My graduate courses were mostly either theoretical or project work where we could choose our own language. The only exception was Maude [1], which we had to use.<p>[1]: <a href="http://maude.cs.uiuc.edu/" rel="nofollow">http:&#x2F;&#x2F;maude.cs.uiuc.edu&#x2F;</a>
omnipathalmost 11 years ago
Undergrad 1999 - 2004 (IU-Bloomington)<p>I can only speak for the classes I took<p>Intro to Programming =&gt; Scheme<p>Object Oriented Programming =&gt; Java<p>Assembly Programming =&gt; 68k assembly<p>Intro to Data Structure =&gt; Java or Scheme (depending on Prof.)<p>Operating System =&gt; Technically C, though I did some of it in Java<p>Compilers =&gt; Scheme<p>Programming Languages =&gt; Scheme<p>Distributed Programming =&gt; C and MPI<p>Web Programming =&gt; HTML, Javascript, Java, PHP, Apache &amp; Perl<p>AI =&gt; Scheme<p>Software Engineering course =&gt; whatever was required or wanted, we chose Perl<p>IU-Bloomington at the time barely touched Java, preferring to do most of the teaching in Scheme or C. I would have prefered they had focused more on C (as I still can&#x27;t program a C program without segfaults galore.) and less on Scheme, but that&#x27;s how it goes.
lawnalmost 11 years ago
Soon going to start my last year in my CS master at Linköping, Sweden.<p>The overall trend appears to move towards Python and even some functional languages like Haskell, but Java is still very common.<p><i>Core</i><p>Intro to Programming =&gt; Common Lisp (Now changed to Python)<p>Intro to Data Structures =&gt; C++ and Java<p>Intro to Object Oriented =&gt; Java<p>Embedded =&gt; C&#x2F;C++ and 68k assembler (possibly some other architectures as well)<p>Operating Systems =&gt; C<p><i>Elective</i><p>Some of the subjects have been touched on in other subjects, like logic programming.<p>Compilers =&gt; C++&#x2F;Flex&#x2F;Bison<p>Advanced Data Structures =&gt; C++<p>SICP (course follows the book fairly closely, not sure what to call it) =&gt; Scheme<p>Database =&gt; SQL (probably python&#x2F;Java)<p>Web programming =&gt; Python<p>Logic programming =&gt; Prolog<p>Design patterns =&gt; Java<p>Artifical Intelligence =&gt; LISP and Java<p>Parallel computing =&gt; C and C++
FlopValmost 11 years ago
From what I hear, java is the big one.<p>2007-2010 undergrad dates here.<p>I graduated with a degree in Computer Information Systems. CS was not offered at my school which was a relatively smaller university with focus on general business classes or accounting. Finance&#x2F;accounting&#x2F;economics&#x2F;marketing&#x2F;management were the more popular majors (25 graduated with my major)<p>The more development oriented classes were Intro to Java &amp; Intermediate Java. We also had an intro to web development class that focused on HTML&#x2F;javascript and another that used C++. There was also a DB class that used Access and the next level DB class used mysql.
Fightbackalmost 11 years ago
1st year CS @ ETH Zurich here<p>Intro to Programming =&gt; Eiffel (Betrand Meyer was our Prof)<p>Algorithms and Datastructures =&gt; Java (Pseudocode in PASCAL)<p>Parallel Processing =&gt; Java<p>Design of Digital Circuits =&gt; Verilog&#x2F;MIPS Assembly<p>and in the next courses there will be some Haskell and more Java.
boatsalmost 11 years ago
Graduated in 2013, started in 2008.<p>C was used for 101, Systems programming, Operating Systems, and Networks. There was an elective HPC class which taught CUDA C. C++ was another elective class.<p>Java for 102, Algorithms&#x2F;Data structures, software engineering, and oddly enough Compilers (along with ANTLR for the parser).<p>Programming Languages was Racket or ML depending on the teacher.<p>There were also elective HTML&#x2F;CSS&#x2F;Javascript&#x2F;Ruby on Rails classes but I think they counted for 2 credits (instead of 4) and were only offered online during breaks.<p>We used MIPS and some other teaching assembly language that I forgot the name of for computer architecture.
评论 #7950602 未加载
todd8almost 11 years ago
Interesting to see all the answers. To put things in perspective, these were the languages I used at MIT from 1969-1975 (except for PL&#x2F;1, we didn&#x27;t have courses on programming per se, they just gave us the manuals and it was sink or swim):<p>Fortran -- Engineering classes<p>PL&#x2F;1 -- Intro to Programming EE&#x2F;CS<p>APL -- EE (network analysis, etc)<p>360 Assembler -- EE&#x2F;CS systems course<p>PDP-8 Assembler -- EE&#x2F;CS Project<p>PDP-9 Assembler -- EE&#x2F;CS Project<p>Lisp -- EE&#x2F;CS AI class and structure and theory of Programming languages<p>CLU -- EE&#x2F;CS Research<p>Pascal -- grad school<p>I&#x27;m sure there were some others in there. I didn&#x27;t really learn C until I started working on the Unix kernel after grad school.
ramLlamaalmost 11 years ago
I graduated in 2011 and my sequence used:<p>Alice&#x2F;Java =&gt; &quot;101&quot;-type class<p>C&#x2F;Perl&#x2F;Shell =&gt; Intro to Systems<p>C =&gt; rest of the systems branch<p>Java =&gt; Data Structures<p>Standard ML =&gt; functional and logic classes.<p>Many of the more esoteric electives used their own thing. For example, I used Serpent in Computer Music Systems.<p>The curriculum changed in my final year. The new students now do:<p>Python =&gt; &quot;101&quot;-type classes and basic data structures and algorithms<p>Standard ML =&gt; parallel data structures and algorithms and other functional and logic classes<p>C0 transitioning to C =&gt; Systems courses.<p>I do think our distributed systems class was experimenting with Go at some point.
endophagealmost 11 years ago
&#x27;10 from Imperial College London, we did:<p>Haskell Java Prolog C and C++ NASM assembly<p>Then depending on the optional modules you chose you might also do a couple of more specialized languages like Matlab.<p>There was also a mandatory course involving building a multiplayer networked game with total flexibility on language, but predominantly people did browser based games with one of PHP&#x2F;Python&#x2F;Perl&#x2F;Ruby and JavaScript (although NodeJS wasn&#x27;t around in 2008 when I did the project, but I&#x27;m sure people are using it now).
zarifyalmost 11 years ago
Not exactly &quot;these days&quot;, but hey, perspective, and non-US.<p>1998-2001 (Curtin, Western Australia)<p>Intro to Programming =&gt; Pascal (switched to Java in &#x27;99)<p>Intro to OS =&gt; C and an x86 assembly variant I don&#x27;t remember much about<p>Comms =&gt; C<p>Database Systems =&gt; PL&#x2F;SQL<p>Systems Programming =&gt; C++<p>Design and Analysis of Algorithms =&gt; C<p>Scientific Computing =&gt; C<p>AI =&gt; Lisp<p>Graphics &amp; Visualisation =&gt; C<p>(Looking back over my transcript, I was a really terrible student :&#x2F; Just as well I had a pretty decent grasp of C before I went to uni really.)
评论 #7952148 未加载
Olognalmost 11 years ago
There is a required C++ course and then a required Java course. Later classes use one or the other language, these were the main two languages used in CS.<p>There was a course on logic gates etc. where we learned MIPS assembly.<p>The database course used SQL.<p>A course on algorithms used Python so we learned that as well.<p>Then we had a course on languages. Half of it was devoted to Common Lisp, but it also touched on languages such as Java and Prolog.
narwallyalmost 11 years ago
Started CS at my university in 2011.<p>Intro to Programming =&gt; Java<p>Intro to Scientific Programming =&gt; Python<p>Data Structures =&gt; Java<p>Computer Organization and Design =&gt; C &amp; MIPS Assembly<p>Programming Language Concepts =&gt; Java, Prolog, Haskell, Python<p>Operating Systems =&gt; C<p>Bioinformatics Algorithms =&gt; Python<p>I would have loved to have been introduced to a Lisp somewhere in there. Had to stumble upon that one on my own, and it&#x27;s my go to language family for side projects now.
jaweegianalmost 11 years ago
I&#x27;ll be a senior in college next year.<p>We use Python for our introduction course (still 2.x due to a library incompatibility) and Java for the next level course.<p>After that, it&#x27;s about 90% Java, with C++ for certain courses. Only exception I can think of is Databases, where we use MySQL and write programs to interface with it in mostly PHP (but also some Java at the end).
评论 #7950620 未加载
mahyarmalmost 11 years ago
Grad was 2010. Mostly was Java for everything, except<p>- C for an OS course<p>- ARM ASM for a CPU course<p>- creating some C# lite language for a compilers course.<p>- SML for a languages course<p>- SQL in a databases course<p>I was pushing to use python for the first programming language class since Java had too many magic words that confused people, but they didn&#x27;t go for it anyway since internship employers still wanted java in the first years even.
crazypyroalmost 11 years ago
Current student here. 90% is C++. Other 10% is various other languages used to show different programming paradigms. My university solely teaches C++ for the first two years (and after that, its class&#x2F;professor dependent) because it has partnerships with a couple major engineering companies that give the school a good amount of money.
ballpointalmost 11 years ago
Current Oxford student:<p>Functional Programming: Haskell Imperative Programming: Scala Object Oriented Programming: Java Concurrent Programming: Scala Concurrency: CSPm Intro Algorithms: Haskell Compilers: OCaml Digital Systems: MIPS Assembler Networks: C Graphics: Java Databases: SQL, PHP (apparently...) Principles of Programming Languages: Haskell
califrezealmost 11 years ago
Currently still in school (senior graduating in 2015) I started my degree at Georgia Tech and I&#x27;m finishing it at UCR.<p>---------------<p>Intro to Programming =&gt; C (GT) &#x2F; C++ (UCR)<p>Intro to Data Structures =&gt; Java (GT) &#x2F; C++ (UCR)<p>Advanced Data Structures =&gt; Java (GT) &#x2F; C++ (UCR)<p>Compilers =&gt; C (GT) &#x2F; C(++) (UCR)<p>Systems Software =&gt; ? &#x2F; ?<p>Operating Systems =&gt; C (GT) &#x2F; Java (UCR)<p>Database =&gt; ? (GT) &#x2F; SQL (UCR)<p>---------------
pgcostaalmost 11 years ago
Minho Univ. Portugal<p>Functional Programming: Haskell<p>Imperative: C<p>Object: java<p>Computational Logic: Prolog<p>Graphical Computation: c + opengl<p>OS: c<p>Concurrent: Erlang, java<p>Compilers: c+yacc+flex<p>Program Calculation: Haskell<p>I&#x27;ve notice very few places teach program calculation. It is an interesting trend and you can learn more about it here: <a href="http://www3.di.uminho.pt/~jno/ps/pdbc_fm.pdf" rel="nofollow">http:&#x2F;&#x2F;www3.di.uminho.pt&#x2F;~jno&#x2F;ps&#x2F;pdbc_fm.pdf</a>
yulaowalmost 11 years ago
For me two years ago it was still C&#x2F;Java&#x2F;Sql and also a course on 80x86<p>The hard part was the Advanced Algorithms and Data all in C where you can fuck up in the algo implementations AND also in the memory management of your algo implementation. A fuckup on a malloc&#x2F;free could cost me the failure of an entire exam
hubwubalmost 11 years ago
I graduated this past spring. A good chunk of the classes were primarily in Java. I only took 4 or 5 classes that the utilized C&#x2F;C++.<p>However, there was a revamp in the curriculum in that the core courses are not being taught in C. It&#x27;s not till they are in their Junior year that they now encounter Java or C++.
gatehousealmost 11 years ago
Class of &#x27;09, computer engineering.<p><i>1st year</i>:<p>Intro to programming: C (&amp; bash to compile &amp; run programs)<p>Intro to datastructures: C++<p><i>2nd year</i>:<p>Digital Systems: 68k assembly<p>Design Project: PIC microcontroller assembly<p><i>3rd year</i>:<p>Prog. Lang: Python, Scheme, Prolog<p>Databases: SQL<p>Comp. Org: Verilog, NIOS assembly<p>Operating Systems: some weird custom language for this one course<p>Control Systems: MATLAB<p><i>4th year</i>:<p>Compilers: C<p>Compilers2: C++<p>Distributed Systems: Java<p>Computer Networking: Java<p>Computer Security: C (&amp; learned to use gdb)<p>Also used bash &amp; java to do my thesis
andystevens91almost 11 years ago
I&#x27;m in my second year in Computer Science, so far we&#x27;ve used: Java - Programming Lab 1 MIPS assembly - Computer Architectures Lab C - Programming Lab 2, Operating Systems, Algorithms and Data Structures Lisp&#x2F;Standard ML - Programming Lab 3
jvreelandalmost 11 years ago
Intro programming = python Data structures and algorithms = python Intro OO = Java Concepts of Computer Systems = C&#x2F;C++&#x2F;mips&#x2F;x86<p>Those are the names that the school gave the courses it&#x27;s basically CS1-4<p>Those are the current courses I took CS1-3 in java and CS4 in C++.
cemaalmost 11 years ago
A friend of mine is teaching an introductory course in Clojure. It is perhaps still at an experimental phase, but so far the experiment has been a notable success, judging by the students&#x27; performance later in college and after the college.
waivejalmost 11 years ago
I took two grad courses this Spring:<p>- Networking used Python with Mininet<p>- Software Development used Java with Eclipse (Android, Swing, JUnit, Google App Engine, GWT, etc.)<p>I finished my undergrad in 1995 and used C and assembly (RS6000, Spark, x86). C++ started to be an option when I left.
jeffzzangalmost 11 years ago
Graduated with a CS degree in 2004. The breakdown of the primary languages I used were:<p>75% Java 25% C<p>With some smalltalk, SQL, and C++ sprinkled in for some of the more specialized classes<p>Asking a friend who graduated 2014:<p>60% C++ 40% Java<p>Some C#, Python, PHP for some of the specialized classes
hk__2almost 11 years ago
I’ll start the last year of my M.Sc in CS in Paris, France next October.<p>Intro to Programming =&gt; Java<p>Intro to Data Structures =&gt; Java<p>Advanced Data Structures =&gt; Java<p>Compilers =&gt; OCaml<p>Systems Software =&gt; C<p>Database =&gt; MongoDB, PostgreSQL<p>Web =&gt; PHP<p>Logical Programming =&gt; Prolog<p>Functional Programming =&gt; OCaml<p>OOP =&gt; Java, then C++<p>Scripting =&gt; Python
评论 #7951979 未加载
Moral_almost 11 years ago
I Just finished my undergrad and am starting my masters. University of Utah<p>Intro to Programming =&gt; Java&#x2F;Racket<p>Software Design 1: C++<p>Software Design 2: C#<p>Intro to Data Structures =&gt; Java<p>Compilers =&gt; Racket<p>Systems Software =&gt; C&#x2F;x86<p>Operating Systems =&gt; C&#x2F;x86<p>Database =&gt; dunno<p>Electives<p>Programming languages: Racket Advanced OS: C
jtomealmost 11 years ago
Most of the (non-systems programming, which use C) classes offered at my university are in Java but a few of them are taught in O&#x27;Caml (The programming language and compiler ones).
Someone1234almost 11 years ago
When I went to Uni&#x27; in like 2006, it was all Java (end to end) except electives in Visual C++ (ick), some web stuff in PHP&#x2F;SQL, and then the maths requirements had MathsLab.
Igglybooalmost 11 years ago
I&#x27;m about to graduate in December. We&#x27;ve used almost entirely Java for the core classes. My algorithms class used python and we had a single class devoted to C&#x2F;Unix.
krappalmost 11 years ago
I&#x27;m going to a technical college, but (in order of exposure so far) C++, Java, VB, C#, SQL, Javascript. Haven&#x27;t touched python yet, unfortunately.
评论 #7950628 未加载
callmeedalmost 11 years ago
So I left university in 99 (Cal Poly SLO) and am considering going back in the Fall to finish. From what I understand most courses are still using Java.
4t4g24h3almost 11 years ago
I graduated ~7 1&#x2F;2 years ago and we had a class with Prolog and SML&#x2F;NJ. SML&#x2F;NJ wasn&#x27;t even new back then, but it was pretty sweet.
akhil1710almost 11 years ago
Class of 2016 undergrad<p>Intro to CS: Java<p>Data Structures: C++<p>Systems: C<p>Programming Languages and Compilers: OCaml<p>Numerical Methods: Python<p>Programming Studio: Java + Ruby&#x2F;Python&#x2F;Perl + PHP&#x2F;Any web framework + Language of your choice
The_Doublealmost 11 years ago
Current undergrad:<p>Intro: Java<p>Data structures&#x2F;algorithms : java<p>Advanced data structures&#x2F;algorithms: java<p>Programming languages: C&#x2F;scala&#x2F;javascript<p>web development: php&#x2F;js&#x2F;sql<p>databases: sql<p>logic: prolog<p>networking: C<p>Comp. Organisation: x86 asm<p>electives:<p>Operating systems : no code at all<p>embedded systems : C<p>digital systems : VHDL
miguelrochefortalmost 11 years ago
Introduction: C# (WinForms)<p>Data Structure: C#<p>Patterns: C#<p>Web client: HTML&#x2F;CSS and jQuery<p>Web server 1: Java<p>Web server 2: ASP.NET (WebForms)<p>Database 1 &amp; 2: SQL Server 2005 &amp; 2008<p>Project: ASP.NET MVC 4 + Entity Framework
评论 #7951363 未加载
ozalmost 11 years ago
Just finished 1st year. We used Python for the introductory class, then Java for the intro. to OOP class.
ngcazzalmost 11 years ago
Programming Paradigms (aka Intro to Programming):<p>- 1st semester: Haskell (functional)<p>- 2nd semester: C (imperative)<p>- 3rd semester: Prolog (logic)<p>- 4th semester: Java (OOP)
评论 #7950544 未加载
评论 #7950582 未加载
erokaralmost 11 years ago
My impression is that Python is much more common now, but Java still dominates.
评论 #7950550 未加载
japhyralmost 11 years ago
I currently teach high school math and science, but I&#x27;m looking to switch over to CS in the next year or so, still at the high school level. If I make the switch, I&#x27;m going into a school that has no meaningful programming classes. I am currently outlining a four-year plan to build a good high school CS program, that would set students up well for jumping into a competitive CS undergrad. I&#x27;d love feedback from people in this thread, about how well this would set people up for their undergrad work:<p>--- Year 1 ---<p>[few students in the entire school program at all] Offer multiple sections of an Intro to Python class. Focus on Python, because people can start to do meaningful projects in a relatively short period of time, while still learning meaningful fundamentals. Focus on intro classes, to build a broad base of overall programming competence in the school. Focus on games, visualizations, maybe delve into some robotics.<p>Also offer some web-focused classes, focusing on basic html and css, getting into Bootstrap and Wordpress as well.<p>Support other topics such as 3d modeling, graphic design, etc.<p>--- Year 2 ---<p>Offer an intermediate Python class for students who have taken the Intro class, and who have continued to build their own projects. Expand projects to include web apps, focusing on full frameworks such as Django and more modular frameworks such as Flask.<p>Start to offer other languages. C for students who want to understand how things work at a lower level. Go for students who want to work in a newer language? Maybe Java for students who want exposure to a statically-typed language, without dropping all the way to C?<p>Start to bring students to a conference or two, probably starting with PyCon. I took one student to PyCon last year, and it was a great experience for him, and continues to be a guiding experience in his life.<p>--- Year 3 ---<p>Offer an advanced Python class. Refine the C&#x2F; Go&#x2F; Java offerings. Focus on helping students build portfolios of finished projects.<p>Offer a class focused on databases? Support students in learning Rails? Maybe refine an independent learning class, where students who have learned Python develop a plan for learning a second language or building a specific project. Focus on teaching students to use the appropriate support channels such as StackOverflow, IRC, mailing list archives, etc, more than teaching directly.<p>--- Year 4 ---<p>Have a clearly articulated set of pathways for students who just want some exposure to programming, for students who want to build specific projects, and for students who know they want to go fully into CS. Work closely with teachers in the math and science departments, letting students do CS projects that focus on a content area in another class.<p>---<p>I could write an essay on this, so I&#x27;ll stop there. Many of you are now professional programmers. If you could influence a nascent high school CS program, is there anything in here you would want emphasized, or want to steer me away from?<p>[edited slightly for formatting]
评论 #7951793 未加载
评论 #7956162 未加载