Stanford's Most Popular Major Is Now Computer Science
mashable.com
mashable.com
It must kind of suck to be someone entering college right now without natural interest for and aptitude in a STEM field.
With much of CS and programming being so collaborative, those that just don't have the talent or the heart for it generally cause more hassle and grief for the rest of us.
Of course, I'm also not assuming that I'm not an awful programmer myself, but I really do love CS and try to improve myself all the time.
Sure, there are some people who finish through sheer bullheadedness and others who stop caring after they graduate, but I still think that if you manage to make it through a 4 year CS program (especially if it is at a place like Stanford), there is a pretty good chance you have potential to become a useful programmer.
I'd argue that one reason we end up with CS graduates who don't end up becoming very useful is that our industry in general isn't that great at mentoring, and there are a lot of things you need to know to be a decent programmer that aren't always taught (or taught very well) in college. Good mentors in the first few years that someone is developing professionally can make a huge impact, and we should figure out a way for this to happen more often.
You'd be surprised how adaptable people can be. It wasn't long ago that most of us spent our days finding and growing food. Compared to the skill change in the agriculture to industry transition, learning about computation isn't a big deal.
The difference, for programmers, is that they get to do interesting stuff with those machines.
Except you can already learn as much as you want, for free, on your own time, without limit, forever, without having to spend the money & extra time costs of college. It's like we live in a world with bodies and gravity and yet folks need to drive to a gym where they buy an expensive membership just so they can exercise their muscles and lungs. It's ludicrous from a certain point of view.
Pro-tip to all 18-somethings that are considering going to college: you can buy all those college textbooks, or equivalent, directly, without going to university. Even better, you can get the same instructional material and references cheaper or even free. But then you would already know that IF you truly had a thirst for knowledge and greater understanding. You already would have been self-educating long before reaching 18. (Unless your parents held you back, horrible family life, locked in a box, etc. all the reasonable exceptional cases -- but even then there is almost always a way to learn and gain greater understanding, without spending the big bucks.)
And I love college in many ways. But, "Death to college!" Let's keep the best parts and then trash or fix the rest.
There are many reasons to go to college. Learning interesting stuff is just one of them.
I predict the Internet will increasingly replace this traditional function of the college experience. And do it for, essentially, just the cost of Internet access service each month. Yes we'll have to use a web browser and click on the right links to the right sites, chat in topic-oriented forums, and then go do "meetups" in meatspace (Dr. Evil saying "lasers") to meet them face-to-face, become friends, learn from each other, collaborate together, micro-projects, trial projects, earn F2F credibility, put things up on our online portfolios, become ambiant, self-promote, self-educate, iterate, rinse, repeat. Goodbye 4-6 years of grinding and $100K in student debt.
I agree that traditionally going to college was a great way to meet people who've been filtered for certain qualities. But this tradition comes from an era when the Internet didn't exist. Computers didn't exist. Even radios and telephony didn't exist for the earliest periods in which universities existed and operated. But we have all that stuff now. We have frickin FaceTime and Skype and Google Hangouts and Reddit and email mailing lists, oh my! Let's all get to meeting each other, and filtering for the qualities we want, while bypassing that big honkin expensive middleman industry. I'm also seeing this trend with hackerspaces and makerspaces. Meetup.com is a big enabler.
Still, I think the social aspects of college are hard to fully replicate online. For many people, interactions on places like Reddit, mailing lists, etc are somewhat too anonymous and random, while things like Skype and FaceTime are more for people who are already familiar with each other.
I do think the Internet has huge potential to fundamentally change the way we obtain education. It certainly has fundamentally changed the way we obtain information, but it hasn't changed the way we get marketplace-accepted education yet. I think that is coming.
For help and research, there are online references, online discussions, online correspondence...even if it's all "informal" and done in an IRC channel or something, it's all out there and you can, potentially, spend 24 hours a day immersed in a subject.
And in making more connections, there's an odd feedback loop between the local gatherings and the online stuff. It can start at either end, but the two complement each other well by presenting different situations.
It's not that big a deal. If they just want the money but lack the aptitude, CS tends to weed them out pretty quickly.
>It must kind of suck to be someone entering college right now without natural interest for and aptitude in a STEM field.
Well, yeah, it always sucks to lack marketable skills. I guess it sucks even worse when people used to be able to cover up this lack of skill with an easy, fluff college degree, but suddenly that won't work.
Actually using regexes seems a lot more common in the working world than in academia; as for the theory the basics of finite state machines are about as hard as sorting algorithms. (Or do most CS programs these days cover even more ways to implement a regex parser? http://news.ycombinator.com/item?id=4194707 I have no idea what most CS programs do other than produce BigCo BigLang employees, Stanford's sounds better than that from all I've read and heard.) So no, instead of sorting algorithms, maybe they'll give up at suffix tries or Haskell Monads or Lisp macros or relational databases or garbage collectors or JITs or Bayesian networks or operating systems or... And while I don't know much about iPhone apps, I think Android apps are at least as hard as InsertionSort() and probably more frustrating. You even have a consulting business around them--does anyone have a business around sorting algorithms?
Who knows what their motivations are? Someone at Stanford should do a poll. I'd bet the same amount on "want to make something easy-sounding and specific like phone apps", "want to make lots of money doing who knows what" (maybe even as concrete as working for BigCo or doing a startup), and "because it sounds interesting/friends are doing it/other social reasons". If we're going to imagine them as fairly dim, it's easier to imagine they have no concrete goal in mind. (Edit: and according to my sibling comment, since majors aren't declared until later we probably shouldn't be imagining these students as dim.)
I would argue that the principal reason for the popularity of CS is because of the amazing teaching in the introductory courses, not the recent tech acquisitions or news coming from Silicon Valley.
Very few departments at Stanford put in the kind of effort to bring students along that I've seen in computer science (most prominently, the use of an army of qualified undegraduate students to serve as TAs for the introductory courses). Almost every engineering student I know has taken an intro CS course, and an easy majority of everyone else has at least attempted to do so as well. They're fun, easy, and accessible.
I would be interested to see the same sort of effort put into say, introductory physics or chemistry. The now-second most popular major, Human Biology, also represents a very big effort to reach out to students.
(Note: if you like, read "western capitalist democracy economies" instead of "US economy").
I can attest Stanford really feels like a tech school in disguise, especially at the graduate level.
If you need tutoring, money or a sympathetic shoulder, there's plenty available.
Additionally, it would be interesting to learn how many students declare Computer Science before they enroll and how many students switch into Computer Science because "all their friends are doing it" now that it's the most popular major.
vvv - luckily programming polices itself. Those who are not seriously motivated will unlikely survive a serious CS gauntlet.
This is a caveat of trying to popularize programming.
Sometimes I wish it was still purely for 'nerds'.
I personally think anything that makes more people interested in technology is "a good thing".
I think about the CS majors during the times of the .dom boom, or the architecture majors during the housing/construction boom, and wonder how many students were stuck with a degree that was difficult to find a job with, and were not inherently interested about in the first place.
I suspect we can find more than a few data points here.
I was looking to enter a math-heavy CS sub-field, and his class opened my eyes to the potential for broader adoption of AI.
I don't know how many people were inspired by the iOS class, but it doesn't seem to be super popular on campus. I do know a fair amount of people (myself included) who had never programmed before Stanford and were simply motivated to keep going after the introductory sequence. There's definitely a snowball effect, but it wouldn't happen without a great curriculum.
What could possibly go wrong.
Replace X with engineering or book binding and Y with steam powered or printing and it looks similar to other eras of technological growth.
* The Social Network & The Death of Steve Jobs (capitalized for a reason) & The Rise of Elon Musk, Mr. PayPal-Tesla-SpaceX & the other software billionaires doing exciting things getting media coverage
* the software/startup "bubble" -- the perception of it anyway; the crazy big acquisitions of young one soft-product companies with low/no revenue and only 1-3 years old, etc.
* crappy job market right now for 18 year olds, or even a twenty-something graduate with a non-STEM degree
* iOS & Android app development, the tutorials, how easy it appears you can make money at it. iPhones as a gateway drug leading in that direction for some percentage of it's more ambitious users. Rise of Apple in general and the Mac, an additional vector leading in this direction.
* the recent rise in online "courses" by Stanford, etc.
* the high pay and perceived higher job security of this field, at least right now
* more serious people (or those with smart advisors) who sense the future trend of greater software automation, mobile apps, robots, drones, embedded logic, etc.
It's probably a mix of the above, different for each person. All adds up.