(continued from previous page)
would meet the winners of the programming contest? Wouldn't that be a nice place? Wouldn't that be a better world?
That's a good point.
Patterson: So I think a sense of national pride (influences how different schools perform in the contest). Some of it is a sense of laziness. We've always dominated the software industry, the computer industry. The United States has always dominated it. 'Why do we care how some amateur contest turns out. We know we're the best in the world at this, so where's the problem?' I think there's some of that.
Filtering it down to the level of the colleges, they may not be pushing it much?
Patterson: Yeah. So, I think the question would be, what would it take for us to do well? Suppose this was seen as something that deserved more attention. It does in some sense measure us against how good the rest of the world is at these things. Would more-focused attention bring the United States higher up in this competition? And is it a simple thing or are they teaching differently? (Are) these other countries teaching more effectively?
I know as a faculty member I was kind of struck that at least the titles of the courses are the same as when I was an undergraduate student. I took a compiler course. Berkeley teaches a compiler course, you know, 30 years later...Are they actually teaching things in different ways in these other countries? Are they being more successful that way?
The other thing that's happening, absolutely, is a decision in these countries to increase their research funding in information technology. They are fairly significant increases, even in countries that don't have a lot of money. They decided that this is a good bet for some of reasons I said--it's nonpolluting, not capital intensive, 'we're the type of people who would do well at that.'
And this gets down into the colleges?
Patterson: Yeah. I graduated from a big public university and I've spent my life in a big public university. I believe in the big public universities. And part of the big public universities' model is you are able to attract pretty successful faculty, pretty successful people who could be doing a lot of things in part because there's this research side of it as well. So if these faculty are pushing the state of that research, those ideas get into classrooms. And those ideas improve the content of these courses.
So, If I'm getting you right, you're looking at this contest result as possibly a reflection of this symptom of flat or declining funding of research, and that may be not energizing the curriculum or energizing the schools.
Patterson: Yeah. That kind of goes together. The computing industry is doing less research than they used to. I think over my career what's happened is the computing industry has really driven up performance and prices down. It squeezed the margins out of almost everything...It's amazing what we're doing. But we've concentrated so much in removing margin out of everything that there's not the money around that there used to be to be able to do the research--that funded the Bell Labs and the Xerox PARCs in the past.
And then with cutting back on research funding from the government--if both those things are cut back, there's not as many vehicles for pushing the IT research as there was 20 and 30 years ago. I think (the U.S. schools' contest showing) fits in that context.
Do you think that, partly as a result of (the research funding situation), the field isn't attracting the best and brightest? Or as many of the best and brightest as it did?
Patterson: In the last couple of years, the echoes of the dot-com bust and then this outsourcing stuff has really affected high school seniors' decisions. ACM is working on a study of outsourcing. I don't think the reality is as bad as people imagine. People think, 'Look at our wage scale; look at the weight scales of some of these other countries--it's impossible for the U.S. to compete.' I don't think it's true. I think the reality won't be as dire as people are deciding on their own. But right now in the United States it's affecting what people are choosing to major in.
For me at the very height (of the Internet boom), it wasn't such a wonderful thing. We had people taking computer science courses, and they didn't like computer science...There were people who were just doing it for the money. I was just happy for those people to major in something else--become pre-meds or whatever they do.
So some downsizing is fine. But I'm worried right now whether it's actually worse than that, that people are thinking IT--because of their fears of the outsourcing--won't be a factor. And to me it's, 'Boy, we're only 50 years into this field, and the opportunities in this century are just astounding: all the things we didn't do right plus all the new opportunities. It's going to be an exciting field.'
Bill Gates gives a talk like that. I don't know how often I agree with Bill Gates, but I absolutely I appreciate him doing that.
64 comments
Join the conversation! Add your comment
The primary reason for this lack of interest on my part and probably a number of others is the lack of advances in coding. The article's expert admits that colleges and universities are still teaching the same courses from 30 years ago, and that is the biggest roadblock in my view. Computing technology has eveolved dramatically from where it was 25 years ago, yet we are still using C++ and similar languages of that period to create today's software solutions. The software industry as a whole is so change resistant and introverted that a software version of Moore's Law could never work. We take machines with phenominal capability and saddle them with bloated code based on principles developed a quarter century ago. Object-oriented design doesn't go far enough, the developer toolkits are efficient enough, and there is not enough research or incentive to more programming to the next level. Until then, you'll have trained "programmers" like myself who really don't care to write C++ or (god help me) COBOL apps all day doing analysis and other IT roles.
Most software on the other hand, is a unique solution to a unique set of requirements, so it's impossible to get the same effect.
Keep in mind that digital hardware was used prior to the invention of the microprocessor to do the sorts of things that software does now.
The use of software greatly expanded our ability to solve complex problems and produce products at a resonable cost.
Despite all the talk about the lack of discpline in software vs. engineering, we would be far behind where we are now if we relied on hardware alone.
Seriously, though--it's time for government to step up to the plate.
-JDM
It's not like programming is a field where you need the resources of a big aerospace defense contractor to get new ideas off the ground. So if you think there's a lack of innovation, well, innovate.
Like it or not, programming is not only permanantly linked to math, it is built on it.
Programming contests are misnamed, they are problem solving contests. For better or worse, they don't judge programs on their efficiency(to point a they do, but the fastest executing code, won't get you any points), how well written they are, or how secure they are. You certainly would not want to use contest code in a project, but that is not the point of the contests.
The point of them is how well you and your team can problem solve, come up with a workable algorithm and type it out in the shortest time possible.
I love programming contests and participate in them at least 3 times a year. They stretch your anaytical thinking, and in the long run makes you a better programmer.
The fact is, in most programming jobs in this country, you do very little algorithmic work. Most programmers do database access, user interfaces (desktop or web), business logic, things like that. Knowing how to build compilers or even implement A* is stuff most working programmers will rarely (if ever) use.
As long as this continues to be the case (and I don't see it changing anytime soon), I expect we'll keep turning out programmers more focused on the skills they will actually use in the job market than on serious Computer Science.
What we need now are "innovators" and "entrepreneurs"--not "negative, neo-communist, cushy-job-seeking cry-babies". We need people who can accept a challenge and prevail, not people who can explain in great detail why everything is impossible all of the time.
Sincerely,
JD MacDonald
I won't be able to escort you out on your last day. There us a management off site in Vale for the week. So you'll have to show yourself to the door that day. Just drop you ID badge on the empty receptionist's desk on your way out.
Other positions available? Why, no. There are no other positions available at the current time. But we'll keep your updated resume on file just in case something comes up and we need you for some reason.
These people exist irrespective of countries' borders and will continue to benefit people all over the world. These people have made and will make a much bigger impact than the notion that we should improve the general programming abilities of people who took received a computer science degree because "I heard it was a stable paycheck" and little else. Guess not, that no longer holds true.
-M
PS: CS graduate (1991)
The people who got into IT because they were expecting a cushy job and/or a fat paycheck were misinformed. Now they'll either have to change their approach...or get out.
-JDM
-JDM
(*In my experience, less talented people with the proper drive to succeed consistently achieve more than very talented people with no motivation.)
-JDM
I'm saved. Now I know I should be admired by millions. Girls should be falling at my feet. Even my in-laws should admire my unfailing, incisive wit that keeps them constantly 'irritated'.
Yup. I see it now, 'PutDownPete' for President.
I have worked in the I-T field for well near 20 years now; I started out as a programmer. And believe me, it hasn't gotten me dates. I don't think I've ever heard the masses say, "You work with computers? I really admire that."
falling behind many other countries in math, science, reading,
and general problem solving. So the result of the ACM contest is
to be expected.
The recent PISA study of 15 year olds' problem solving abilities
placed the U.S significantly below average of the other 40
countries involved. The study showed the majority of US
students could only handle problem solving at the basic level,
with only about 10% capable of handling level 3 (proficient)
problems. 30% of the top countries' kids could handle level 3
problems.
The problem should not be seen as needing to educate kids in
some skill area (such a programming), but in the general
rigorous education at the grade, middle and high schools.
Political Correctness has taken persistence and self-reliance out of our kids, and deferring to people in authority roles into them. I see it in mine everyday, and I cringe and try and force them to solve some of their own problems. To make them stand up on their own feet for their own ideas and rights.
At the same time, some business leaders are imploring more students to enroll into programming and technical classes out of one side of their mouths, while at the same time they want increases in the H1B visa program to import low cost technical resources out of the other side of their mouths.
Face it. They don't one rats behind about the technical people. All they want is their fat bonus checks and stock options.
-JDM
What do you say to a kid who's got the heart, but not the "talent"? I admit, in the 1980's, I got into computers because I knew it would be a steady paycheck and good money when I became an adult. I was also intrigued by how computers operated and had a passion for it. Today, I can't see myself doing anything else but IT. I have a love for the craft and a bonifide interest for the discipline.
I ask the question, should a mediocre kid who has the passion, but lacks the "talent" should simply choose something else? Should we totally discourage those who are interested in programming and IT yet may not have the "genes" to handle it?
I am a propent for those who love the craft, love to develop solutions, and have an overall drive and enthusiasm for computers. I think all should have a chance if they really WANT it. That way, maybe the best and the brightest can come out and we can come out on top again.
-another CS grad (1992)
When I was in high school, I took an Electro-tech course. My final mark was 98%--without even trying. In my class, there was one kid who was incredibly enthusiastic about the subject--he just loved it--and his final mark was 78%. Which of us do you think eventually became a very highly paid and well-respected electrical engineer? (Hint: It wasn't me!) :p
-JDM
(*I'm highly paid and well-respected in my field now--but until I found something I really loved to do, my 98% average in school didn't mean squat. Until then, I was a classic "under-achiever".)
Don't fall for the BS that you have to work for a big company...or for anyone at all, for that matter. Entrepreneurship and "small businesses" (i.e. places where people value each other, and work and live together like a family) are the key to making any country great.
-JDM
And, do you know what else? I frequently find myself envying the high moral standards of politicians in other countries around the world. None of them lack integrity, are power hungry, or care about money. They are all just lovely human beings, with a strong desire to serve the public! ;)
-JDM
(*And they accuse me of being a "utopian"...)
I do, however, appreciate what you're trying to say.
Sincerely, JDM ;)
The president thing is just used as an example. If people doing useful things got as much "fame & fortune" as people doing things that lead to merely entertainment value, then that might help. Or like one of the other comments mentioned, the investment of 4-5 years and $40k-$100k is worth it, that ncreases the quality and quantity of programmers. I have to admit that I'm not really centered on IT, but I could run circles around most of the the IT people I've met in the companies that I have worked for, which is quite sad.
Why isn't a university from India in the top 12? India is the #1 destination for out-sourced US programming jobs.
They could be #13, 14, 15, 16, that would make some kind of sense, as they are the #1 source for out-sourced-off-shored US tech jobs. But, think about it, if it really made any sense to use ACM as a barometer, then maybe China should be the #1 destination of US IT jobs?
It would be more constructive if CNET would post an opinion that is tied to some economic reality.
Corporate America doesn't give a hoots behind about the ACM, out-sourcing is all about how many workers you can buy for your dollars. Indians are currently, (strictly because of the value of the Rupee vs. the US dollar) about 1/10 the cost of a US worker.
Our biggest economic weakness is the value of the US dollar.
Here are the top-12 in the ACM:
1st Shanghai Jiaotong University
2nd Moscow State University
3rd St. Petersburg Institute of Fine Mechanics and Optics
4th University of Waterloo
5th University of Wroclaw
rest (in order)
Fudan University
KTH - Royal Institute of Technology
Norwegian University of Science & Technology
Izhevsk State Technical University
POLITEHNICA University Bucharest
Peking University
The University of Hong Kong
Here is an simple example. Security is currently huge. Lots of money is being spent and lots of minds are cranking out proposals and papers. What if we didn't have buffer overflow problems? How many threats would go away? What is the primary mechanism that most threat use to gain priviledge escalation to install themselves in order to propagate or perform malicious activities? How long has the buffer overflow threat been solved?
CS researchers need to refocus on moving the field forward, not getting grants, building centers, etc. Those problems that move the field forward don't get lots of money or build centers because they don't translate immediately into things politicians or academic administrators understand (and can sell).
-JDM
I'm not saying that computing technology is dead. I am saying that CS research is focused on short-term profit, not long-term problems.
(That's what wine tasting class will do to you! Don't drink and surf.)
;) JDM
bunch of extorted or counterfeited cash into
academe.
If the tech C*Os want to see more R&D in the
field, they'd better start investing in it
instead of raiding those cash reserves to line
their own pockets.
If they want more Americans to be interested in
careers in the field, they'd better start showing
that they're willing to hire and develop
employees for life-time careers, instead of
treating them as disposables, engaging in age
discrimination, and expending so much effort and
cash on scams to depress compensation or dodge
compensation obligations.
And, for some of these tech firms, it would help
if a few more of their projects were ethical. I
mean, why would any honest person want to be
involved with privacy invasion and violation
schemes like RFID or CRM?
Lastly, I've always had the impressions that
these programming contests were a bit silly. The
best programmers I knew in college were not the
ones who entered these contests. We were all far
more interested in and busy pushing the envelope
in our parts of the real world in under-paid
programming jobs at the university and outside
academe.
If they really want more programmers, they should
recruiting at more than a tiny fraction of
American colleges and universities, they should
be interviewing a higher percentage of new-grad
and experienced unemployed Americans, hiring a
higher percentage of those interviewed, providing
more new-hire and on-going education and training
to their employees, and investing more of their
own R&D money in the USA.