12 ms·
Responding to the Explosion of Student Interest in Computer Science [pdf]
- justinem 12y agoProfessionals who talk about this stuff never mention that learning computer science is a lot like learning a foreign language. The people who learn something in their early years tend to have an easier time learning new computer skills as they age. I wish more parents knew this.
- rayiner 12y ago[Citation needed]
- _yosefk 12y agoI learned programming & CS at age 18 and I'm on par with people I met who learned it at say 11. I learned English starting at age 5 (I read as almost fluently in English as in my mother tongue, Russian); I learned Hebrew starting at age 10 (I have a hideous accent and prefer to read in other languages); and I tried French in university at age 20 (it was the only time I had to take private lessons to pass the exam). I'm not sure CS/programming are that much like foreign languages.
- chmod775 12y ago> I learned programming & CS at age 18 and I'm on par with people I met who learned it at say 11. These people have 7 whole years of experience more than you have and the advantage to have gained most of it during a time where their brains have been most able to learn and embrace new ways of thinking. Even though you are making an unlikely statement, it might be true in your case. But I'd bet a litecoin it doesn't hold true if you average it out over a bigger sample set.
- thesimpsons1022 12y agoIm similar to the person you're responding to. I think what really matters is if you've had exposure to critical thinking and logic in your life. For people who may not have much exposure to math or logic, it is probably much harder to learn CS at an older age.
- justinem 12y agoI said its a lot like learning a foreign language. So learning a foreign language when young would likely help you learn to program when older. Your case only helps to prove my point.
- jgg 12y agoProgramming and graphic design perhaps (personally, I've yet to meet someone who programmed as a child who was better than a good programmer who learned later), but I really doubt there is much of an advantage to teaching your child Depth-First Search. I don't really think CS is like learning a foreign language at all. The advantage for languages supposedly comes from the fact that we are hard-wired to acquire language at a specific age range ("Critical period hypothesis"). The biggest advantage is for infants, which steadily tapers off until puberty. I doubt we're hard-wired to acquire CS the same way - programming or theory.
- jacquesm 12y ago> personally, I've yet to meet someone who programmed as a child who was better than a good programmer who learned later True, but then you're already filtering out all the ones that are worse because you preselect for 'good programmers who learned later'. You should compare those who programmed as a child as one group versus those that learned how to program later.
- nnq 12y ago> but I really doubt there is much of an advantage to teaching your child Depth-First Search There is a huge advantage if you can teach it to him in a way that he can understand it, not just memorize the algorithm, like the unfortunate way kids learn to divide and multiply without understanding wtf they are actually doing, which is a big IF. It's a basic reasoning skill, even more basic than "basic logic" or arithmetic and if you can wire it into a very young mind you've changed that mind for ever. He will understand much better anything from philosophy to the theory of evolution, because you will have primed the mind for algorithms and logic. It doesn't matter if he ends up an investment bank manager or a politician, he will have learned how to understand algorithmic thinking. 90% of the population are, imho, what I call "mud-minds", they are incapable of deep understanding of logic and algorithmic knowledge, they can just learn instructions and apply them, sometimes to great results, but they don't "grok" them. And when it comes to truly abstract concepts that have no direct equivalent in the real world, they can only recite definitions from books, they have no "intuitive vision" of abstractions. And I think they are like this because their parents and teachers fed them a strict diet of 100% practical knowledge and scientific facts and never exposed them to abstract algorithms, patterns and processes. (As a different line of thinking, I think "separating the mind from reality" also helps young minds get a better grip of abstraction, like "running" an algorithm or visualizing a pattern as pieces of a fantasy world or advice of an imaginary companion, though child psychologists would obviously not be happy of such ideas of education...) By teaching your kid something like depth-first-search (A* search on a game maze map would be even more awesome if you can grab a kid's attention though...), you give him a chance of not becoming such a "mud mind". True, if a kid is technically oriented, you'll probably have more luck teaching him/her general programming before a bunch of algorithms. But the algorithms are the stuff that really "sharpens the mind" and you don't even need programming to get them, they can be explained in more mathematical or more graphical terms. And you don't even need a computer to teach a kid depth-first-search and you don't even have to tell him how it's called or what it is, just try and imprint a deep intuitive understanding of the process and algorithm on his mind.
- deleted 12y ago[deleted]
- malloreon 12y agoHow about "Possibly, they see people making ridiculous amounts of money in tech and want a piece of it?"
- smoyer 12y agoWhen I started college in 1982 as a CS/EE double major, the big-money major was petroleum engineering. If I remember correctly, they lost a lot of people who had done well in high-school when they hit the calculus for engineers classes.
- Roboprog 12y agoSimilarly, when I started in '83, we had a bunch of gonna-be computer scientists at my school. I think about half of those people were gone a year later. What I don't know is if the proportion of people who stick with it is about the same from year to year, or if the years with massive enrollment increases have much higher attrition rates. Alas, that graph shows a big peak of CS graduates around 86/87 or so. I didn't get out until 88, after the wave - and the 87 market crash-let. I had to work too much to do my upper division work in 2 years, so it took me 3 - but I got to learn "dBASE" in my intern-like job, which was largely obsolete by the time I finished school. Glad we learned some C in school (even if I liked Pascal better).
- RKoutnik 12y agoIt's just the same now with CS. We lost 75% of CS prospects in the first semester, almost all of them due to Calculus (although I think some of them came in with the malformed idea that programming was just like video games). I kept in contact with some of the folks who dropped out or switched majors - they're working at convenience stores and the like.
- hkmurakami 12y agoSee business school graduate placement numbers too. Declines in finance and huge upswing in tech (particularly the huge web software companies) Follow the money! (I think it's wise for students to be doing this.)
- kremlin 12y agoI didn't understand this: "10% of Princeton’s students are computer science majors Far more at MIT 10% of Princeton’s faculty are unlikely to ever be in computer science! Ditto" It's the last two lines I don't understand. 10% of currently existing faculty are not likely to work in the CS department? Or it's unlikely that in the future 10% of Princeton faculty will work in the CS department? And the 'ditto'? Far more than 10% at MIT are unlikely to be in computer science?
- nlawalker 12y agoI think he's saying that "it's unlikely that Princeton will ever have 10% of its faculty dedicated to computer science". Despite the demand, universities want to remain balanced and avoid becoming trade schools. "Ditto" means "same for UW"; Ed Lazowska is the department chair at UW.
- jseliger 12y agoDespite the demand, universities want to remain balanced and avoid becoming trade schools. Take a look at Matthew Reed's Confessions of a Community College Dean as well. There are other factors at work: 1. Tenured faculty can remain until they die. Almost every school still has tenured faculty from popular areas in the 70s. 2. It can be dangerous to chase trends, thanks to tenure: if the school tenures a bunch of CS professors today, and then something else comes along tomorrow, those profs can remain for 50 years. 3. Mandatory retirement ages were eliminated by the Supreme Court in the late 80s and early 90s (again, see Reed's discussion), which lends extra importance to points 1 and 2.
- deleted 12y ago[deleted]
- seanmcdirmid 12y ago> Ed Lazowska is the department chair at UW. He was the department chair at UW when I was a CSE student in 1995 (and through when I graduated in 1998). He definitely isn't anymore (I hope!). He does have the Bill and Melinda chair of computer science, but this is something else entirely. The current chair of the department seems to be Hank Levy.
- lispylol 12y agoWhat is the biggest reason for this growth?
- thrush 12y agoA lot of commenters referred to money being the biggest driver but I think that's only a half truth. Rather, job security seems to be the most logical reason to study computer science. No matter who you talk to, in any field, there's a huge consensus that having knowledge and experience with computers increase your employment prospects (I'm sure this could be proved by scanning job boards). Combined with the current job market and popular opinion that college may not be worth it (especially for non-STEM majors), I'm not the least bit surprised that CS has gained such an enrollment.
- lispylol 12y agoYeah I think that's an important distinction. A lot of kids are picking up CS as a second major or as a minor because it's believed to make you more marketable for a non-tech field.
- osmnshkh 12y agoAnecdotally, my experiences confirm this. My brother, who before, had never even tried to program, is currently a CS major. Most of his friends are too. They don't care about startups or startup jobs, they want secure jobs at big companies.
- econner 12y agoI can speak to a few anecdotal factors having recently graduated from Stanford. 1) The current tech boom. There's the perception of being able to easily create a startup or to get a programming job at a tech company. Some major in computer science also for the technical skills it gives even though they plan not to pursue programming as a job. They may want to become a PM, or a related non day-to-day programming role for which understanding technical concepts is important. 2) Financial downturn of 08. Many students who would have previously majored in economics or finance have chosen computer science due to the folding of many investment banks as well as the increasing negative perception of working on Wall Street. 3) Increase in diversity of the major. The major has become more interdisciplinary. You used to be required to take very "hardcore" classes like operating systems and compilers. Now though with the rise of fields like HCI the major has become more diverse. 4) Social tipping-point. There is a common joke at Stanford that everyone is a CS major. More people majoring in CS means more help from peers who have been through the same classes and can help out. This social support leads to the positive feedback loop of more people entering the major.
- rch 12y agoIf I was going into college this fall, instead of 15+ years ago, I'd focus on EE, ME, or Physics and just cherry pick advanced CS courses on the side.
- jqm 12y agoIf I was going to college this fall instead of 20 years ago I would get a tattoo on my arm reminding me that extra classes and networking pay off better long term than drinking beer and getting laid. But... I'd probably do the same thing all over again anyway.
- rch 12y agoConferences are better for that than college, all things considered, and the networking is better too.
- jqm 12y agoGood point. And, the beer drinking is often at conferences too. The getting laid part...eh...well... Go to college kids! It's important and you will learn all kinds of great things.
- leot 12y agoThis is evidence that programming has become a skill akin to literacy. The migration seems similar to the hypothetical situation in which universities and society had primarily been based on an oral tradition of communication, and then this fancy new technology called "writing" appeared (at first only in "Departments of orthography science"). Some of those who majored in "orthography science" would go on to study it, comparing and contrasting the features of phonetic of symbolic writing methods. Many others would learn orthography science because it enabled them to learn and communicate much more efficiently in general. Who wants to place bets on when country development metrics include "population % who know how to code" ... ? I'll wager no later than 2030 :)
- noname123 12y agoYes. Would love to see programming as a commodity skill as writing so that real programmers can become writers that pursue the medium as an art and human expression rather than entrepreneurship; and entrepreneurship programming standardized and professionalized as accounting or communications fields. And also Theory of Computation moved to mathematics, Bioinformatics moved to the life sciences. Digital humanities into the humanities. And only then CS departments focus on only the aesthetics of software architecture and the interpretation of software code as a testament to the creators' socioeconomic influence of the time and to the academic's present-time critical theories.
- tres 12y agoThis is an interesting thought, and I really like how you've expressed it. The metaphor of mediaeval monks to your canonical computer scientist and of the modern university to monasteries is so rich, but you only hint at it. Considering how relatively recent our cultural conversion from orality to literacy was, and how quickly society shifted, your metaphor becomes even more rich and meaningful. Shakespeare stands at the border between the worlds of orality and literacy. Kind of makes me wonder who the Shakespeare of today will be in five-hundred years.
- kimdouglasmason 12y agoI completely disagree. Having everyone knowing how to code is the opposite of specialisation. It's inefficient and pointless. If a certain profession needs a piece of software, it's much more efficient for specialist developers to consult with domain experts, write that software, and sell it into the industry. Having every (for example) doctor being able to code adds negligible value, and I would argue the opportunity cost is awful. If my doctor has a choice to become a very mediocre coder or a better doctor, I would hope they choose the latter. As for the comparison to literacy, there's simply no comparison. Illiterate societies are unable to progress past agrarian economies because illiteracy precludes specialisation, prevents the dissemination of knowledge, and makes it almost impossible to learn new things except by imitation or direct instruction. Literacy is a necessary skill in order to do much beyond dirt farming. Illiterate people can't, for example, even follow a moderately complex checklist. In contrast, I see no negative impact on society if most people can't code. I don't spend my time studying anatomy; my micro-surgeon shouldn't spend his time studying coding, and I don't see how it would do anything but make him less effective if he did. A society of part-time coders would do nothing but produce a lot of badly-written toy programs. What's the point?
- platz 12y agoWhat happened in late 2009? I saw the same inflection point in those redmonk github usage graphs.
- chroem 12y agoThere has been a cultural shift lately from "Ha! Those people are nerds!" to "Man, those guys are going to make so much money.". I would argue it has a lot to do with this movie: http://en.wikipedia.org/wiki/The_Social_Network http://en.wikipedia.org/wiki/The_Social_Network Also, as a student at the University of Washington, I would like to note that, anecdotally, the quality of CS students has dropped through the floor. I'm a mechanical engineering major, but I often find myself helping my roommate with his CS homework, even though he's probably in the top five percent of CS students here. These people don't even understand basic things like what bytecode is.
- thejosh 12y agoSure the interest is high, but what's the dropout rate for people, and what is the rate of people switching to other majors?
- yulaow 12y agoExactly this. In my university in the first year there was 2750 students. After first semester only 323, second year 107, last year 82. Let's be honest, money cannot motive you enough to try to learn for a job for which you have no passion.
- xur17 12y agoWhat do the graduation rates look like, or is it too soon to tell?
- jqm 12y agoOne of the most interesting (and to me) significant points about this is the amount of non-CS majors taking CS classes. My father, in his 70's, has run several large corporations over his career. We discussed this and he sees no need for "managers to learn to program". His view is that they can just hire computer people. I disagree. My experience is that if you don't know the basics of programming it's hard to know what to even ask for or what is possible. To say nothing of all the time saving personally writing little half hour scripts to do this and that. My opinion is that anyone who is serious about a professional career involving information is very well served to know a bit of programming and handicapped if they refuse. I think maybe this realization is finally hitting home with others as well and this is partially responsible for the trend we are seeing (to say nothing of the perception of vast fortunes possible in startups).
- RogerL 12y agoI see this all the time. We have plenty of people that work with computers, but don't program them. Their inability to write a 5 line script, or even realize they could walk into a dev's office, explain what they want done, and have it in their email inbox before they can walk back to their desk has them poking away in File Manager, dragging and droppings "opps, didn't mean to do that, where did that go", just wasting their lives away. Well, 'waste' is an exaggeration, but you know what I mean. They are doing something mundane, tedious, and utterly unnecessary, and they always express surprise and gratitude when I offer to knock off a script for them.
- benpbenp 12y agoWhat I'd be interested in, if anyone has a perspective to share, is whether we should be worried? Will the job market change? Will our salaries stagnate or fall?
- withdavidli 12y agoExperienced engineers will still have an advantage in a job search. Few things to consider: - First job: Getting the first one is always the hardest, the whole needs experience, but where do I get experience if no one gives me the chance scenario. Luckily programmers can have highly visable projects. - Job markets do change: It's about supply and demand. US programmers makes more, especially in the SF Bay Area than anywhere else. Just read recently that we hit the point where we're graduating more nurses now than job openings for them. I think that's a very similar case where there was a huge push for the profession and now supply is more than demand. - The best: I see people complain about VISAs in a lot of articles. The best in the profession all demand high pay no matter where they come from. I haven't met many highly skilled/sought after candidates from outside the country that demanded less than their Amercian counter-part.
- hga 12y ago"First job" That's an outstanding point, especially in today's economy. It sucks that a conventional programming career generally ends at age 35-40, but for someone not wedded to a programming career, and who has a modicum of talent and interest in the field, yeah, that'll get them started. They will then have plenty of time to arrange their first transition into another career, and they will have learned a lot of generally useful stuff in the meantime.
- gohrt 12y ago> It sucks that a conventional programming career generally ends at age 35-40, That's an illusion, created by two factors: * Many people choose to leave the "coder" job as they age, and mentally it's a difficult field to enter if you never coded befo reage 35. * The explosion of the size industry means that the number of young novices dwarfs the number of older veterans. You can see this now, as the young novices of the 2000s bust are still in demand when they are now veterans.
- dba7dba 12y agoTotally unscientific opinion, but wouldn't increase in CS graduates and programmers mean lower salary for those newly minted graduates? Or will we never have enough programmers?
- jliptzin 12y agoWe will never have enough good programmers
- dasil003 12y agoIf we keep building software the way we do today then we'll definitely never have enough programmers.
- skylan_q 12y agoTotally unscientific opinion, but wouldn't increase in CS graduates and programmers mean lower salary for those newly minted graduates? Yes. Unions and associations address this by lobbying and legislating such that someone who isn't part of the union or association can not legally perform the job. This is how they control the labor market to the benefit of those who are already in the organization.
- potatolicious 12y agoIncrease in supply, yes, but the question is if the demand will grow more quickly than the supply. If it does then salaries will keep rising (though probably more slowly). If supply growth outpaces demand growth then salaries will drop. I don't think we really know enough about programming demand growth right now to make a call either way, we also don't know the scale of the CS graduate expansion. In any case, this is a terribly simplistic view of things. Not all graduates are created equal, and not all jobs demand the same programmers. Neither programmers nor programming jobs are fully interchangeable widgets. In reality there are multiple buckets to programmer supply, and multiple buckets to programmer demand. This is sort of the nice way of saying that there is a gradient between "has a CS degree but can't code out of a wet paper bag and probably never will" and "has a CS degree and knows how to solve truly hard problems and has the right foundations to be an excellent engineer". IMO when people are entering a field purely for the cash, the latter pool won't expand by that much, but the former pool will expand greatly. This will depress salaries on one end of the industry but the impact on the other end won't be extreme. A dramatic expansion in CS enrollment IMO will cause a crunch in low-mid-end programming salaries while leaving high-end programming salaries mostly intact. My main concern is if these college students are being sold a lie. Schools are holding up Google and Facebook engineers (and their salaries) as templates, but in reality most of them will end up writing enterprise code for a megacorp somewhere for $60K a year, and in fact the bulk of programming jobs in this country are much closer to that than they are to your archetypical Silicon Valley $200K job. This concern goes double for the Hacker School phenomenon, since they smell more opportunistic and get-rich-quick-y than traditional 4-year programs.
- patio11 12y agoWe have almost recovered to the number of CS degrees issued in 1985.
- gohrt 12y agoI never understood that factoid, and always assumed it was an illusion --- we must have manyfold more computer-related degrees now that back in 1985
- hga 12y agoIn 1982 Time's "Person" of the year was the The Computer ( http://content.time.com/time/interactive/0,31813,1681791,00.html http://content.time.com/time/interactive/0,31813,1681791,00....) and I can remember a MIT CS professor, I think it was Michael Dertouzos, bemoaning how this would further skew enrollment. (Note also that at that time most of the department's majors were on an EE track.) Computers were red hot in a way I'm not sure even the dot.com boom reached, and that boom and bust cycle was perhaps longer.
- yen223 12y agoDo these trends hold in universities outside of the US? Because from where I come from at least, computer science is still as un-sexy as ever.
- capkutay 12y agoBefore people start preaching 'coding is the new reading/writing', let's get to high school CS requirements first (like any other common science/math class). Also, I think there's a sweet spot between a full-on academic CS degree and a level of software proficiency to make someone useful on the job. Whether it be data analytics or basic web development, you don't NEED to know the ins and outs of automata theory or compilers to be a 'coder' with hands-on skills.
- webmaven 12y agoThe point of 'coding is the new literacy' is that we also need grade school CS standards.
- ycmike 12y agoLove the "have a beer while the students use Coursera" approach. As a student this would be amazing.
- nlawalker 12y agoThe problem is that 'computational thinking' has become expected of a university education, regardless of major, but universities haven't shifted to meet the need. All the other basic requirements of a university education are filled through entry level classes - credit-fillers that students have to take in order to graduate. This structure works out well for everyone: the university ensures that students are getting a well-rounded education (as opposed to a trade-school degree) and maintains its reputation and the value of its product. The only classes that students can take to demonstrate an ability in computational thinking are CS classes. Entry level CS classes, like those in the other engineering disciplines, are not like entry level classes in non-engineering disciplines. Most students that take ARCH 101 and LIT 101 are not taking them because they are interested in pursuing the major, they take them because they were the best-sounding classes that help them to fill their credit requirements. In doing so, they end up with a well-rounded education. In contrast, most students that take EE 101 are trying out for EE as a major. CS entry level classes traditionally fell into the latter category. Demand has resulted in students treating them as part of the former. The best thing a university could do is to figure out what skills that these employers are all demanding and offer entry-level classes to fill the need. Structure them to work with large numbers of students, just like all the other 100 and 200 level classes that everyone takes. Here's the key part: advertise these classes relentlessly, to students and employers. Talk about how the university has seen the demand for these skills and has shifted to focus on them. Become known as a university where every student can get these skills as a part of their education, regardless of major, and most choose to. Potential students will be thrilled at the prospect of a university where they can get a bankable education without having to commit to CS as a major. Strain on the CS major will go down and prestige will increase - if every student is getting the kinds of CS skills that employers require, then the ones that enter the major must be the hardest of the hardcore.
- timr 12y agoLook at the chart for non-major interest in upper-level CS classes at Harvard: operating systems has no interest; "data science" is surging. Andrew Ng's machine learning class has more than twice the enrollment of computer architecture or software engineering (which is a particularly pathological case, since by definition, nobody else can teach Andrew Ng's class). This is not general-interest demand. Students are hopping on the bandwagon, and picking the classes that sound like they're the shortest path to a high-paying job. About the only thing colleges can do right now is offer more of the hot classes via lecturers, and wait for the crash. Universities don't hire (lifetime) tenured faculty based on short-term enrollment surges.
- vezzy-fnord 12y agoIn relation to "coding becoming the next literacy" and having demographics on people who know how to code... What use does a mere "learning to code" actually have to most people? How do we measure fluency in "coding"? Think about it. A crash course on basic procedural constructs like loops, variables, functions and maybe some simple exercises where one makes use of a language's standard library is not particularly useful. Even the conceptual knowledge that one gains is relatively minimal. It's not like the huge percentages of people "knowing how to code" will do anything meaningful with it. Why? Because they wouldn't have the skill. Many discussions revolving around compulsory code education seem to completely ignore the tons of domain-specific knowledge one requires to put coding skills to any real use. It's likely that little of the "code literates" will ever contribute to an open source project, for instance. This is because besides code, you have (potentially): a build system, continuous integration, documentation generator, actual protocols that must be understood (HTTP, DNS, FTP, etc.), use of OS-specific system calls and constructs, general knowledge of memory layout, knowledge of system administration, etc. These are merely condensed into a nutshell. Code by itself is of little use without actually knowing how computers work in general, which is no small task to comprehend, and requires tons of domain-specific knowledge as to the many abstractions we have created around software and hardware. It's a perpetual learning experience. A person who has learned rudimentary C is of little use in any serious project that requires knowledge of the POSIX and/or glibc API, for instance. It's a completely meaningless metric in general. Most people will just do some basic imperative coding in a highly abstracted knowledge with no real conceptual understanding of what actually goes on, and promptly forget about it. Maybe they'll remember how to write a recursive Fibonacci sequence procedure. Software is more than code. It is complex and multi-faceted. I can see blind coding having some uses for things like VBA macros, but those can be picked up by individuals on a case-by-case basis, when and if they need them.
- thewarrior 12y agoProgramming is not going to be as lucrative a few years from now. As soon as interest rates rise in a few years the startup boom will cool down a bit and the influx of new programmers will really depress the earning potential of the field.
- jqm 12y agoProbably. But longer term software is only going to become increasingly important. Some refugees from the start up implosion (if there is one) will move on to other careers in other fields. Some will adjust and keep right on developing whatever comes next. There may be a bubble right now. But, it has a grain of truth to it. And that is... computing is changing the world.
- lsc 12y agoDidn't this also happen in the mid-to-late '90s, with the first dot-com boom? I mean, I don't think that the proportion of CS majors dropped precipitously after the crash, but the rise certainly seems to correlate with demand for programmers. It makes a whole lot of sense, really, except that if you started your degree in 1998, you were going to graduate right into a crash.
- hga 12y ago"[...] I don't think that the proportion of CS majors dropped precipitously after the crash..." MIT's EECS enrollment more than halved, after being 40% of the undergraduate body for more than 2 decades.
- lsc 12y agoman, I wonder what happened to those guys? I was able to remain employed through the dot-com crash, but I know many people who were obviously better than I was that did not. It seems like it would have been brutal for a fresh graduate with no experience in '01.
- hga 12y agoA lot of them that were strong in math, getting the mostly EE or enough of both degrees, would have gone into finance as quants (https://en.wikipedia.org/wiki/Quantitative_analyst https://en.wikipedia.org/wiki/Quantitative_analyst), which was a desired initial destination for many of them anyway. Don't remember too much about the mostly CS track ones, I think it was fairly grim; I can remember at least one major, Fortune 50 or so company, rescinding offers they made one year (which obviously poisons the well for some time; one reason Kodak failed so badly in Japan). I couldn't remain employed during that period (had the particularly bad luck of joining Lucent at the beginning of 2001, just as it began its descent from 106,000 employees to 35,000).
- zan2434 12y agoThe obvious answer is specialization. Computer science needs to be split, at the very least, into theoretical CS and Software Engineering. From there, both CS and Software engineering will need to contain specializations as well. Software Engineering will splinter into Networking, Javascript Performance optimization, Compiler optimization, etc.
- pirateking 12y agoOne of the concepts I have been thinking about for an education system is based on this triad: - Symbol (mathematical languages / abstract interfaces) - Human (natural languages / human-human interfaces) - Machine (programming languages / human-computer interfaces) Any particular subject or area of study is taught and learned using all 3 approaches taken together. Used as a foundational educational framework, this system could have potential to help cross discipline study through the assimilation of fundamental aspects of computer science, cognitive science, linguistics, and math into other fields. This also allows people to skip learning these topics as unpleasant prerequisites, which may not be well integrated with their field's particular goals. Existing universities and schools will not be able to transition to these sorts of new holistic systems. Entirely new systems based on modern first principles must be created for the future of education.
- enrmarc 12y agoHere in southern Europe is totally different. $90K for a new grad? That's incredible. Here, the majority of new grads earn about €15-25K. Take a look: https://www.infojobs.net/madrid/analista-programador-j2ee/of-i26ae3e603043659a932ada3aecb3f8 https://www.infojobs.net/madrid/analista-programador-j2ee/of... (Says: J2EE Analyst with 3-5 years of experience and a lot of another requirements => €27-30K)
- marincounty 12y agoA note to poor kids, or kids who don't want to rack up huge student loans listening to some some Blow Gard who didn't stay current, and spends a month talking about history of CS. Many of you can learn the employable CS skills on your own, with the help of the Internet, of course.
- novaleaf 12y agoThis slide deck is misleading. CS is supply constrained, not demand. I went to UW and wanted to major in computer science. At that time (1997), they accepted 80 students per year into the program. 80. Guess how many students applied to the program every year? More than 1500. The supply was/is so constrained they do not consider anybody with less than a 3.9 GPA. Even today, as per the slide deck, These schools accept 400, 800 students. How many do you think are applying?
- hga 12y agoThat could be an "it depends". I can believe a lot of public universities have quotas on CS undergrads (and other majors, especially ones that require labs, and until recently as these things go that was a big issue for CS), but it's the mark of a good private school that if an undergraduate wants to major in X, they'll find a way. CMU is the only exception I know to this, has a quota of about 135 CS students the last time I checked. According to this page http://www.statista.com/statistics/183995/us-college-enrollment-and-projections-in-public-and-private-institutions/ http://www.statista.com/statistics/183995/us-college-enrollm... , as of 2011 61% of students enrolled in public colleges. That's for students at all levels, however (you can use this page to subtract those, but it's breakdown is by gender: http://www.statista.com/statistics/236654/us-post-baccalaureate-enrollment-by-gender/ http://www.statista.com/statistics/236654/us-post-baccalaure... ).
- zaroth 12y agoIt is so important to foster and support the growth of the CS curriculm, at all levels but at the university level especially. We need these classes to be well taught, and well funded. If 1000 students all want to learn the same thing, that's a lot of funding to do some really interesting and amazing things. This is not about provisioning more lecture halls! The way students pick classes is a lot different from the way that a consumer spends money. You're already committed to spending a certain amount, especially if it's not impacting your major, class selection is a different set of variables. But I'm sure the surge in CS enrollment is at least partially mirrored in a broad increase of CSed spending overall. What leaves me nervous is, I wonder if the tool set is really ready for mass adoption. The most direct effect of massively increased enrollment, and massively increased class size, will be overall more people who know how to code, which would be great, but also significantly lower median coder ability. Which will have a large impact over time.
- thesimpsons1022 12y agoThis type of thing is very unsettling to me as a second year CS major. I might be one of the highest achievers in my college, but how am I supposed to compete with the thousands of kids graduating from MIT, Stanford, and Harvard? really scares me.
- sytelus 12y agoIn an interview just couple of days ago Knuth said something like 2% of human population finds this new "computational thinking" as native. Now we have 10% plus graduates coming out of Princeton and MITs in CS! But what caught me is this line: Students are figuring out that all of the STEM jobs are in computer science That pie chart is probably the most striking manifestation of "software is eating the world".