53 comments

[ 2.8 ms ] story [ 109 ms ] thread
Stupid article. The author thinks "Information Science" qualifies as a STEM subject.
While it is categorized there, most IS grads aren't qualified to work in Silicon Valley company engineering departments, or even in most engineering/software dev. departments of non-SV companies. To use IS grad unemployment rates in this argument is arguing semantics.
It does qualify for STEM, but the fact is that "Information Science" people don't know how to write code.

Silicon Valley needs people who can code, not people with "5+ years of experience using MS Word"

Not true again. My masters is in Information Science, I have written code for a long time.
I think it's fairly obvious that there isn't a shortage of applicants, but of highly skilled applicants as determined by a somewhat arbitrary and flawed interview process with a strong preference for false negatives over false positives.
Sure. Consider incentives though. A false negative is cheap (at most you spent the time interviewing the person), while a false positive is expensive (good luck firing the person in our litigious environment).
A false positive is expensive for more than just litigious reasons. Hiring a bad apple can destroy the culture of a small company. As Steve Jobs said, "It’s too easy, as a team grows, to put up with a few B players, and they then attract a few more B players, and soon you will even have some C players."
Steve Jobs, that noted "good apple" who took advantage of the Woz...

Our Jobs who art in Heaven hallowed be thy name

I agree and also prefer false negatives when I do interviews - the cost of having someone terrible join your team is much worse than the cost of missing out on the occasional good person.

Of course there is a balance and if you're routinely turning away great candidates there's probably a problem with your interview process that should be checked out.

I used 'flawed' in the sense that interviewing is a hard problem in general.

Edit: Fixed

(comment deleted)
That's very true. The "highly skilled part" in particular stands out to me. Companies want people to start out, who have the equivalent knowledge of someone with 7 years of experience. And few companies seem to want to invest in training / grooming younger folks "on the job".
This seems especially true now that the speed at which products are rolled out has never been higher/start up culture doesn't really have that 'training' aspect built into it. VC's want ROI quickly.
CS grads are educated but not trained. The reason their unemployment rate isn't lower is because they haven't demonstrated their ability to build--to translate theory into practice. The ones that get hired are those who can hit the ground running.
This is not about CS grads (who do quite well in the job market). It is about IS grads.

CS grads fulfill the promise of their training when they can convert theory into practice.

IS grads fulfill the promise of their training when they can convert theory into more theory.

This is significantly less employable.

This is why things like internships or personal projects are so important for those pursuing a CS degree. Companies actively recruit from my campus, but lose interest quickly if the only thing you can talk to is your class or homework experience. What I find interesting is that, at least in my area (Utah), internships are readily available.
My impression of "Information Science" based on a few bad interactions with people who boasted of having the degree was fairly negative, so I went to http://en.wikipedia.org/wiki/Information_science to update it.

My impression just got even more negative. In general the more meta you make your description of yourself, the less likely you are to be doing anything obviously useful.

My view on this particular subject goes farther. If you aren't competent to express your ideas with a database schema, then I don't want you to try to tell me how I should be manipulating the information stored in a database. Because you don't understand what is or is not doable. And if you are competent to write that schema, then you are likely to make yourself useful writing code using it. This goes in reverse as well. Until you've got experience actually using databases as a tool, you're unlikely to design good schemas.

Interesting, the numbers are high enough that it suggests that it would be useful to look into making the market identification of talented engineers more efficient and that building some systems of getting these folks engaged would also improve productivity.

Both of those suggest an organization which hosts contests and events for training would be programmers. An example of a group that does this for business types is DECA [1] which my kids participated in at high school and learned a lot of quite practical business experience. If we could create an organization that had similar sorts of events (DECA does role plays for dealing with work situations and tests to demonstrate general knowledge) We could achieve two things, one we could create visibility for these people to industry who is looking for them, and we could give them confidence and skills they would use in their future employment.

[1] http://www.deca.org/

This article is fairly sloppy journalism. It equates what Silicon Valley wants (programmers with strong math/CS backgrounds) with Information Scientists (whose degrees prepared them for academic/archival roles).

From the actual report: "People who make technology are still better off than people who use technology. Unemployment rates for recent graduates in information systems, concentrated in clerical functions, is high (14.7%) compared with mathematics (5.9%) and computer science (8.7%)."

