Posts tagged ‘jobs’
An interesting paper I found reading Annie Murphy Paul’s blog. An Expressed Interest is an answer to a question like “What career do you plan to pursue after College?” A Measured Vocational Interest is measuring an interest in mathematics, and suggesting that the student go into accounting. The former are far more predictive of future careers than the latter. Why are we so bad at predicting what field someone should go into based on their base interests? I’ll bet that it has to do with more things than just interests, like Eccles model of academic achievement (how do people think about this career? can you see yourself in this career?) and values (which are different than interests).
I have a CS Ed PhD depth exam meeting later this morning. One of the committee members can’t make it, because she’s a UK faculty member who is going on strike today. (BBC coverage here.)
The concerns of the strikers (press release linked below) seem pretty similar to the issues that we have in the United States: No pay raises for faculty (University System of Georgia faculty haven’t had a pay raise since 2008), big salaries for upper administration, and increasing middle management bloat. Interesting to see if this picks up on this side of the Atlantic.
UCU, UNISON and Unite trade unions announced today that their members working in higher education will walk out on Thursday 31 October in an increasingly bitter row over pay.
Staff have been offered a pay rise of just 1% this year, which means they have suffered a pay cut of 13% in real terms since October 2008. Will Hutton this weekend highlighted that as one the most sustained cut in wages since the Second World War.
The squeeze on staff pay comes at a time when pay and benefits for university leaders increased, on average, by more than £5,000 in 2011-12, with the average pay and pensions package for vice-chancellors hitting almost £250,000.
The Brogrammer Effect: Women Are a Small (and Shrinking) Share of Computer Workers – Jordan Weissmann – The Atlantic
Good to see The Atlantic caring about this. I don’t see much evidence offered that it’s a “Brogrammer” effect, though, other than the title.
So here’s why everybody, whether or not they’ve ever given a hint of thought to brogrammers and the social mores of Silicon Valley or Alley or Beach, should care. A large part of the pay gap between men and women boils down to the different careers they pursue. And STEM jobs, with their generally high salaries, are an especially important factor. Meanwhile, as the Census notes, computer fields make up about a half of STEM employment. So when you talk about women retreating from computer work, you’re talking about a defeat for their financial equality.
I answered the criticism leveled below previously — it really is the case that many people who aren’t professional programmers are going to need to learn to program as part of their other-than-software jobs. Why are programmers pushing back against people learning to code? (And there seems to be a lot of pushback going on, as this mashup suggests.) Is it a sense of “What I do is important, and if everyone can do it, it lessens the importance”? I don’t really think that they’re afraid for their jobs — it does take a lot of hours and effort to learn to code well.
The argument that it won’t “stick” (as suggested below) doesn’t work for me. Just because we don’t know now how to teach computer science to everyone doesn’t mean that we can’t learn how to teach computer science to everyone who needs it. Our lack of ability is not the same as the lack of need. We don’t teach everyone to read well and understand mathematics yet — does that mean we shouldn’t try?
But if you aren’t dreaming of becoming a programmer—and therefore planning to embark on a lengthy course of study, whether self-directed or formal—I can’t endorse learning to code. Yes, it is a creative endeavor. At its base, it’s problem-solving, and the rewards for exposing holes in your thinking and discovering elegant solutions are awesome. I really think that some programs are beautiful. But I don’t think that most who “learn to code” will end up learning anything that sticks. One common argument for promoting programming to novices is that technology’s unprecedented pervasiveness in our lives demands that we understand the nitty-gritty details. But the fact is that no matter how pervasive a technology is, we don’t need to understand how it works—our society divides its labor so that everyone can use things without going to the trouble of making them. To justify everyone learning about programming, you would need to show that most jobs will actually require this. But instead all I see are vague predictions that the growth in “IT jobs” means that we must either “program or be programmed” and that a few rich companies want more programmers—which is not terribly persuasive.
I saw the below exchange on Twitter, and thought it captured the argument well:
I’m interested in the discussions about corporate involvement in higher education, but am still trying to understand all the issues (e.g., who has a bigger stake and greater responsibility for higher education, industry or government). The point made below is one that I have definite opinions about. If we’re trying to improve higher education, why not try to make it more effective rather than just lower cost? I disagree with the below that we have to have 16:1 student:teacher ratios to have effective learning. We can increase those student numbers, with good pedagogy, to still get good learning — if we really do focus on good learning. Why is all the focus on getting rid of the faculty? Reducing the labor costs by simply removing the labor is unlikely to produce a good product.
There is a lot wrong in this apples to oranges comparison, but the point is obvious—cutting labor costs is the path to “education reform,” not research and improved pedagogy. This is “reform” we need to reject when applied to public education. I say this without reservation: when it comes to education, you pay for what is most effective. Period. If small class sizes produce better teaching and learning, then that’s what you support when appropriate. Whatever your approach, stop conflating economic restructuring and education reform; it’s dishonest.
I finished Nathan Ensmenger’s 2010 book “The Computer Boys Take Over: Computers, Programmers, and the Politics of Technical Expertise” and wrote a Blog@CACM post inspired by it. In my Blog@CACM article, I considered what our goals are for an undergraduate CS degree and how we know if we got there. Ensmenger presents evidence that the mathematics requirements in undergraduate computer science are unnecessarily rigorous, and that computer science has never successfully become a profession. The former isn’t particularly convincing (there may be no supporting evidence that mathematics is necessary for computer programming, but that doesn’t mean it’s not useful or important), but the latter is well-supported. Computer programming has not become a profession like law, or medicine, or even like engineering. What’s more, Ensmenger argues, the efforts to professionalize computer programming may have played a role in driving away the women.
Ensmenger talks about software engineering as a way of making-do with the programmers we have available. The industry couldn’t figure out how to make good programmers, so software engineering was created to produce software with sub-par programmers:
Jack Little lamented the tendency of manufacturers to design languages “for use by some sub-human species in order to get around training and having good programmers.” When the Department of Defense proposed ADA as a solution to yet another outbreak of the software crisi, it was trumpeted as a means of “replacing the idiosyncratic ‘artistic’ ethos that has longer governed software writing with a more efficient, cost-effective engineering mind-set.”
What is that “more efficient” mind-set? Ensmenger suggests that it’s for programmers to become factory line workers, nearly-mindlessly plugging in “reusable and interchangeable parts.”
The appeal of the software factory model might appear obvious to corporate managers; for skilled computer professionals, the idea of becoming a factory worker is understandably less desirable.
Ensmenger traces the history of software engineering as a process of dumbing-down the task of programming, or rather, separating the highest-ability programmers who would analyze and design systems, from the low-ability programmers. Quotes from the book:
- They organized SDC along the lines of a “software factory” that relied less on skilled workers, and more on centralized planning and control…Programmers in the software factory were machine operators; they had to be trained, but only in the basic mechanisms of implementing someone else’s design.
- The CPT, although it was developed at the IBM Federal Systems Division, reflects an entirely different approach to programmer management oriented around the leadership of a single managerially minded superprogrammer.
- The DSL permits a chief programmer to exercise a wider span of control over the programming, resulting in fewer programmers doing the same job.
In the 1980’s, even the superprogrammer was demoted.
A revised chief programmer team (RCPT) in which “the project leader is viewed as a leader rather than a ‘super-programmer.’” The RCPT approach was clearly intended to address a concern faced by many traditionally trained department-level managers—namely, that top executives had “abdicated their responsbility and let the ‘computer boys’ take over.”
The attempts to professionalize computer programming is a kind of response to early software engineering. The suggestion is that we programmers are as effective at handling projects as management. But in the end, he provides evidence from multiple perspectives that professionalization of computer programming has failed.
They were unable, for example, to develop two of the most defining characteristics of a profession: control over entry into the profession, and the adoption of a shared body of abstract occupational knowledge—a “hard core of mutual understanding”—common across the entire occupational community.
Ensmenger doesn’t actually talk about “education” as such very often, but it’s clearly the elephant in the room. That “control over entry into the profession” is about a CS degree not being a necessary condition for entering into a computing programming career. That “adoption of a shared body of abstract occupational knowledge” is about a widely-adopted, shared, and consistent definition of curriculum. There are many definitions of “CS1” (look at the effort Allison Elliott Tew had to go through to define CS1 knowledge), and so many definitions of “CS2” as to make the term meaningless.
The eccentric, rude, asocial stereotype of the programmer dates back to those early days of computing. Ensmenger says hiring that followed that stereotype is the source of many of our problems in developing software. Instead of allowing that eccentricity, we should have hired programmers who created a profession that embraced the user’s problems.
Computer programmers in particular sat in the uncomfortable “interface between the world of ill-stated problems and the computers.” Design in a heterogeneous environment is difficult; design is as much as social and political process as it is technical[^1]; cultivating skilled designers requires a comprehensive and balanced approach to education, training, and career development.”
The “software crisis” that lead to the creation of software engineering was really about getting design wrong. He sees the industry as trying to solve the design problem by focusing on the production of the software, when the real “crisis” was a mismatch between the software being produced and the needs of the user. Rather than developing increasingly complicated processes for managing the production of software, we should have been focusing on better design processes that helped match the software to the user. Modern software engineering techniques are trying to make software better matched to the user (e.g., agile methods like Scrum where the customer and the programming team work together closely with a rapid iterative development-and-feedback loop) as well as disciplines like user-experience design.
I found Ensmenger’s tale to be fascinating, but his perspective as a labor historian is limiting. He focuses only on the “computer programmer,” and not the “computer scientist.” (Though he does have a fascinating piece about how the field got the name “computer science.”) Most of his history of computing seems to be a struggle between labor and management (including an interesting reference to Karl Marx). With a different lens, he might have considered (for example) the development of the additional disciplines of information systems, information technology, user experience design, human-centered design and engineering, and even modern software engineering. Do these disciplines produce professionals that are better suited for managing the heterogeneous design that Ensmenger describes? How does the development of “I-Schools” (Schools of Information or Informatics) change the story? In a real sense, the modern computing industry is responding to exactly the issues Ensmenger is identifying, though perhaps without seeing the issues as sharply as he describes them.
Even with the limitations, I recommend “The Computer Boys Take Over.” Ensmenger covers history of computing that I didn’t know about. He gave me some new perspectives on how to think about computing education today.
[^1]: Yes, both semi-colons are in the original.
I read this piece as an explanation for a computing culture that leads to “Donglegate” and a thousand paper cuts. Hostile, uncommunicative, arrogant, impolite, eccentric — none of those are impediments to getting hired. That’s what we have to change to broaden participation in computing. We have to change the culture.
Snowden’s lack of formal education—no high school diploma—wouldn’t have bothered me. The ideal was a person who was sharp, independent, systematic, and very careful. The top tech programs—at places such as MIT, Caltech, Carnegie Mellon, Stanford, UC–Berkeley, and the Ivies— produced many strong candidates, but a computer science degree from most other universities was less of a positive indicator. People with nontraditional educations sometimes did just as well. They usually had some gaps in their knowledge of algorithms and data structures, but I cut them slack, because teaching yourself is harder than being taught, and often more valuable. If you could run the gauntlet of five or six whiteboard coding tests, you stood a good chance of being hired. Sometimes an applicant would be too hostile or uncommunicative, but for me at least, technical skill was the deciding factor the vast majority of the time. There are a nontrivial number of techies who are smart but literally impossible to work with because they are incapable of compromise or politeness. When eccentricity is the norm, it’s hard to have a litmus test for what acceptable eccentricity is.
Google has found that being great at puzzles doesn’t lead to being a good employee. They also found that GPA’s aren’t good predictors either.
Nathan Ensmenger could have told them that. His history The Computer Boys Take Over shows how the relationship between academic mathematics and brainteasers with computer science hiring was mostly an accident. Human resources people were desperate to find more programmers. They used brainteasers and mathematics to filter candidates because that’s what the people who started in computing were good at. Several studies found that those brainteasers and math problems were good predictors of success in academic CS classes — but they didn’t predict success at being a programmer!
How many people have been flunked out of computer science because they couldn’t pass Calculus — and yet knowing calculus doesn’t help with being a programmer at all?!?
You can stop counting how many golfballs will fit in a schoolbus now. Our Favorite Charts of 2013 So FarBen Bernanke Freaked Out Global MarketsGoogle has admitted that the headscratching questions it once used to quiz job applicants (How many piano tuners are there in the entire world? Why are manhole covers round?) were utterly useless as a predictor of who will be a good employee.”We found that brainteasers are a complete waste of time,” Laszlo Bock, senior vice president of people operations at Google, told the New York Times. “They don’t predict anything. They serve primarily to make the interviewer feel smart.”
Kevin Karplus recently wrote a post (on his highly-recommended Gas Station without Pumps blog) about why funding the new AP CS:Principles (AP CS:P) is such a bad idea, mentioning my positive comments on the news. I actually agree with many of the Gas Station points, but I have a more optimistic take on them.
CS:P was never meant to give credit towards a computing degree. The attestation effort showed that many schools do offer some kind of course like what’s in CS:P. It’s true at UCSC, too:
My own campus has several intro programming courses, some at the level of the AP CSP course. I suspect that our campus would offer credit in these low-level courses for the AP CSP exam. These lowest-level courses do not count towards any major, though—they provide elective credit for what should be high-school level courses. The intent (as is apparently the intent for AP CSP) is to provide an extremely low barrier to entry into the field.
That’s really the main point. We need more CS education in high schools. When there’s only 1 AP CS teacher for every 12 high schools, there is very little computer science education out there. AP courses is a big lever to get low barrier courses out there.
Gas Station then points out that courses like these may not actually have much of an impact downstream.
I don’t know how well the low barrier to entry works, though. I’ve not seen much evidence on our campus that the lowest level courses produce many students who continue to take higher level CS courses…We still have appallingly low numbers of women finishing in CS (and the new game-design major within CS is even more heavily male), so I can’t say that the lower-level intro courses have done much to address the gender imbalance.
That’s a fair point. We don’t know that it will work to get more students into computing. I just did a Blog@CACM post that suggests that the evidence we have is promising in terms of impact on careers, especially for under-represented minorities. You can’t really use a single campus to test the idea though. The game is at the level of thousands of high schools where there is no computer science at all.
I share the Gas Station concern over the professional development challenge.
The success of CSP also depends on thousands of high schools suddenly deciding to teach the course and getting training for their teachers to do this. I (along with many others) have grave doubts that the schools have the desire or the ability to do this. It is true that the CSP course should be a bit easier to train people for than the current AP CS A course (if only because Java syntax, the core of CS A, is so deadly dull).
The question that we need answered is: how important the “Advanced Placement” lever is? Is it so important (big payoff) that having a more accessible AP course in CS (thus, lower cost to adopt) changes the balance for schools? I just had an all-day meeting with folks from the Georgia Department of Education two weeks ago, and they are building AP CS:P into their curriculum plans because it’s now AP. That designator matters. Does it matter enough to draw more teachers into professional development, to get more schools to hire CS teachers? I’m optimistic, but I share the Gas Station concern.
We should also be clear that there really isn’t a single “CS:Principles” course yet. There have been several pilots, and some assessment questions tested, but there is no well-defined curriculum yet and no exemplar test. I have exactly the same question as Gas Station:
The new CSP exam is not supposed to be so language-dependent, which may allow for better pedagogy. Of course, I’m curious how the exam will be written to be language-independent, and whether it will be able to make any meaningful measurements of what the students have learned.
The plan is to use a portfolio approach, like what’s being used in art AP exams now. I really don’t know if it’ll work. I trust that the people working on it, but do see it as an unsolved problem.
I don’t share the Gas Station concern about “Gresham’s Law for pedagogy” (which I’d not heard of previously):
I suspect that the easier AP CSP will replace AP CS A at many high schools, and that CS A will disappear the way that CS AB did in May 2009 (Gresham’s Law for pedagogy: easier courses drive out harder ones). Whether this is a good or bad outcome depends on how good the AP CSP course turns out to be.
The fact that there already are CS:P-like courses on many campuses, co-existing with CS1’s (intro CS for majors) is evidence that easier courses don’t always drive out harder ones. On our campus, we offer three CS1’s. The MediaComp course would probably be easier for Engineering students than the challenging MATLAB-based on that they currently require, but the Engineering faculty have not been eager to swap it out. The existence of “Physics for Poets” and Calculus aimed at different kinds of students is more evidence that Gresham’s Law doesn’t always hold for classes.
There are lots of challenges to CS:P. AP CS Level A is doing better these days, and I’m glad for that. I want both to succeed. I want a lot of CS in lots high schools. Will the new AP CS:P lead to more CS majors and more people in computing careers? I don’t know — I think so, but I’m not really worried about it. I believe in “computing for everyone” and that lots of people (even non-IT professionals) need to know more about computer science, so having more access to computing education in more schools is a positive end-goal for me.
My colleagues at CAITE sent me a PDF of the whole article, since you can only get the lead paragraph at the Boston Globe site. It’s good news!
Executives from Google Inc., Microsoft Corp., and other leading firms want to require all Massachusetts public schools to teach computer science, so local tech companies don’t have to rely on foreign workers to fill future programming and engineering jobs.
A nice piece making the argument that we can’t fix the computing employment shortage without diversifying our labor pool.
I found this quote (further along from the quote and link below): ”Geeks often have a hostile relationship to formal education. Rather than sit through a pre-programmed curriculum with problems and solutions laid out in advance, geeks like to tinker and hack to solve new problems and innovate.” If that’s true (and I believe it is), why are geeks advancing MOOCs, which are as formal and pre-programmed as you can get?
Despite a deserved reputation for progressiveness, the tech sector is highly exclusionary to those who don’t fit the geek stereotype–and this tendency is getting worse, especially in Silicon Valley. You might have heard, based on 2011 numbers, that only 25 percent of the U.S. high tech workforce is female, and the percentages have been in steady decline since the nineties. The numbers for minority women are even more dismal. Hispanic women represent 1 percent of the high tech workforce, and African-American women don’t fare much better, at 3 percent. The better the jobs, the lower the proportions are of women and non-Asian minorities. Despite the diversity of the population of the region, Silicon Valley, which boasts the highest salaries among tech regions, fares much worse than the national numbers.
It’s an interesting idea, that 8 year olds should be coding, but I don’t buy this argument. Computing will be everywhere, and new jobs will be created that need computing. But doesn’t it really mean that 8 year olds should be taught job skills? Will they remember those job skills by the time they hit the job market? What can we teach an 8 year old in computing that will still be relevant 9 years later? I do buy the importance of influencing students’ opinions and dreams early on.
Vedati, on the other hand, is planning for the long term by working with kids much younger, much earlier, trying to educate them about those options when they still have years to form opinions and create and live their own dreams.
“If you close your eyes and think about the world 10 years from now, it will be completely different,” Vedati said.
“Kids will have computing everywhere. Doctors will be using computing to make decisions. Jobs will require more technology. … The new jobs that will be created won’t be just programming jobs. But can you think about organizing data? Information and computation is coming to every field.”
And that, dear readers, is why your eight-year-old should be coding.
Hot topic these days, like the debate in the UK. Workshop to be held in conjunction with ASEE in Atlanta June 26-28.
A primary objective of undergraduate computing and engineering programs is to prepare graduates for professional practice. New graduates often find themselves working on large, complex systems that require dozens (or hundreds) of people and months (or years) to complete. Unfortunately, graduates often feel ill-prepared to work on systems of such size and complexity. Educators find it extremely difficult to provide a realistic experience with such systems in an academic environment.
Engineering and computing curricula primarily rely on a senior design course (one or two semesters in length) to teach professional practice. Students are typically organized in project teams to develop a realistic product or service, in which the students engage in various professional practices: such as project management, requirements analysis and modeling, highlevel and detailed design, implementation or simulation, quality assurance, project reporting, and use of appropriate engineering tools and methods.
I find the result dubious, because they took only starting salaries as the comparison point. Do the following years leave those with shallower education “stuck in the shallow end”? But the point quoted below is clearly right — we need to know more about the downstream salaries. I’m not sure that we don’t have the data to answer the question. Aren’t there salary surveys in the Tech industry all the time? Doesn’t the BLS know about salaries?
The College Measures study makes the case for looking at the short-term gain. It found that, one year after graduation, those with two-year technical degrees earned, on average, more than $50,000, about $11,000 more than graduates with bachelor’s degrees. And compared with graduates of two-year colleges who had focused on academic subjects, those with technical degrees were making about $30,000 more.
Those who went on to receive master’s degrees earned, on average, $63,340, or $24,000 more than the median first-year earnings of those who stopped with a bachelor’s degree.
Mark Schneider, president of College Measures and a vice president of the American Institutes for Research, acknowledged in an interview on Thursday that the salary someone makes one year after graduation doesn’t necessarily reflect a person’s lifetime earnings potential. Many educators point out that, with rapidly changing work-force needs, students who complete narrowly focused technical degrees or certificates might land lucrative jobs right away but struggle to move on if those jobs dry up.
“We’ve all heard about the philosophy majors who start out as baristas at Starbucks and go on to become barristers, and the person with a technical degree who’s going to be replaced by robots,” Mr. Schneider said. But when it comes to tracking salaries 10 years down the road, “the truth is, we don’t know.”
Nice interview with Ed Lazowska of U-W in Science about the state of computer science education and research. The below section is getting picked up elsewhere as an argument for CS as a great choice for students interested in a career in science.
I would have to say “about right.” Ph.D. production in computer science is far lower than in fields with far fewer employment opportunities. And Ph.D.s in computer science have a broad range of employment opportunities that take full advantage of their training. In most other STEM [science, technology, engineering, and mathematics] fields, the vast majority of graduates at all levels take jobs unrelated to their field of study. In computer science, the opposite is true: The vast majority of graduates at all levels take jobs that are in their “sweet spot.” Google hires roughly the same number of graduate students as undergraduate students from the University of Washington. Microsoft also hires a large number of our best Ph.D. students, both for Microsoft Research [MSR] and for the development organization.
I do think we need to be cautious. We need to avoid the overproduction—and, honestly, exploitation—that characterizes other fields. Hopefully we’ll be smart enough to learn from their behavior.