8.7% for computer science is still rather high.
Bear in mind these figures are for 2010-2011, when overall figures for college graduates were not great, and a fear of a double-dip recession loomed large.
Part of the problem is that there's a mismatch between the education being provided and what employers need and want. A brand new Computer Science graduate isn't usually terribly qualified to do what most employers, who hire CS graduates, want them to do, which is to write code and build programs / systems.

Why is this? Well, part of it is because, as always, a liberal arts degree isn't meant to be job training in the first place. This gap is especially pronounced with software people though, since a CS degree can be very theoretical and: A. might teach a lot of "stuff" that most programmer's don't use (or don't use very often), B. doesn't always include enough of the "stuff" that programmer's do need, and C. can be overly general, when "practice" in this field is highly specialized and includes lots of niches.

Another part is because employers don't do enough to fill in the gaps and help train younger employees. Ideally, employers would hire new CS graduates and spend a year or more grooming them, teaching then the specialized skills they need in that specific domain, and helping them ramp up. But American employers are so averse to providing training, taking a long-term view, and "playing the long game" that it's ridiculous.

One thing that might help, would be if more schools started offering a Software Engineering degree in addition to Computer Science degrees, and if more students started choosing the SE degree. But even then, again, a liberal arts degree isn't supposed to be "job training" and the SE degree would still probably turn into more theory and not enough "how to actually build something" than what employers would want.

Net-net, I think employers are going to have to bite the bullet at some point, and accept that you have to hire and groom "green" people if you want to compete. And maybe universities should start offering a few more classes on the "nuts and bolts" aspects of building systems. Perhaps some partnerships between universities and local community colleges could be involved.

No matter what, though, I don't think you're going to be able to look for fresh graduates who, for example, walk in the door knowing Hibernate, Spring, PostgreSQL, Camel, JMS, Lucene, Maven, Ant, JUnit, SAX, JDOM, STaX, JSON, Hadoop, etc. But, unfortunately, employers are largely looking for folks to walk in the door ready to contribute with highly specialized skills from day one.

Did you actually read the article?

Computer Science graduates are doing OK. It is Information Science graduates who are in pain here.

Did you actually read the article?

Please don't do that. That kind of snark doesn't add anything to the conversation and creates antagonism where there should be none.

Computer Science graduates are doing OK. It is Information Science graduates who are in pain here.

No, Information Science graduates are just in more pain. And that's entirely expected, as a recent IS graduate is even less prepared to go out and work in the "IT World" than a recent CS graduate... if you assume that's a reasonable career path for them (and given the limited number of academic jobs, it probably is).

The whole point of the article was that there are tons of IS grads to hire, so Silicon Valley's problem is that they are too selective about which stem graduates to hire, and not that there is a shortage of talent. Replying, as you did, about the problems with computer science degree is talking about at most a tangentially related subject. Hence my response.

On how CS grads are doing, new grads have an unemployment rate below the general public, in an age range where unemployment is much higher than the general public. And if you go out a few years, unemployment drops in half. This sucks if you are one of the unemployed, but overall I consider this doing fine.

Replying, as you did, about the problems with computer science degree is talking about at most a tangentially related subject.

I'm not only talking about problems with the degree itself, I'm talking about a mismatch between "skills sought" and "skills possessed". This is true regardless of whether your degree is Computer Science, Information Science, Software Engineering, Math or "Other". And in either case, I posit that a significant step towards addressing the problem would be for employers to return to a mindset of "we'll hire green people and train them in the more specialized skills" as opposed to expecting everybody to come in with tons of highly specialized knowledge.

> Ideally, employers would hire new CS graduates and spend a year or more grooming them, teaching then the specialized skills they need in that specific domain, and helping them ramp up

Please No. That is what they do in Japan and I'd feel that's the number one reason programmers get paid shit in Japan. They hire straight out of school with no experience with salaries starting at around $30k. At 15 years experience you'll make somewhere between $45k and $60k.

Programmers in Japan make less than flight attendants

http://www.worldsalaries.org/japan.shtml

Some people would say that's a reason they're in trouble. As the world switched to software being more important then hardware they didn't switch to valuing those that make software.

Programmers get paid poorly in Japan because Japanese culture doesn't respect software. It has nothing to do with the way they are trained.
Why does Japanese culture not respect software?
It does have to do with they way they are trained. If you have a culture that highers starting at $30k with no experience that has to affect overall salaries. Why pay for experience when you can just take next years cheap graduates? In fact Japan even goes so far as to not hire programmers over 35. Programmers are considered jobs for people 21 to 35. Just go read some jobs ads in Japanese.
mm, I'm not aware of any software giants from Japan, hardware giants however... Yay stagflation and such!
Providing general job training would be difficult as programmers work is very diverse and spans many industries. There is also not really such a thing as "industry standard" tools the way that there is for some other industries.

Web technology is in vogue now, but you could spend 3 years teaching people rails and node.js only to have them graduate and find that the world is moving on to something else and now embedded programming knowledge is more important.

No one is claiming there is a shortage of programmers. The shortage is of really good programmers. These tend to be people who have an innate love of and aptitude for programming. It's orthogonal whether they happen to major in CS in college. (I didn't.)

If the people with the greatest innate love of and aptitude for programming are evenly distributed among the world's population, 95% of them are born outside the US.

"If the people with the greatest innate love of and aptitude for programming are evenly distributed among the world's population, 95% of them are born outside the US."

care to back up that anecdote?

This is not an anecdote, it is a simple application of syllogism. 95% of the world's population is born outside the US.
US population is ~5% of the world population?
300 millionish * 20 = 6 bil. Pretty close.
(comment deleted)
This is a big problem for 5% of the employers.

The policy pressure will be just as effective for the other 95% of employers that are interested in keeping salaries as low as possible.

> No one is claiming there is a shortage of programmers.

Since no one else is challenging you on that assertion, look at the graph on page 3 in the paper published by Microsoft:

http://www.microsoft.com/en-us/news/download/presskits/citiz...

The lead sentence is:

"The United States faces a growing economic challenge — a substantial and increasing shortage of individuals with the skills needed to fill the jobs the private sector is creating."

The second sentence of pg's post is:

> The shortage is of really good programmers.

From your quote:

"... individuals with the skills needed"

Compatible statements, no?

Given the graph on that page, I wouldn't interpret it way way. At best, it's highly misleading.

I support immigration reform for top talent. I just have a low tolerance for BS.

The lead sentence is: "The United States faces a growing economic challenge — a substantial and increasing shortage of individuals with the skills needed to fill the jobs the private sector is creating."

This is a position paper from one of the greatest users of H1b visas on immigration reform. It's worth about as much as the fox giving advice on how to build henhouses.

That's true. Companies, and startups in particular, have increasingly realized that they want really good programmers.
Anyone who has ever sat in a hiring commitee at a not-so-good university will recognize this as only half of the truth: they may want A-class candidates, but will they come?

An A-class candidate will get offers from plenty of places, and they will demand good wages, generous startup funds, a job for the wife, access to equipment and so on. If they find the employer distasteful, they will leave because they can, and then all this investment will have to be written off, and there will be another search.

Consequently, there is some wisdom in inviting B-class candidates, because the chance is greater that they will come and will stay. A failed search is expensive as well, someone will have to pick up the teaching load, and there won't be a grant application that year.

Programmers evenly distributed among the world's population? That's almost certainly untrue. I can't imagine that Africa or South America or Central Asia have nearly as many programmers per capita as the U.S. or Europe. I doubt that even China or India (where about a third of the world's population resides) have as many programmers per capita as the U.S. or Europe, since large parts of those countries are still engaged in subsistence-level agriculture.
I find the crux of the issue is employer expectation. If it was lowered to 'have you used a console before?', there would be no shortage. If it was raised higher to say (junior level, mandatory 10 year experience), it would be exasperated.

So the real question is, are employers current expectations reasonable or not? I would guess that hiring a less than best engineer that can produce you wealth would be better than hiring no one and thus produce no wealth. It's a simplistic model, granted, and a less than best engineer may end up decimating your wealth with crap code but...who knows?

So another way to frame Microsoft, Facebook and Google pushing for immigration reform - would be that they want to import all of the 10x programmers from the rest of the World?
There is no shortage of people who have an innate love and aptitude for programming. There is a shortage of companies willing to offer training.
There is a real shortage of people willing to work for peanuts.
Or remain in their third world country and its attendant corruption and infrastructure.
I wasn't sure what "Information Science" was, so I used Google. Cornell, probably an above average department, was the first hit.

As far as I can tell from the course descriptions, graduates of this program are not preparing to invent the next generation of technology breakthroughs: http://www.infosci.cornell.edu/academics/degrees/ba-college-...

A Cornell undergrad wanting to be a hardcore technologist, would major in "Computer Science" in the College of Engineering. But that would be more effort.

(comment deleted)