Johnny Can So Program
theodp writes "In Johnny Can So Program, CS Prof Norm Matloff calls BS on CNET stories like Can Johnny Still Program? and Can the U.S. Still Compete?, saying it's a shame that CNET fails to cover the real threat to American technological competitiveness, the hidden agendas of Chicken Littles like Jim Foley of the Computing Research Association, David Patterson of the ACM and former Intel CEO Craig Barrett, all of whose organizations have a vested interest in playing the education card."
Chicken Little: The sky is falling!
I taught a computer class for a large group of home school students and private school kids this year. They were, at the beginning, interested in learning to program. However, when it came down to actually doing it, and learning to code, they all, except for one, said "We're just more interested in playing games." The sad part about this is that some of the parents were just fine with that as long as they did their other work.
I'm not a troll, but I play one on Slashdot.
The US education problems are not in computer science, but in the general level of education in history, geography and world affairs ourside of local US issues and what Fox and similar "News" organizations deem rating-worthy.
As evidenced by the varied computer-related programming on MTV:
Real Programming
Code Rules
Cyberpunked
etc
It's obvious that kids today have a healthy interest in computer programming.
I'm a big tall mofo.
Its interesting that everytime I read anything about H1B or offshore outsourcing or tech labor shortage etc., the authors never seem to cover all the bases. Does anyone know of links to good information that covers all, or at least most, of the known relevant facts surrounding this issue in the U.S.?
Support NYCountryLawyer RIAA vs People
Will slashdot help to identify responsible, long-term thinking candidates/policies, or does the second word of this sentence inform its answer?
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
can he carry a gun and KILL!!!
whoops, wrong country...
...go read the article! The author has hit the nail on the head about H1-Bs and outsourcing. He never stoops to blaming Indians for either issue, but rather points out that it's a side effect of corporations and universities trying to build tiny little empires. Then in the same breath, he points out how this sort of empire building is slowly leading the higher education system into ruins and dragging all of America's great talent with it!
I think I need to print this one out and post it somewhere...
Javascript + Nintendo DSi = DSiCade
Why people with hidden agendas would be pushing education, if they aren't going to gain any benefit from the education they are pushing.
I can understand these same people wanting the Visa cap raised ( cheap labour, onshore ), but the increased focus on education doesn't fit. Why would they want that? If they are just going to be hiring visa'd employees, why would they want to increase the number of capable usa workers?
It makes no sense.
Mod me down with all of your hatred and your journey towards the dark side will be complete!
I just love seeing stories where business leaders "fret" over the lack of education in science and technology in this country today.
Of course, then they go and layoff large numbers of technical workers and send their jobs to another country. The message is getting through loud and clear to the younger generations in this country. All the while the business leaders are lamenting the education available here they are shouting at the top of their lungs by their businsess practices - "WHY THE HELL ARE YOU GOING INTO SCIENCE AND TECHNOLOGY, WE DON'T HIRE THOSE KIND OF PEOPLE HERE!!!!"
The kids get it. As the one article states programming isn't glamorous like football. But, even more the kids going to college now look at business and see no need for technical people, because they're sending it all away.
Kids are smarter than people think, they see the writing on the wall. Why go to school for 4-5 years only to find a job market with no room for you. So all the best and brightest kids end up going to law school, which is in and of itself a terrifying thought.
We need more women in CS... Seems like when I went to school 5 years ago, the male:female ratio in CS classes was something like 99:1. We were all very depressed males. If society could somehow be more accepting of women in CS then all us CS guys wouldn't be as depressed/apathetic in college. It/s a win/win situation. It might even attract more guys to CS... The real question is - how? How do we get more women to go into science/computer science?
--
http://unk1911.blogspot.com/
FOX News has been popular for 2 years tops. You're blaming the U.S. education problem on them?
What an idiot.
For Johnny is no more,
For what he thought was H2O,
Was H2SO4.
If only he had gone into CS instead of Chem...
If brevity is the soul of wit, then how does one explain Twitter?
There is a proliferation of what I call "cute" blog style linking. Like the chicken little link. "Chicken Little" has transcended the name of a literary work and has become a cultural meme to express an over-zealous pessimist, but what does the article do? Links to the literary work. Look, if someone doesnt know what you mean by saying "chicken little" linking to the book is not going to do any good. Cute.
I skimmed TFA - it's a list of excuses basically. Valid excuses or not - who cares? The only fact I see is that if you live in Elbonia then becoming a programmer may look like a (relatively) good career. If you know that by going managerial or even clerk-like route you'll get a decent living for you and your family (with "programming" whatever that means, as a spare-time hobby if you wish so) then you must be pretty wicked to want to become a "professional" programmer.
I mean - you are going to sacrifice a huge deal of your leisure time, social life etc while studying myriads of brain-dead and not-so-brain-dead-but-still technologies like C++/C#/Java/SOAP/RDBMS/etc/etc/etc only to gain a privilege to be regularly called a "moron" by your boss. WTF? If there are still good programmers in the US - they are probably not studying in universities, because what can they learn there?
...are just as threatened by new technology as deep/wide music and movie distribution. There are whole industries of accreditation and many pensions of teachers threatened. The internet allows anyone to do research and does nothing to stop anyone from "just doing it" without waiting on degrees and accreditation. You can go directly from provider of information and services to the paying industry without going through all that crap. Many of us have made great livings without going the college route. Self-study and building a network of customers you have proven yourself to is all one needs. The educational-industrial complex hates this.
while we think its our divine right to be No.1, a Chinese individual who doesn't have that perception just works a lot harder than your average American, add to that the sense of having to achieve and beat the No.1 and you get a will that is tougher than steel to win this thing (and any other situation)
We are "Slipping" because we got too comfy in our No.1 spot; not because our education is worse. Its human nature.
Executives want more cheap labor and are doing everything they can to get it. Labor wants higher and higher salaries, particularly if they feel the barriers to entry in their career are high. People are fighting it out, spin doctors are out in force.
I don't know what the right answer is, but it seems to me H1-Bs are far, far better than wholesale outsourcing. My favorite form of this is my own companies current push to hire employees and open it's own design centers in Singapore, Shang-hai, Bangalore and Taiwan. This way they get full benefits of Asian labor, without pesky contracting problems, yet get to live in mansions in the nicer parts of the US.
But Norm's article was good, I just think no one is going to listen to him that doesn't already understand the problem.
I have been in the U.S for the last six years. Right from the beginning I was surprised to find the constant barrage of sports over everything else (only outdone by Terrorism and Elections) in this country. Here parents pray their kids end up on the school/college football teams for both bragging rights as well as the potential for a lot of moolah in the future (mostly I think its bragging rights). Jocks get limelighted every step, every game, gets the hotter looking babe and scrapes through academics yet has no trouble getting in to college due to his sports background. The science nerds barely gets any mention in school over their accomplishment and rarely gets highlighted among their community or in the media. Almost never. Yet they positively contribute to the country and get sucked in to the same cycle, hoping their kids turn in to football players and get the girls they could only dream of.
Where I am from: Literacy is 100%. Sports hour or P.T is a one hour drill where the students are herded for rigorous exercises, which happens thankfully only once a week. At the school level, there is hardly any sports events, mostly it is to do with academics, science shows, arts and cultural events, literature events. Sports is mainly soccer or cricket and is indulged in during the lunch hour or afterschool. No sponsors, no parents wishing their kid would become the next star. Infact, if some kid grabs his gear and heads off to the local soccer ground during study hour, he is likely to play alone.
Academics comes first and foremost. Infact, I used to wish it were different, but not anymore. And on the state and regional level, those who pass the Secondary School exam (10th grade) with rank (ranks 1 - 15 on state level) are rewarded by the State Govt. Same goes for National Level.
I see none of that in the U.S. I see undue importance being given to Sports, and little given to academics. I see MVP's regarded as Gods while the ones who transparently contributed +vely to the society languish in anonymity.
Rapid Nirvana
As long as they get thier check, they don't care how many unemployed programmers they pump out.
Free Mac Mini Yeah, it's
But Johnny might not be able to speak the King's English and that might prevent him from getting the job. I know the US fought a war to get out from under the thumb of the King. I know Slashdot is a casual place filled with cool guys who have their street credibility to consider. But too much slang can get in the way of the message.
Gee, even more evidence of the "ME Generation" screwing those younger than them.
With US real wages fall at fastest rate in 14 years and unemployment for engineers above the national average it remains an outrage the the richest Americans are calling for lower pay for American workers and targeting tech workers for special competition from non-immigrant guest workers.
So sayeth the man whose site consists of an infinite domain name.
.com.com.com.com.com +infinity."
Johnny: "Wait up, I'll just make up a site called
If there is an infinite domain name does that make the subset links to porn and gadgets infinite too? I could be stuck on the net forever.
I have seen some god-awful code out of domestic individuals. (I have even had the pleasure of writting some.) But my experience with outsourced source is that the quality is as dictated. If you include a coding standard as part of an acceptance criteria it will be adhered too. Its just important to take the time to qualify what is good code for your application.
FTFA :
News.com didn't tell you that the number of teams competing has grown nearly sevenfold from 1994 through 2005. In other words, for a team to finish at, say, third place, in 1994 would be equivalent to finishing 21st this year.
Yeah. It seems he's confusing rank with notation scale. Like if the skills of both the first and the last didn't change.
Norm Matloff, Computer science professor
When professors are making that poor argumentation, no wonder education level is falling.
I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
" Programming is an inate ability. You either have it or you don't."
...
BS.
Programming skill is dependent on practice. Just like music or Morse code.
Some folks require less practice in some endeavours and more in others.
Humans only have a few 'innate' abilities.
Hunting for a nipple.
Unconscious organization.
Movement, hearing, sight,
Hmmm...I view it this way - progamming is nothing but you telling a machine what to do and how to do it. Concept is very similar to natural language. You were not born with an inate ability to speak English or French, you learned it. Similarly you learn to program. Of course you have to have a logical frame of mind to think like a machine. That is probably an inate ability.
Did you expect them to say, "We loved that integer thingy! We can't wait to find out what an array is!"
People learn faster and more effectively when the topic interests them. If I believed that all I ever had to look forward to was writing banking software or parsing obscure log files, I never would have lasted.
Why not modify your lesson plan to start with coding a few simple games and work your way up through that?
Is that
"Johnny can not program."
"Johnny can so program!"
Or the more hip, modern "Johnny's a great hacker, he can *so* program."
?
Computers are useless. They can only give you answers.
-- Pablo Picasso
Matloff is an American hero who will no doubt be honored in the distant future. Whereas Bush, Clinton and 90% of Congress and the rest of the globalizers who sent our jobs overseas and who import cheap scab labor are traitors who ought to be tried for High Treason in a court of law.
eat shiat and bark at the moon
What no one ever mentions is that not every programmer is "gifted." Those C.S. students that aren't gifted are paying full tuition and supporting gifted students. But without jobs (read offshore) there is no reason to get an education in C.S., especially if your not gifted.
Without students, a university department is not necessary. We can close it down.
Without university programs, we don't need to or can't compete in contests like this or, for that matter, in I.T.
I agree with Norm that we can still program in the U.S., I just don;t know for how long.
The problem with the US now, is that we're exporting all of our technical and manufacturing capabilities overseas and shifting the US work force to lower skilled service positions. This has long range implications. Suppose that we enter a period like we did in WWII where we require an significant jump in our manufacturing and technical output. It won't be there. It will be in places like China. And building that capabability in the short-term won't be an option because we'd be lacking the necessary industrial expertise. (Where the jobs go, so does the skills to fill them.)
We're shooting ourselves in the foot by shifting our technical and industrial base out of the country. Those two areas are what have made the US the super power it is today.
When all else fails, run.
Johnny's pissed off. He's leaving the industry and starting a web site to sell women's panties. He'll show them.
This signature has Super Cow Powers
Why should Johnny bother to learn to program when he can't make a living doing it?
Seastead this.
Yup, High School is like that; but don't think that all of American society is like that. For college, I ended up going to a very good high tech university and the problem switched to "What sucks is the lack of women"
I think the disposition of young people, in high school or college, is quite different than it is in the rest of the world, or, at least the developing parts of it.
Obviously this doesn't apply to everyone, but a lot of American children are handed their lives on a silver platter. We seem to be a nation of slackers sometimes, and since we are already probably the richest nation in the world, children in school aren't thinking so much about their education as they are, say, thinking about where they're going to get drunk that weekend.
In contrast, an Idian high school student may see school as his only chance to escape a higher-rate of poverty. Personally I think that this is the reason that the tech industry has boomed so much over there. This will continue until they have gotten good and rich off of it, then they'll relax, and there will be editorials about other nations threatening to out-tech THEM.
Do you know what foreign grad students at UC Davis think of this particular gentleman? I have many close friends who are either masters or doctoral students in EE & CS at UC Davis. They tell me no foreign stundent wants him to be their advisor or they want him to be on their committee. The popular perception there is that he sometimes comes off as prejudiced, especially towards Chinese & Indian students. It is not that he says or does things which can automatically be seen.. But he deals with foreign grad students with a sense of superiority & condescending attitude for them.
/.
Maybe my friends are wrong. Maybe he's not like that. But why don't you ask some foreign student in the university of their opinion on him? I know I'll be marked as a troll as it goes against the popular perception on
I don't know about you, but I no idea what this guy is saying.
I saw this outside a graduation ceremony in Massachusetts. "Will Code for Food."
i think you meant chem instead of cs, no?
"Our interests are to see if we can't scale it up to something more exciting," he said.
Johnny can program, but he can't read or write a lick. In my spare time (/sarcasm) I teach high school history. Reading their papers is like dentistry sans novicaine. Trust me on this, if they can't program, or for that matter, graduate high school thinking a cd-rom is the drink holder, they'll be okay. If they graduate and read and write at their present level, we're doomed.
My problem? I was perfectly gruntled, until some numbnuts came by and dissed me.
[]the number of teams competing has grown nearly sevenfold from 1994 through 2005. In other words, for a team to finish at, say, third place, in 1994 would be equivalent to finishing 21st this year.
Coincidentally, I was a member of the team that finished third in 1982. I guess we'd be lucky to qualify today. I think I'll sulk all day....
Have you read my blog lately?
C'mon editors, when someone drops a hyperlink to the story of Chicken Little on Amazon in an article submission, use a little editorial license and snip it. Its just silly.
I want to delete my account but Slashdot doesn't allow it.
Really, there are kids who can code. Most, however, will use the computer for entertainment. Not everyone can be a rocket scientist. It is probably viewed as most distressing on a site like slashdot because for the most part, this is a computing-centric group. We want to see "our kind" doing what we're good at. Things like programming apps, writing innovative code and not getting laid. Someone has to go to the future when we are old and our code is creaky.
I think though, this is no different than the notion that not all kids are good at math. A lot aren't, but you don't get quite the same reaction when scores are released show US kids faltering there. We're used to that now, but computing was supposed to be "our game".
As far as the rest of the world catching up, there is no stopping that. Will the US dry up as a source of good code? Unlikely, but expect to see some very sharp stuff coming out in the rest of the world. Don't be threatened by it. Frankly, it is getting wearisome to see that every time another nation puts up something great, the US reaction is peppered with a goodly amount of paranoia.
he looks exactly like Spock.... Spock: http://www.rgj.com/news/files/2005/01/11/61802_250 .jpg
Professor Matloff: http://i.i.com.com/cnwk.1d/i/ne/mugs/lg/lg_matloff _n.jpg
freaky
(and isn't Davis all aggies anyway?)
From the article:
"News.com didn't tell you that the number of teams competing has grown nearly sevenfold from 1994 through 2005. In other words, for a team to finish at, say, third place, in 1994 would be equivalent to finishing 21st this year. So a hypothetical team that News.com would have lauded in 1994 would now be dismissed as having badly "slipped" in 2005, even though it would be of the same quality."
From this I guess the author means that it's OK to be at the same level they were eight years ago. It doesn't matter that the American teams didn't improve at the same rate at the rest of the world. And in his statistical argument he ignores that although team numbers might have increased so did the number of American teams.
Next comes my absolute favorite argument:
"Long before Olympic athletes from all countries became quasiprofessionals, the Eastern European countries were seeing to it that training for the Games was their athletes' full-time job, giving them a major advantage over other nations' athletes."
OMG, it's not fair, they trained harder! Well hello! Is it cheating to produce programmers who can actually solve problems and write code? What exactly is coursework for if it isn't preparation for the kinds of problems you solve in programming contests? I've done a couple - it's the same thing, you just have to be faster and more accurate, compared to a programming assignment.
"the hidden agenda behind the shrill shortage claims was to push Congress to increase the yearly cap on the H-1B work visa program, which enabled industry to import cut-rate engineers from abroad."
I was a H1-B worker - I made great rates (thanks very much) and so did all the other H1-B's I know. It's convenient for Norm's flawed argument to repeat this myth, propagated by programmers who think they should have had my job because it was their birthright, not because they could have done it better.
"How can American engineers compete with cheap, imported labor?"
Too much time in academia Norm. If you can't do the job right it really doesn't matter how cheap you come. The way to compete is to be the best, there is no other way. Shopping for programmers is not like shopping for socks. Remember, computer-related thingys are digital. At the end of the day it is usually pretty obvious whether they work or do not work. "Almost works" is not good enough for anyone, except perhaps a professor who grades CS101 papers.
When Chinese (or Indian, or anyone else) programmers turn out to cost less AND be better programmers we'll be able to thank guys like Norm, who wanted to deny there was ever a problem.
What's Norm's issue with devoting more to education - is it just that he wants to be able to say "It wasn't MY fault?"
It's a serious problem. I now do cross-border technology transfers, and much of the US commercial technologies I get to assess are almost trivially irrelevant to the rest of the planet, because the US has no idea what is going on outside its own borders. China will sweep it aside in the next 3 decades, and the US will become a strange sports-mad backwater.
Rappers have not helped in this for they even sing (in their songs) things like..."I live a good life, have millions in de bank...and have no degree..."..."So tell me skipping school was a bad decision..."! Youngsters listen to this and believe that they too, can make it without taking school serious.
Parents too, are busy, for they now need two or more jobs just to get by! In societies where these gadgets are missing, kids are doing wonders. I once taught some eleven kids from Africa where I thought things were so bad. I was supprised at how these kids solved maths and chemistry problems. The only issue they had was trouble understanding my accent. But this is understandable, and was solved in 2 months.
Instead of carrying cellphones and gameboys in their back-packs, these kids would simply meditate on how to solve problems in homework on their way home. They were just different in a good was as compared to their American counterparts.
It's not the geezers picking on the kids. In fact, those between 30 and 50 are ones getting really screwed. Engineers who want a family life and a career are getting replace by guest workers and being outsourced.
It is class warfare: the wealthy are using special laws to target middle class engineers for special competition.
Only migrant farm workers face the same competition. Notice that lawyers and doctors dont face the same competition; though arguably we'd be better off with cheaper, dedicated legal and medical services than we would by better computer programs.
Everyone wants cheap stuff. No one wants to pay through the nose for a hamburger, a bar of soap, a piece of software, health insurance, phone service etc...
What so few people seem to understand is that each and every area of business you deal with in your day-to-day life requires an IT infrastructure of some sort. Yes, even Burger King needs it. Many companies have unique needs that others don't, so they have to develop their own systems and tools on their own. This costs money.
Now, most people here are employed (or were employed) doing coding, networks, web pages or whatever. We all also know what our salary expectations are. We see ourselves as a valuble resource to a company providing expert services and as such deserve a correspondingly higher pay rate. We think we deserve good money. Whether we do or not is another issue that's beyond the scope of my point.
So all these companies have to hire and maintain a fairly sizable IT staff. Coders, network guys, helpdesk monkeys etc... We expect fairly high salaries. So the cost to these companies to run what is pretty much a support layer to their business gets pretty high.
Where do high running costs go? To the product prices. How many here would be willing to spend $10 for a burger? How many would double what they pay for health insurance? Would you be willing to see a jump in average prices? Then you'd want a higher salary to maintain your own margin over cost. The whole thing starts to spiral out of control.
It's the same problem people have with WalMart. We want high-paying jobs with good benefits to stay here, we want everyone to be paid a better wage, but we don't want to pay one cent more at the store, the pump or at a restaurant.
We can't have our cake and eat it too.
Moderators, please pay attention.
and would just like to add that surely the best people to write games, or any other application, are those that have used a lot previously.
I've not 'created' a lot, but where I have it's usually when I've seen what there was and decided I could do better myself.
The dollar is overvalued, foreign goods and labour are cheaper, shit happens. It's devaluing again.
It's funny how the real issue never crosses people's minds.
Another one got caught today, it's all over the papers. "Teenager
Arrested in Computer Crime Scandal", "Hacker Arrested after Bank Tampering"...Damn kids. They're all alike.
But did you, in your three-piece psychology and 1950's technobrain,
ever take a look behind the eyes of the hacker? Did you ever wonder what
made him tick, what forces shaped him, what may have molded him?
I am a hacker, enter my world...
Mine is a world that begins with school... I'm smarter than most of
the other kids, this crap they teach us bores me...
Damn underachiever. They're all alike.
"CNET fails to cover the real threat to American technological competitiveness, the hidden agendas of Chicken Littles like Jim Foley of the Computing Research Association, David Patterson of the ACM and former Intel CEO Craig Barrett, all of whose organizations have a vested interest in playing the education card."
So...improving our education system is a threat?
I heartily disagree. First, let me say that I believe that American universities still have the best CIS programs in the world (evidenced by the fact that the best programmers come to US universities to study). The problem is that they are not populated by US students as much as they have been in the past. So this guy says "Big Deal, we're still pretty good".
If you want to have a mediocre economy and way of life, maybe it isn't a big deal. We can just sit back and let our CIS and other science programs fester; We'll become a nation of bullsht psychology and history majors- "Idea People" who can't really do anything but form abstract opinions about other people's abstract opinions..
But wait...maybe I'm jumping the gun here...
Maybe we should strive for something a little bit more than just mediocrity...Maybe we don't need 20 history BAs for every science degree in this country. Maybe..just maybe..We should try to embrace the spirit of hard work (yes CIS is a little bit harder than most of the "High-school" degrees our universities pass out these days) and ingenuity that made us a leader on the world stage.
Programming is not an end in itself, but it does appeal to our fascination with winding things up and watching them go. To attract young people to programming, you have to find the right hook, whether it's a game, a robot, or a cool applet on a web page.
Did you ever sit down to write a program without considering what problem you were trying to solve? For that matter, we don't say, "I'm going to write a letter" without having an addressee and probably a topic in mind.
I first got interested in programming because my TRS-80 Model I (the 16K expanded version!) had a BASIC interpreter. I was 14. After "Hello, world", I think my very first program was a game, and so was my second.
It was a first person 3D maze game. I'd played them on PLATO at the University of Illinois, and the subject matter captured my attention. The programming was a means to an end. Then I got hooked on creating.
After that, I wanted to apply my new programming tool to every problem, whether it was schoolwork or figuring out which girl to ask to prom. Yeah, really. No, I didn't go.
There are many people who go to school to stucy engineering, philosophy, or graphic design and realize that what they really enjoy is creating, too. They like winding things up and watching them go. That's where you want to get people. Whether you use a game or a robot it really doesn't matter, but you can't just use programming in and of itself.
sigs, as if you care.
It seems to me that INTEL and M$ are using the 'Wookie Defense' to try to get congress to up the H1B quotas. I think H1B is a terrible program and should be abolished. We need immigrants who can offer a wide spectrum of skills, not just IT.
Please sign petition to restore sanity to our banking system!!!
http://financialpetition.org/
If he meets with the founders are some succesful startup- or other tech gurus- they will all be smarter than he.
Maybe this is why he doesn't give them an invitation to the White House.
Education system in countries like China uses one giant sieve to filter out talanted students for a programming competition. It is designed to spot the talent, throw it into rigorous traning pool, eliminate weaklings, until top dozen is left. It is not like that in US - a talented student has to express interest AND be in the right place at the right time to get into the competition.
The thing is that US system works well when there is a strong monetary reward for being the first. That's why US holds top honors in Olympic Games (sports). What's the reward for being a top, one in a million athelete? - fame, wealth, national respect. And what's the reward for being a top, one in a million programmer - well, a decent salarly, perhaps some respect from peers who are smart enough to appreciate your talent, but that's about it.
"You mortals are so obtuse." -Q
Next comes my absolute favorite argument:
"Long before Olympic athletes from all countries became quasiprofessionals, the Eastern European countries were seeing to it that training for the Games was their athletes' full-time job, giving them a major advantage over other nations' athletes."
OMG, it's not fair, they trained harder!
So it's okay for foreign goverment's to subsidize and protect their engineering industry but the US can't ????
wtf?
From TFA:
"Start with what it means statistically to perform well in this contest today. News.com didn't tell you that the number of teams competing has grown nearly sevenfold from 1994 through 2005. In other words, for a team to finish at, say, third place, in 1994 would be equivalent to finishing 21st this year. So a hypothetical team that News.com would have lauded in 1994 would now be dismissed as having badly "slipped" in 2005, even though it would be of the same quality.
He lost my interest right about here. Am I the only one who sees some sorta horrible logical fallacy here? So, statistically (I love how he uses that word), the first place team in 1994 would be 7th now, simply because six other teams are now in the competition? Seriously now, that's a horrible argument, the rest of the article notwithstanding.
I don't think that extrapolating from programming contest results to a nation's programmers' general ability to code is valid. Matloff points out excellent reasons why this doesn't work, but he pays attention mainly to statistics of the rankings and varying amount of training time.
Simply, I don't think that being good at these contests necessarily is the same at being good at producing software in industry or even research. I don't like solving problems under strict time constraints, so I've never volunteered to take part in math or programming competitions. It's simply not fun for me. I like problem solving when I'm free to take the time to explore the design space and maybe go off on tangents that might eventually prove worthwhile (but often don't). Some people enjoy solving problems under strict time constraints; I'm just not one of them. I enjoy other activities that others do not. It's just personal preference.
In the end, we always have time constraints - projects have deadlines, research papers have submission dates - but measuring the amount of time in hours vs. days, weeks or months make a very big difference in how much freedom you have to explore the problem.
Kids naturally take to things that are hard only if doing it means they can stick something in the faces of adults and authority in general. Other than that, without the motivation, they don't bother.
Who can blame them? Today's kids face amazingly difficult technology embodying a "confusing and difficult is beautiful" mindset most strongly held by the *nix community. Compare the assembly code of earlier processors to the current Intel/AMD lineup. Compare Dartmouth BASIC to PERL or even worse, C++.
Counterintuitive is not a strong enough word for the way things work now. Seriously embedded techies may look at the deeper issues and say, "but it works so much cleaner this way" but it isn't easier for the human mind to grasp it. Old structured assembly on a 6502 could be easily compared to the methods of counting with pencils and coins that kids learned in kindergarden. It was familiar. Introduce segmentation and how do you get that across? (Break half the pencils and put them in an old cigar box is not an answer.)
I know, the object oriented faithful will scream bloody murder and insist to their deaths that learning OOP first is better, but the basics of life itself aren't OOP-based. They're structured, step-by-step, and they're easier to relate to old fashioned structured programming. No language full of brackets and unexplained whatever.this.that style anything is going to be easily penetrable. Kid would first have to learn and fully grasp old style report outlining to even begin to get it. "Oh, what does hi-rarky mean?"
I have yet to see one Dummies, 24hr, etc., book that adequately tells anyone what to do step by step, why each step is being done, and help them learn the inferences regarding how they will interact with each other in a different way. The first step for kids to learn programming is for them to imitate, experiment with variations, learn why they work, etc.
Today, tech in the PC/Mac world is so inpenetrable once you get beyond the glitz, with poorly or totally undocumented everything and no rationale given as to why something does something or what forms it can take, forcing you to work to learn about something four degrees off from the simple question you wanted a simple answer to... Is it any wonder why we have a society of people who can graduate college with technical course and still not understand how to fix a simple Windows registry error or install Linux to a hard drive on a brand new computer much less write an app in any language?
Johnny can so NOT program. Not their PC, not an X-10 controller, not even their cell phone. Heck, their VCRs have to have automatic time on them or else they can't figure out how to stop them from flashing 12:00.
If my grammar and spelling are off, I am [distracted/tired/careless] (take your pick)
Sports are important in pratically every country and always get more attention then scientific achievment.
. I'm still having a hard time believing such a debate can take place in one of the worlds most advanced nations at the beginning of the 21'st century
And that is a good thing? A few decades ago national pride was measured just as much in scientific and technological achievement as it was in terms of sports. These days two teams of steroid popping gorillas fighting each other over a leather ball seem to get more attention than, say, milestones in interplanetary exploration and in my book that is a sign of intellectual degeneration. Lack of interest in Science and general intellectual apathy among the population is what allows bible thumping morons to delete evolutionary theory from the science curriculum
Only to idiots, are orders laws.
-- Henning von Tresckow
I don't think it's just an entry barrier (social stigmas, etc) getting women into CS - I think it's primarily an unappealing and unsatisfying career for women.
I base this on my own personal observations of women in the IT industry - _all_ of the ones that I've met generally hate the work. Not to say they're not good at it (they generally are), but it's just a job and they derive no personal satisfaction from it.
No sexist or chauvanist remarks, either - I believe men and women are equal, but not the _same_. Just look at nursing for another example.
As a graduate with an MSc i was considering working in the US until all the fingerprinting and other overkill came into force. Now I've no intention of ever going to the US, I'll stick with British Columbia (fantastic place!). The weak dollar also means I'd be earning pittance compared to the UK where I now work.
I'm not anti-US by any means, and the US is right to specify it's own criteria for entry into the country, but I'm not a criminal and won't be treated as so.
From this I guess the author means that it's OK to be at the same level they were eight years ago. It doesn't matter that the American teams didn't improve at the same rate at the rest of the world. And in his statistical argument he ignores that although team numbers might have increased so did the number of American teams.
... At the end of the day it is usually pretty obvious whether they work or do not work. "Almost works" is not good enough for anyone
While your statistical point is valid, your improvement one is not. He's saying that there's a large number of new entries, not that existing entries got better.
OMG, it's not fair, they trained harder! Well hello! Is it cheating to produce programmers who can actually solve problems and write code? What exactly is coursework for if it isn't preparation for the kinds of problems you solve in programming contests? I've done a couple - it's the same thing, you just have to be faster and more accurate, compared to a programming assignment.
If you've not participated in these types of challenges in specific, then it's hard to explain. These types of contests are based on the field in general, not on specific coursework that is commonplace. Doing coursework does help, but a more focused study on the contest and the types of problems in the contest does yield better results... in the contest itself. But it's just a contest, it bears very little relation to anything outside of itself. I've done several, and the contests should *not* be like your normal programming assignments. Different goals, different problems.
I was a H1-B worker - I made great rates (thanks very much) and so did all the other H1-B's I know. It's convenient for Norm's flawed argument to repeat this myth, propagated by programmers who think they should have had my job because it was their birthright, not because they could have done it better.
He has a point though, while H1-B workers do get paid well (it's a technical field, everybody gets paid well), on average they don't make as much as a non-H1-B worker. Simple statistical truth, that is.
The way to compete is to be the best, there is no other way.
You're right, and that's why "be the best" isn't a long term good strategy. While I agree that a good programmer can always get a job, I disagree that you need to be the best to do it. The best person doesn't always get the job. The guy who is good enough to "make it work" will get the job, and that guy is not necessarily the best at it.
- Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
Revoked!
The biggest reason the US is going to lose programming talent is the threat of out sourcing. I've got 25 years of experience, and I keep wondering if and when I will have to change careers. I have no interest in managing people 1/2 way around the world. I'd rather learn to dry wall honestly, atleast they can't outsource that!
The real problem with the way we here in the US are approaching technical education is that we're no longer teaching it as a science. There is very little emphasis on complex problem solving and creative thinking. Instead, CS degress are more comparable to vocational programs taught in the latest fad programming language with a smattering of recipe-style solutions to common problems.
This leads to a couple of generations of fairly competent Java programmers (or C# if you prefer) who can only solve a problem in a prescribed way. It is, then, no wonder that many other nations are beating our ass when it comes to technical education.
As a point of note, I'm not advocating some sort of "Chicken Little" alarmism here. I'm merely pointing out that the primary focus of our educational programs should be re-directed.
"Subsidize"? As in promote education and training?
No, Norm's argument is that more of that isn't needed because there isn't a problem. My point is that it IS needed. In many countries governments give money to educational institutions to the extent that tertiary education costs nothing, as long as you can score well enough to qualify - that's a good thing.
As far as the Olympics is concerned, it was sneaky and underhanded because it was supposed to be an "amateur" competition, we're talking back in the days people still pretended that was true. But don't imagine that the USA wasn't doing just the same as the Eastern Bloc, although perhaps with less drugs.
In general I would agree. But it seems like professional programming at the moment is like 80% art and 20% engineering/science.
You may benefit from going to school and picking up pieces to help you fill the 20%.
The same arguments have been made for science in general. See the Feb 20th, 2004 issue of the journal Science for a great editorial on the subject, "Supply without demand".
Industries and academic institutions have a lot to gain by directing what thousands of intelligent young students will study. If more students graduate after having spent 4 years studying CS, biology, engineering, etc, they will have a vested interest in trying to find a job related to their major. Very few people pick their majors thinking they want to do something totally unrelated when they graduate. There are significant barrier against this- having to learn another field, time lost during college spent studying something else, etc.
This increased labor pool then helps to drive down cost- it is a brutal example of supply and demand, higher supply drives down cost. Furthermore, given higher numbers of workers/applicants companies and schools are able to pick better employees and grad students. For example, if you need 10 good programmers and have a pool of 20 to pick from, you pick the people above the 50th percentile. If you now start with a thousand similar applicants, you can now pick the top 1 percent to fill those 10 spots.
Really intelligent people will be good at whatever they study, be it engineering, biology, law, medicine, history. Directing what those intelligent people study has obvious benefits for employers/institutions in those fields. Employers and schools want a high number of smart applicants to choose from. The ones not chosen can fend for themselves. How many bright young students would want study CS if they were told that the job market is flooded, jobs were hard to come by and the pay was low?
So that is the incentive for companies and academic institutions to direct what the best young students pick as their field of study. What is the disincentive? There is none!! They don't care if students coming out of college can't find jobs as long as they are able to fill their limited slots. They aren't saddled with the cost of educating those students. The students (or their parents) are the ones paying for education. What would mom and dad say if Johnny wanted to study CS and knew that jobs were going overseas? They would tell Johnny to pick another major. Instead, if "Jim Foley of the Computing Research Association, David Patterson of the ACM and former Intel CEO Craig Barrett" all come out and say that more people need to go into CS, mom and dad would feel that not only is Johnny picking a good major, he is doing his patriotic duty by studying CS.
Uh, I don't think so. I think this makes the statistically bizarre assumption that the quality of the entrants is uniformly distributed. Even a quick glance at the standings sheet from previous years disabuses one of that notion. In other words, most of the new entrants are going to be worse (in fact, much worse) than the top entrants from previous years.
Disclaimer: I am not a statistician.
No, always be the best. When you're the best you get the same job done but you get it done quicker - and then you're free for some other task. This is how a great programmer is worth ten or more mediocre ones. I can do the same job as the most brilliant people I know, only it will take me so much longer. I can produce a beautiful pine shoji, but only a true shokunin can do it in half a day (with far lest waste) as opposed to my two months.
These states he mentioned consistently do better with standardized testing such as the SAT's.
At the federal level education policy is modeled after ???Texas???...with Houston of all places held out as a great example.
Sometimes I lament that the south lost...but for completely different reasons than the stars and bars folk.
When the people fear their government, there is tyranny; when the government fears the people, there is liberty.
"Subsidize"? As in promote education and training?
Yes: "Subsidize"! As in promote education and training!
You're an academic; this shouldn't be too hard for you to figure out.
Its being investigated at my alma mater. RIT Research to Examine Success and Failure Rate of Women in IT Programs Women in IT Education
Understanding Gendered Attrition in Departments of Information Technology
about the project
Rochester Institute of Technology (RIT) has received an Information Technology Workforce (ITWF) award from the National Science Foundation (NSF) to study the experiences of undergraduate women in departments of Information Technology (IT). Most research to date into women's experiences in undergraduate computing programs has focused on Computer Science departments. While IT programs have cast themselves as qualitatively different from traditional CS, it is not clear whether women's experiences in these programs are more positive than in CS, where retention of female students has been consistently problematic.
As soon as you set foot on a college campus, the guys who get the chicks will be the pre-med, pre-business, etc. majors. Sure, the athletes will still get chicks, but that will change after their NCAA eligibility is used up.
After college, those athletes will become washed-up athletes and will get zero pussy. Hopefully they payed at least a little attention in college, or else they will be the ones picking up my garbage twice a week.
You know, it's funny. All I hear about is how China and India are going to "beat us", whatever that means. They study harder, there is more emphasis on academics, an blahdy blah blah. If that's the case, how come the best and brightest Chinese and Indians all seem to wind up in the US? Yeah, sure, I know a lot of really smart Chinese and Indians. I work with them every day.
In Virginia.
By the way, I have no problem with the H1B program. If foreigners want to come here and compete with me for jobs right here on my turf with my cost of living, I say let 'em. They better be prepared to lose, though. I am one extremely competitive motherfucker.
Must have been all those years of high school sports.
"Avoid employing unlucky people - throw half of the pile of CVs in the bin without reading them." -- David Brent
No, always be the best. When you're the best you get the same job done but you get it done quicker
;)
Clearly you're not a programmer.
The "best" guy will get it done in the right way. Doing it "right" means doing it with an eye for maintainability and making things simpler to do later. Usually this takes *longer* at the beginning. Often, much, much longer.
Faster != better.
- Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
It used to be that there were a lot of games that were not terribly behind the technology curve and were at least somewhat educational. This field really needs to be revived.
I'd like to see an RTS game where you could tell units to follow programs you'd written ahead of time in Java. You could play it just like a regular RTS, but you'd get completely crushed by the players who'd taught their units to fight effectively without any player attention.
Similar stuff could be done with an FPS in which you could program robots and equipment built into levels. I bet you could induce panic attacks in practically everyone by making them debug their code with a time limit while simultaneously listening for approaching monsters.
I think you'd get a lot of the people who want to play games writing code if the games started out easy, with automating things an option, and progressed to totally impossible without substantial code, by way of areas that are difficult without some easy code.
I started out just wanting to play games on the Apple II and on the timesharing systems we had access to in school, but eventually I started wondering how they worked, and that lead me to BASIC, Fortran (MUMNF), and 6502 assembler programming.
By the time I was a junir in high school I knew I wanted to design and write software for a living.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Telling the machine what to do is a basic level of knowledge needed. This part can be taught or learned independently. In order to program in a professional sense, most people also have to develop the ability to translate from what-the-user-says-they-want into a viable representation of what-the-user-needs. Being able to program is a skill, but one with limited application. As I understand these competitions, the requirements are fairly clearly written. I'd love to get those kind of requirements in the real world. I've spent 17 years as a programmer and have yet to get them, but I still hold out hope that one day, I will see requirements that are actually actionable.
To everyone else, a computer is a tool. Nothing more. The programmer is just the interpreter who translates between users and machines.
They want more cheap labour everywhere. Flooding the US job market, or any job market for that matter, with an excess of programmers is still good for them, because it lowers the cost of programmers globally.
I spent five years of my life trying to find a career outside of IT because I was sure that there would be no market for a programmer. I listened to bad advice and didn't have the experience to realize it was bad.
Then I got a job in the industry and even through the dot com bust and the bull-dozing of my former work place, I've never had any trouble finding work in a field I love.
I'm certainly not a brilliant programmer (yet) but I should never have abandoned this career path. Thank goodness there is someone like Mr. Matloff out there who has the expertise to debunk some of the hype and clearly identify the problems.
Still, I'll disagree on one point with him, even though my view is not a popular one. As honest as I am about my limitations as a programmer, I do not hold it against anyone who wants my job regardless of where they come from. I try to do what I do well enough that I need not fear competition. If my company imports technical expertise cheaper, it will make the company stronger. If I were overpaid or less competent, I would fear for my job security, but since I am underpaid and competent, what makes the company stronger makes my job more secure.
If they fire me, it will not be because they can get better or cheaper. I'll give them a much better reason than that.
B) Eliminate all the stupid users. This is frowned upon by society.
If not, Intel has failed to update it's site...
Let's all ignore the advice of a half dozen experts from WITHIN the industry and instead listen to a single university crack pot that knows nothing about the subject on which he is writing.
You know, constantly being "contrary" has it disadvantages, like not being able to maintain even the barest grasp on reality!
Buisiness people and managers are playing the power game. They don't want craftsman, they want interchangeable parts. With that midset comes necessarily the belief that what you do is factory work. To master any craft means that the novice must dedicate years and years into learning the skill. MS certificated "programmer" is not real programmer. He/She is code slave. Behold! New class of people working nonphyscical equivalent of cotton picking is born.
If you have any true programming skills nowdays, you are promoted. End are the days of programming. You are now supposed to herd group of caffeine-addicted-monkeys or write nice pictures (UML) to them so they can write it painfully down.
Quoting one of the true masters:
Dyslexics have more fnu.
Other than investing in the market, most Bank based savings account pay less than 1% in interest.
Where's the incentive?
"Hmm. I am to metaphor cheese as metaphor cheese is to transitive verb crackers!"
We can't blame outsourcing on Indian or Chinese programmers. They're doing what's good for themselves and their families. We could blame corporations, but corporations never listen to criticism, even from shareholders, and certainly not from Slashdot comments.
What would work would be corporate tax breaks for creating American jobs. Bigger would be better, but they don't have to be huge. There may be many thousands of jobs where the difference in utility between hiring an American and outsourcing just isn't that large, and a small incentive would push it back to the American worker.
Another thing that might help would be a system of labelling that tells how many American jobs were involved in the manufacture of a product. How you guarantee the accuracy of such labels is a question; corporations will face incentives to lie about the numbers.
WWJD for a Klondike Bar?
kids can get started making some pretty fun games right away.
GameMaker
Make all the male students bathe regularly as part of the grade. Then the female students won't be AS OFFENDED when they open the door to the computer lab. Nothing scares women off more than a room full of smelly zitty geeks. Regular showers will clear up 2 of those attributes.
You mean these contests are get harder when there are more contestants? I agree with most of this essay, but here he's trying to prop up BS with useless statistics. 3rd place, 11 years ago does not equal 21st place this year. It equals 3rd place.
It certainly doesn't mean the same level of quality was required of a third place contestant 11 years ago is required today. Logically, it stands to reason that it would be easier (with seven times fewer contestants) to get 3rd place 11 years ago. The bottom line is, if we're so good, why haven't we won in the last 8 years?
I'm a UK/Australian citizen who was hired to UC Berkeley last year as a tenure-track prof in computational biology. I'm currently on an H-1B visa.
These accusations of "empire-building" are just silly. Academic departments in every university around the world have a responsibility to hire the best people that they can. The market is, and always has been, an international one.
What's really behind this clamor about "H1-Bs and outsourcing" is (IMNSHO) a protectionist mindset that harks back to the US's century or two of isolationism. So other countries are cheaper? Try some positive remedies, like devaluing the dollar, or lobbying other governments to adopt progressive labor laws, or even taking a long hard look at the consumerist values of US society or (hey, while we're at it) the way the CIA has been quietly toppling socialist governments for the past 50 years so that the IMF can march in and "restructure" their economies along more "competitive" lines.
All of the above would be better than the current, idiotic mantra of "keep them foreigners at bay until we gets our jobs back". By no means restricted to the US, I might add, but particularly ugly coming from Americans who already enjoy significant advantages over citizens of other nations, thanks in large part to their aggressive militarist foreign policy. (I might add that as a software engineer, I'm particularly distressed to hear so much of this sort of talk coming from a supposedly educated professional group.)
Don't whinge about immigration. It's pathetic. Immigration's what makes America great. Sure, there is a huge gap between government investment in high schools and the bounties that (e.g.) U Chicago will pay for Nobel prizewinners, but capping immigration isn't the answer. For heaven's sake people, get some perspective.
I don't quite understand it when morons act like there is a tech labour 'shortage'...
Whenever any IT position comes available anywhere near where I've ever lived, (Ontario, NWT), theres several applicants and competition is insane..
I've competed in quite a few ACM competitions, and to use an ACM competition to judge whether or not a country is good at programming is a fallacy. Here's why:
1. These competitions focus on problem solving techniques and algorithm recognition. Looking through the problem set (Warning, PDF) you'll notice that there are a few geometry problems, some graph problems, some simple "do this" problems. It's much like Jeopardy. And in the same respect, some Jeopardy champions know nothing about certain subject but excel in others. The poor showing in the competition just shows that the teams did not have the proper skill set to perform well in THAT given competition.
2. They are competing in teams of three. That being said, there are many reasons why the US didn't perform well. (ie, the teams weren't balanced, which can lead to #1) Also, if 3 members from an American University can't beat 3 members from a European or Asian University, does that mean the American University is poor as a whole, and therefore, the United States is worse? Yet again, a fallacy. Maybe that means that there are more good Universities in the US! (ie, since Berkeley and MIT are competing against each other, they could have formed a better team working together.) In addition, if you made some sort of standardized test and gave it to ALL CS students in given countries, that would show more accurate results.
3. You're also not accounting for the superman coders. I wasn't at the best school when I was competing, but the people on my team were excellent programmers and problem solvers, going to a sub-par University. It could just mean that some of the better performing teams got lucky and had a really smart guy to carry the competition. (kinda like Shaq)
In fact, basketball is a prime example. I don't much pay attention to the news, but I recall the US men's team getting spanked in International competition, though I certainly don't hear anyone claiming that the US just doesn't have as good of a basketball program as other countries.
If Johnny or Sally want to program move to India, or China. We now have free trade which means that overpriced American labor in fields where Americans are mediocre results in poor labor value. Changes careers, move, but quit whinning, it is our turn to gain wealth. You can work at Pizza Hut.
Well yeah I am a programmer. I figured that the same standards of quality were implicit. When a mediocre programmer gets something "done" and their manager or peer reviewer picks it apart and they have to keep doing it until they get it right (or involved someone who can help get it right), that's taking longer.
This is a useful refutation of the GP post, so a +1 insightful or informative would be good.
See what I've been reading.
Let me know when you finish the graphics engine for Doom 4, buddy. Seems John Carmack is busy, but since you say you can do the job go right ahead.
It's not as bad as all that. According to these AHA statistics, there were some 25,000 BA degrees in history awarded in 2001. According to these NSF statistics, there were some 360,000 BS degrees in science awarded in 2001. That's about 15 science degrees for each history degree. Ooops, but that was counting the social sciences. If you're one of those who doesn't consider them to be "real" sciences, that figure drops to about 150,000 for just the natural sciences, still beating the historians by 6 to 1. (Or 100,000 for the natural sciences if you don't count computers scientists or mathematicians as scientists -- which I don't -- with about 80,000 of those being life sciences and 18,000 being physical scientists.)
Of course, that inversion is because you mistakenly identified history as a representative major that many "useless" students go into. In reality, nobody majors in liberal arts anymore, because you can't make any money in it. Now, let's look at business, well known to be the most unproductive (yet paradoxically well-paying) major this side of the Magellanic cluster: according to these AACSB statistics, there were some 233,000 business degrees awarded in 1998. The sciences are still beating out even business, at least if you count the social scientists. If you don't, the businessmen and telephone sanitizers are beating the scientists.
But, that's not including engineers. If you want to count them with the scientists, the combined science and engineering bachelors degrees awarded in 2001 totalled some 420,000, and the combined natural science and engineering degrees totalled about 210,000; still not up to business levels, but almost.
Are you kidding? Obviously the companies want the least educated person they can find because they tend to be the cheapest.
Nice attempt at getting your little Fox News troll to be on-topic, though.
There's an abundance of academic scholarships, awards, grants and loans in the US. Just because you did not see them does not mean they do not exist.
At the same time, there is a recognition in the US that being a 6.0 student is not the point in education. There are many lessons to learn in life of them academics is only one. If you miss all the others on your way to the honor roll and magna cum laude then you haven't really learned as much as you think. Life is for living, having fun and enjoying. Not getting an A+ in every study. Academic excellence is not an assurance of fantastic wealth either.
Mac OS X and Windows XP working side by side to fight back the night.
If everyone is devoting their time to making Linux the number one desktop OS it can be, who's workin' on building new cars, fixing roads, etc. etc.
Sounds sorta dumb when you think about it. Unfortunately I've ran into many a uberdork who have this notion.
No sig for you!!
American education is slipping, not just slipping, its in free fall. Our society doesn't value education, it values vanity. We pay professional athletes millions of dollars, the Paris Hiltons of the world millions of dollars, and for what? Vanity and entertainment. When it comes to education, we just say, "well, suck it up"...its complete BS.
/. is the same way. Sure I still like to work in the tech field, but if I bought into materialism I certainly wouldn't be here, and if I had a family, I know I wouldn't be here, because I'd demand enough money to feed my family and put a roof over their heads, which would be an issue.
So what if "Johnny Can So Program" his job will be sent offshore because "Johnny Demands a Livable Wage". There's very few niche markets where "Johnny" can still get a livable tech wage in America. Can you really blame "Johnny" if instead of studying science and math and learning about technology he blows it off, parties his life away through college, and becomes a business major so he can move on up to a clueless management position and cut jobs and make a decent wage?
Everything I learned about computers in high school, and a lot of my time in college, was learned on my own. I'd say a good portion of
I'm not against outsourcing. I'd say we should be encouraging it, but the kicker being we have to do it responsibly, which corporate America doesn't quite understand.
"But that's just my opinion, I could be wrong" - Dennis Miller
Your experience may be atypical (I say to be polite), because presumably you graduated near the top of your class at IIT and came to CalTech for a Ph.D. You're smart. We get that.
But what about the bosons back in India who are working for 1/20 of what an American makes? They do a seriously fucking shitty job. But just as you point out, it's not like socks. You can make top-quality socks anywhere in the world -- which is why there is a city in China that literally specializes in sock-making. Almost every sock in the world is made in that city because of economies of scale. Programming takes talent.
But how programming is like sock-making is that the decrease in quality simply doesn't matter. If someone makes 1/20 as much money, unless they're 20 times less productive it's better to hire them. See? It doesn't matter if you're the best.
In short, by focusing on MP and neglecting MC, you fail economics. Way to be condescending and wrong at the same time, jackass. Please find some real-world experience before dispensing more of your golden wisdom.
That was both insightful and funny!
I am all for the smartest people in the world coming to work here. America is founded on immigrant labor: people who are willing to move across an ocean for economic opportunity are always smarter, tougher, and harder working than their peers who stay in their homelands.
H1Bs don't take our jobs at gunpoint. If you lost your job to an H1B it is because they were smarter or willing to work harder for less money. Being born in the USA does not entitle you to a free lunch. If you don't like it, too bad. Maybe if you spent less time complaining on slashdot and more time being productive, you would be getting paid more.
Very interesting post, really, I will follow it with the conditions of our education here in Brazil. As many of you know soccer (what we call football) is major sport here and it gets the full attention of the nation. A game in the world cup where our national team is playing is a recognized (and almost official) national Holiday.
But soccer, or any other sport, is not tied to the education. You cannot get a spot in your university by playing football. Universities and schools do not have official teams, they can have a more then a few amateur teams, but those don't get any attention from the media.
Many people dream to be a great soccer player, mainly in the poorer class (where many of our greater players come). This is a way to get richer. You don't need a college degree to become a soccer, and many of those people have really poor educations. It is very common to see a soccer player making basic errors in the Brazilian Portuguese.
But we have a very bad educational system. There are the public schools that in many cases have fewer teachers that are needed. Pretion from the society and politics made common to approve a student even though he is not capable of that. public schools, with a few exceptions range from a poor school to a deposit of children ("at least they aren't on the street" is a common quote that I have the urge to hurl every time I hear it).
We have good to excellent private schools. The cost to go to a private school is high, but not impossible. Most of the middle class and all the higher class put their children in private schools.
Then you have the higher education, where the reverse is true. The public universities and colleges are the bests, with the private ones ranging (with a few exceptions) ranging from normal to very bad. The point is the selection to enter the private universities is very easy (a local TV station made an illiterate person pass through the selection of one of this bad universities by marking random answers in the multiple choices questions), so as long as you pay you get a degree. Many here call those a "factory of diplomas".
The selection of the public, good, universities is very hard. And since only the middle class and higher class had access to a good education, most of the people who gets to the pubilc (and free) education are from those environments. Poorer people had little or no education up to this point, so the selection (vestibular as we call it) it is very hard for them. Our public universities are indeed in an international level, I had more then a few friends that made PHDs in universities in Paris, Chicago, London and other places with the bases we have here (some of them ended up working there, witch is a bad thing but we do have a weaker economy and life stile then many of the European countries and the US and Canada).
[]'s Victor Bogado da Silva Lins
^[:wq
OK great, I have a program I need you to write really quickly. Basically, I have a list of places I'll be delivering packages (millions of them actually) and since the quicker I get these delivered the more money we'll make. With gas being so expensive we want to know what's the one way we can deliver all these packages using the least amount of gas. So essentially, I need a program that will take all my locations, where I'm starting and tell me what stops to sequentially make. Most of all, this program needs to be fast. Can you do this for me?
"If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer
I used to routinely put away 10-12% into a 401k, but then I bought a house and was laid off a year later.
I'd love to be able to save again, but I'm too busy paying off the debt that I accumulated during almost three years without work.
I'm hardly alone in this situation, either.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
make your own country better.
we're quite happy being mediocre, thanks.
I've seen 4-point and 12-point grading systems in the US (the one used at the college I went to was a 4-point system where 4=A, 3=B, 2=C, etc.).
What's 6.0?
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Part of the problem is how poorly american culture has adapted to the modern world of computing. Despite the fact that people use computers nearly every day in dozens of capacities, it's still considered an esoteric and specialist degree.
.com crash), or because they could get an associates degree at ITT (better than flipping burgers), or maybe they made some fast money making cheap ameturish webpages and now they think they can do anything (classic townie wannabe).
For example, look at how late in our educational system the process of programming education begins. Most "good" programmers I know were fooling around with code long before their schools ever even dreamed of introducing them to such concepts (usually around or before age 10, even!) Remember the Smalltalk project at PARC? They had children making animations, programs, games, and even simple applications. Obviously, children can understand it if you present it correctly.
Between this delay and the general American stigma against intellectualism, many of the programmers we produce are not terribly good at the job. Maybe they did it for the money (before the
What we need to do is teach kids to program at an earlier age. We also need to stop being so concerned about teaching them a "low" level language first. Let's start with Python or Ruby. Let's have them doing things instead of wasting time making for loops or calcualting array medians. Start making network-enabled applications, making interactive websites, etc.
Then, let's combine that with their math courses. As they learn math, they can learn the corresponding ways to do it on a computer (when feasible).
That way, they'll already know if they like programing or not, and they'll be able to make intelligent and informed decisions about what direction to steer their life. I can't tell you how many people I watched drop out of our CS Pre-major in college because they didn't realize what CS really was.
Also, why don't we see more vocational programs for cheap coding work? Not to offend web designers, but there's an example of a career that could be considered for vocational schools.
America is having problems keeping up with their demand because our entire society is shaped to ostracise young people who are interested in the subject, and discourage them. Only the most persistant and passionate people make it through, leading to a vast gulf between a "good" software engineer produced in America and a "bad" wage-slave class coder.
Slashdot. It's Not For Common Sense
the upper class uses unemployment in order to minimize salaries and wages. There is no free market. Anyone who believes that the owners don't use unemployment in order to drive down the value of labour is naive. The system is so corrupt, that it is obvious. We the people have been, and are being, cheated. Please, wake the %*^# up.
a) the USA is widely seen by the rest of the world as the embodiment of the ultimate faith in the market economy.
So, for example, when Hollywood makes a new version of the Japanese movie "Shall we dance", and that new version is successful, it's OK. When local movie industries around the world are put out of business by the US entertainment industry, it's fair, because, well, they are better, they compete, they win. Hail the market.
But... when the world "hits back" by getting better at something else, say... programming for example... ooops, that's a problem, all these H1B visas, offshore outsourcing etc., oh no! we can't let that happen!
(It's a very strange "us vs. them" attitude. Why don't you make the same analysis comparing two different US states for example? Maybe there are better programmers in Palo Alto than in New Jersey. Is that a big deal? The pay will adjust according to supply and demand, people and companies will move from New Jersey to Palo Alto or the other way around. I suppose if you live in New Jersey and you don't know much about these strange Palo Alto people, it can be quite scary for you... Just like all these HB1 visas can seem scary... but ultimately these guys are just human like you... and if they are better, they deserve to win. If they are not better, well, time will tell, and you will shine in comparison, command a better salary etc. Good luck.)
b) What is happening to the software industry is the same thing that happened to factory work a couple of decades ago.
You know, all these blue collar workers, so prompt to form unions, even sometimes going on strike to defend their privileges etc. ? Well...
Johnny is one of them now! His screwdriver is a C++ or a java compiler, but what's the difference? Soon he will be lobbying for quotas, etc. to protect his current status... during that time, fellow human beings are learning Python in Bangalore. May the best of us take the lead and show the rest of us the way...
I didn't learn to program at first because I thought it would be a good way to make a living -- I simply wanted to know how things worked, and I wanted to be able to create my own stuff.
:-)
Life isn't always about money.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Yes! Definitely! We have a slew of offshore developers from India and their code is the worst. Our onshore/American developers blow them away. Sure we might save a buck or two using the Indian staff, but with the amount of defects and major fuckups, they've ended up costing us much more in the long term.
I've not 'created' a lot, but where I have it's usually when I've seen what there was and decided I could do better myself.
That's called innovation: Seeing something that sucks and doing it better.
Microsoft sees something that sucks and makes it suck worse.
I'm with you, though, I haven't created a whole lot, and where I have, I innovated.
which would all be ok, but you wrote your entire post on a entirely outsourced computer where every single component was manufactured abroad. And you are using your entirely outsourced computer to complain about outsourcing....too funny
However, when it came down to actually doing it, and learning to code, they all, except for one, said "We're just more interested in playing games."
Hrm, sorta like those goof-offs at MIT who developed Space War, huh?
Of course, we all know that nothing good ever resulted from that effort...RIGHT?
Teachers are paid exactly what they are worth. So are C++ coders, sewer scrubbers, pro baseball players and everybody else. Basic economics. Salaries are set by supply and demand.
Lots of people want to be teachers. Short hours, lots of vacation time, few barriers to entry. More supply than demand = low price.
The Paterson interview is all about the coding competition and how wonderful it is that so many students from around the world take part. The headline "Can Johnny still program" was probably slapped on the write-up by an overzealous editor eager to capture eyeballs. Most likely, Patterson had nothing to do with it. Then, Matloff comes along, grabs hold of the headline, ignores the content, and twists the interview to pound on what seems to be his favorite political issue. In the process, he labels Patterson as a shrill alarmist crying for more H1-B visas. Nevermind that, in the interview, Patterson has nothing to say about visas and very little to say about why the US team finished where it did. He's focused entirely on how wonderful the competition is. As both a UC graduate and an ACM member, I don't know whether to be amused or chagrined.
You're full of BS. How can you say that there's no innate ability and in the next sentence say some folks require less practice? I'm sorry, but some people DO have way more talent than others.
Can you Liberals *hear* yourselves, when you talk?
Remove the artificial barrier to removing incompetent teachers (the all-powerful teacher's unions), and you would improve education.
Remove the artificial barrier to starting competitive K-12 education (the union's rejection of voucher programs, *forcing* people to pay taxes to a union-only make-work program called Public Education), and you would improve education.
I was beaten silly in High School because I was a nerd, in plain sight of wonderful "union" teachers. But, I've been programming since I was 16 (I'm now 37) -- conservatively averaging 50 hours a week in front of a computer for the last 21 years (far, far more while I was in University for 5 years -- 100% borrowed money, which I paid back over a 9 year period; my family was on the rocks at the time, after we lost our farm).
I was out of work for a short time, so I fell back on my ability to work my ass off -- literally cleaning up garbage in a stadium.
There were people far worse off than me -- but I out-worked them. Within one week, half of them had quit. Perhaps if someone had "protected" them, by preventing "Un-American" people like me from working my ass off, then they would have stayed at the job?
ANY art -- programming, music, mechanics, physics -- (not the "crafts" they teach in public school, which are the equivalents of making shit out of egg cartons), requires fanatical dedication. By both the teacher AND the student. These people neither need nor desire your "help" or "protection" from outsourcing!
If you don't want to apply fanatical dedication, and you think "protecting" those who don't from competition (such as outsourcing) will fix the problem, well... I just don't know what to say to you... Perhaps:
"Welcome To My Planet"?
-- -pjk Perry Kundert perry@kundert.ca http://kundert.2y.net
I am, honestly, sick and tired of this spiel about H1Bs being paid less than the regular Joe computer programmer in the US. I call bull on Prof. Matloff's 'statistics' about Masters and PhDs being paid less than comparable Americans. Why? Because pay is not decided on degrees, but on work. I have a colleague who is a PhD, but he earns in the same range as me (I am a H1B with a MS, he is a permanent resident). Why? Because we both write test code. The fact that he is a PhD means bull if we are both writing test automation. It may be true that international MS/PhDs are likelier to do work 'below' their degree qualifications (meaning work that you could get a Bachelors grad to do) because they like life in the US, and are unwilling to go back, or they are saving up to go back in a few years.
Read up on the H1B legislation if you have a chance. H1 Bs cannot be paid less than a comparable American worker. All that bullcrap about H1Bs being 'exploited' is exactly that.
Anyone who pours liquids through their fingers from some random beaker found in a lab is lucky to only find sulfuric acid. There were much worse things standing around in my grad school lab, thanks to the lab pig.
Look, even young Albert Einstein was more interested in riding his bike than he was in changing the world. To think that a kid would be more interested in playing games than becomming a scientist...well, that's just shocking. What is this world coming to?
"I think that most bright, capable kids have figured this one out (with some help from breathless articles about unemployment and outsourcing), and if Johnny's smart enough to program, he's smart enough not to."
You left out the pervailing judgemental attitude amoungst those left behind in IT. The "we want a particular type of person in OUR profession". So why would someone spend years in CS, just to be greeted with hostility by those already in the profession?
You CHOSE not to work for 3 years... No wonder the US isn't number 1. No work ethic. I open any local paper and find the Help wanted section overflowing... Perhaps you couldn't get the job you wanted, but There are/were jobs available... you chose not to take them and that choice put you in debt.... Granted taking a lower paying job would not necessarily have been ideal, but you wouldn't be as badly in debt.
Food not Bombs is a nice platitude but it breaks down when you notice that the Bombees are usually well fed
That and OSS is helping lower overall costs for the same people slashdotters profess to hate. Profit margin gets bigger, and an Indian OSS programmer is now doing the work cheaper.
IT: the only profession that actively tries to put itself out of a job.
I have to recognize CNET. For those who read the article, the author is pretty (constructively) critical of CNET itself for printing articles that hype up the issue. It's pretty neat that cnet is willing to print that article itself.
Aaron Maxwell - redsymbol.net
http://www.povray.org/
A freeware (as in beer) raytracer with a long history and huge comunity of aficionados. It comes with a powerful and flexible scene description language in which you program your dreams.
I always thought that to be a very compelling reason to learn both to program and to have good math skill: to be able to draw your own photorealistic 3D graphics.
great tool.
some would mention csound for e-music composition too...
I don't feel like it...
I'm in his class right now, it's weird how he didn't mention this to anybody in class.
You missed the point... you or me or any competent programmer can do the Doom 4 engine. Same as we could have done Pong, or Pac Man or X-Com. But it will take Carmack just 6 months, I'll take 15 years.
industry in my town with its protectionism in protecting its own uneconomic and uncompetitive industrial sector. So STFU.
I found several of the author's points suspect:
1. Paraphrased: "The number of teams participating has increased by a factor of seven so our seventeenth place finish is really more like what 3rd-ish place used to be." There are two problems with this: firstly, the number of American teams has also increased, and secondly, newer teams presumably have less experience and history and are not vying for spots near the top in their first few years. If new teams can reach top competitiveness in only a few years, then where are the new American teams? If they can't, then how did all of the new foreign teams get ahead of the Americans?
2. Paraphrased: "We'll they're beating us because we aren't really trying." This sounds like the typical poor-sport defense of eight year olds. "Well, so what, I wasn't really trying. I could have beat you if I'd wanted to."
He says that the Chinese are devoting ten times the effort and are essentially professionals. How then do you explain the continued success of the Canadian team from the University of Waterloo? I was a previous member of several Waterloo ACM teams and I can tell you that we weren't killing ourselves training for programming contests. We were however killing ourselves with our regular math and CS courses, so perhaps that was what helps. (On an aside, the first time I went to the US to compete, I was absolutely stunned by the general lack of knowledge and talent showed by most of the American competitors. I had never appreciated the University of Waterloo's CS program until I had a chance to witness the products of other institutions.)
3. Paraphrased: "The contest isn't significant because it isn't even the most prestigious Chinese Universities that are winning." This is also true in the US. I recall some unknown colleges doing very well now and then. Prestigious is, as prestigious does.
There is a lot of places to save money other than a bank.
A bank should only be used for short term savings.
Where's the incentive? How about what are you going to live on when you 65?
Dpending upon your age, you really don't have to save that much a month.
If a 18 year old just maxed out his ROTH IRA every year($2,000) he would most likely be set come 65.
Here is a recent anecdote. I went to a store and they had a deal where if you used a particular credit card you got 15% off of your purchase. The cashier selected cash by mistake and I had to go over to the customer service counter to straighten it all out. (I am too honest to let the poor cashier be accused of theft when the cash in the drawer did not add-up at the end of her shift.) The manager told me that she could not figure-out the 15% discount because her calculator lacked a percent key. This was the manager! I just did it on a circular in front of her, but it was terribly depressing.
:(
Another time four of us went out to dinner and one person decided to put it all on his credit card. He was having trouble figuring-out the tip. The total on the bill was something like $100.15
That some dummy blames our whole education system on a news network that is only a few year old, or that he is modded insightful?
People need to get a sense of perspective, geez.
Yes, I can create such a program, but it will only be able to give you a *good* route, not always the *best* route. I'd like to do better but "Traveling Salesman" problems are very difficult to solve, based on the sheer number of possible routes, so I'll have to approximate and "fudge" a lot. Or, if you have a LOT of money I'm sure we could buy a few supercomputers or two to speed up the calculations. :D
When I arrived to the United States in mid 90s, my view was exactly the same: American's could not do anything and no American was smart enough to do advanced stuff. Dear Americans, please accept my apologies. I was wrong and pumped by skewed views.
In high school, it seemed that a great fraction of kids were being dragged along in order to meet some sort of a requirement. I was puzzled becuase I went to one of the best schools in the U.S. at that time. What I did not know, was the fact that the school was required to try its best in order to educate the students. In my former country, Belarus, a great majority of those slackers would never see the 10th grade.
I remember how everybody told me that the U.S. had no science and no math. Unfortunately, this is partly true becuase there are no hard requirements: a student can get by several years of simple math and science without even getting into advanced stuff. It turned out that if you wanted to succeed, all you had to do is work harder and take the advanced courses yourself! Yes, that is right. Most of the kids in my AP classes were just as smart as my former peers. They wanted to study advanced stuff and they got it. If one covered all the courses offered by my high school, that person could go on and take courses at a local university. That totally busted my old opinions about this country. Granted, not every teenager is dreaming about yet another calc test. So what? As long as we have people who are willing to take on and progress, we'll be fine. In fact, I enjoyed that advanced clases were small because you had to qualify in order to get there!
The same thing applies to college. You can take easy courses and slack or you can take advanced courses and try to do your best. I opted for the latter. I worked really hard to get an A in a computer graphics class while my buddies were driking beers while creating a database driven website project for a lower level course. We ended up with the same grades, but I had to work my ass off. You get the point. In the end, everything is up to you. In many countries of the world students are simply required to study more whether they want it or not. This is subjective as well. Do students appreciate the material that their teachers force upon them? Does it make any sense to have the same math program for every student? Does it make sense to benchmark students at all?
I guess Johnny can program. The real issue is that Johnny wants to earn some money doing it. Competing with people who come from India or China is hopeless when you have a mortgage, kids, and educational loans. Had it not been for my monetary baggage in terms of ed loans and high rent payments, I'd work for ten dollars per hour. The question about visa workers and offshoring should not be discussed via one's skill level. It is the salary that counts. I know of several companies that had to bring their development and support back because the price of their offshored contractors went up.
FYI, I have seen some posts about bright foreign exchange students. That is all nice and cute. However, you have to remember that students who come here on visas are not your average kids! After my family moved here, a couple of my former classmates were chosen to represent my former country in a foreign student exchange program. These were the cream of the crop kids. Straight As, good behavior, good discipline. In order to qualify for the program, you had to jump through many hoops and truly show that you're the best from the best in terms of your brain power and language skills. These guys were pretty smart by default and they truly stood out regardless of the student body. Being a smart person and an immigrant makes you stand out. There you have it.
BUT he still cant get a girlfriend :(
...But he still cant get a girlfriend!
I couldn't find the TMSS data broken out by state that he refers to.
Minnesota's presence is notable because the original studies in 86 and 92 that compared Minnesotan children against Taiwanese and Japanese students found huge educational gaps. Moreover, the Minnesotan children chosen for the 1986 and 1992 followup were chosen from an upper-income Minnesota neighborhood. The schools were chosen because they were considered among the best in the United States.
I'd be very interested in seeing the data the author is referring to.
We are "Slipping" because we got too comfy in our No.1 spot;
.. nevermind.
Who says you are in No.1 spot ? Oh, you *think* you are
The actual HB-1 form is here
You will notice section F on conditions:
The problem of numbers is related to interest levels. I teach CS1, CS2 and AP at the high school level and yes, the numbers ARE falling. As long as we teach straight CS, OOP, Top-Down Design and all the other "academic" aspects of programming the kids lose interest fast.
Lately, I have been focusing on robotics. I'm not much for teaching game programming at the intro level because of its heavy reliance on complex data structures and the algorithms that manipulate them. The gaming stuff seems to fit better at the undergraduate level.
I bought a PIC-based serial port adapter that controls an r/c transmitter through its trainer port by converting ASCII to PPM. That means any r/c vehicle including planes can be controlled programmatically. I teach the kids how to do this by using c++. It's a big hit because it fires the imagination and they're interested in it. The context is large enough to teach all the other stuff. Joystick control? Data structures. Message frames? String arrays. Continuous control? While and for loops.
I know the CollegeBoard and the ACM work very hard at developing curriculums that make sense for high school kids but Java and The Marine Biology Case Study just don't cut it. The interest isn't there for the way the material's presented. The students want the college credit and put up with the material but when push comes to shove only a select few are really interested. That's a shame because as far as I can tell we are truly entering a golden age in the development of robotic devices.
Would you tell your kid to major in computer science? He or she would likely spend a lot of money and several years at a good university learning to be a software engineer. After graduation, though, when they went looking for a job they'd be competing against experienced people from (and in) other countries who would be willing to work for half of what your kid was looking for as a starting salary to pay his rent, buy a car, and pay off his college loan. You should tell him to be an English major and maybe help write documentation.
We are in a time in US history when 'American' corporations have absolutely no sense of national identity and are happy to conduct the key parts of their 'business' in foreign countries using foreign labor with American technology, supported by the American government, and operating under American laws which allow a corporation to be considered as an American citizen with unrestricted access to American markets. Other countries have figured all of this out and are reaping enormous benefits. Foreign workers benefit from improvement in wages and development of their skills through experience. Foreign countries benefit by getting investment in state-of-art manufacturing facilities in their countries and jobs for their citizens which raise their standard of living, as well as an increase in their tax revenues and balance of payments with the US. The 'american' corporations benefit from lowered costs in the short term and improvements in their profits. The US government benefits with foreign-manufactured consumer goods offered in the US at a lower price which lowers the cost of living and keeps inflation down. The US consumer benefits from lower prices.
Of course, in the longer term, there are some losers. The US government loses income tax revenue from jobs that no longer exist, the US standard of living declines as real wages are lowered, american workers end up working in low-value jobs rather than higher value jobs with a consequent lowering of demand for skilled workers (such as computer science majors) and the manufacturing base of the country becomes eroded and weaker.
The fact is that coding is becoming a minimum wage job. What real knowledge is required in most programming shops? None, everything is already designed and you just have to use some class or design pattern to do some really basic crap. 90% of apps are web based. Show form, get data, persist it to the database. Not exactly high wage worthly rocket science people.
Very simple because the cheap ass bastards running companies no longer reward you for advanced education. If I were to get a MCS or PHD I'd still have the same salary...position..etc. As long as companies look for the "cheap" programmer instead of the most well educated and trained, degree's will trend downward. Let's face it. Who wants to do all the work, spend all that time and money and get squat out of it????
The only other professors who even came close were the Physics 101 professor who drove around the lecture theatre in a tiny little car to demonstrate accelleration and velocity with the rangefinder and his Macintosh, and the Chemistry 100 prof who electrocuted pickles and detonated balloons full of various ratios of hydrogen and oxygen.
If I ever had my say, I would definitely support using Python (or Ruby, from what little I've seen) for teaching introductory programming. There's plenty of things that are hard enough for most people to understand in programming, the language itself doesn't need to make it even harder.sure makes more sense to a young budding programmer thanThere's nothing wrong with learning C++, but I can definitely attest that at least in my case, it wasn't conducive to a rapid learnign experience. Discovering Python literally renewed my interest in programming because it made it so accessible.
-Jay
From the article:
Congress, openly admitting that it was responding to industry campaign donations rather than the popular will, complied by increasing the H-1B cap in 1998 and 2000, the latter action coming at the time the mass layoffs began. This past December, despite a continuing abysmal tech labor market, Congress enacted another expansion of the program.
The facts:
The H1B cap (which covers not only computer professionals, but also foreign workers in a wide variety of fields, including sports, and fashion model) was 65,000/year. For those who remember the situation in the IT market in 1997-1998, it was clear that there was a shortage of qualified computer specialists, especially in areas away from the major IT centers like the Silicon Valley, New York City, Boston, etc. The raise of the H1B cap, if I remember correctly, was done only once - in 1998. It was temporary, and in two stages, with initial raise to 120,000, then to 195,000 (in 2000), and then it went back to 65,000 in 2004, with the additional rule that the number is not for the visas issued, but for the visa applications - i.e., if a company applied improperly for an H1B visa, they used one of the allotted numbers even though they were refused the visa. This is far from the implied continuous expansion that Norm Matloff wants you to believe.
While the cap was up there, close to 200K a year, the supply and demand equilibrium was achieved and not all available visas were used (obviously the bubble burst had a great impact on that). In the fiscal 2004 (Oct. 2003 to Sept. 2004), the 65,000 visa application were exhausted in about 4-5 months. In the fiscal 2005, all 65,000 applications were submitted in a single day (Oct. 1, 2004) since that number included the applications filed in fiscal 2004 after the cap was reached. This meant that high-tech companies had to wait for an year to offer a job to a non-citizen, regardless of their qualifications. This is why there were an additional 20,000 H1B visas allocated in December, restricted to MS and PhD holders from US universities.
Quote:
Government data show, for instance, that Intel, which claims that its H-1Bs have master's degrees and Ph.D.s, pays them far less than the national medians for engineers with these degrees.
The H1B visa regulation require that the salary of the visa holder is comparable to the local level of compensation, and not to the national median, and for a very good reason. The IT and CS professionals in California are probably skewing the average and median values nationally to such an extent, that companies in Tennessee or Alabama, for example, would have a hard time hiring someone at or above these levels of compensation, since it will make their local costs too high, and make them less competitive in their local markets.
If Norm Matloff (or anybody else) has credible evidence that Intel, or anyone else, is paying their H1B employees less than their US counterparts, he should file a lawsuit - it will bring them the gratitude of current and future H1B employees around the country. BTW, HP tried this in the late 80's - early 90's, and got slapped very hard with fines. I haven't heard of anything comparable from a large corporation since then.
Quote:
Contrary to these parties' putative goal of maintaining American technological competitiveness, H-1B has brought great harm.
What "great harm"? The scandals at Enron and WorldCom? The Internet bubble? In my opinion, clueless and arrogant executives, who believe that they are above the law, or that they can manage in areas about which they have no understanding have brought much greater harm to the US economy than a million H1B workers will ever do.
Of cour
Norm Matloff uses a couple of truths to launch a
fantastic voyage of fallacy, innuendo, and untruth
in support of his xenophobic agenda.
The truths are:
1. The ACM competition is getting tougher
2. ACM standings alone do not measure "Johnny's"
programming prowess.
The fallacies, inuendo, and untruths are:
1. Fallacy. The implication that tougher
competition means that the U.S. ranking in
the contest has not slipped. Other
countries' teams have stepped up to the
challenge; U.S. teams have not.
2. Innuendo. The implication that, like East
German Olympic teams, Asians and East
Europeans succeed using dirty methods,
leaving those countries who value fair play
and the well being of their competitors in
the dirt.
3. Anecdotal 'evidence' and bogus inference.
"All their time was spent in preparation
except for their class work." ACM
competitors are full-time students. The
above quotation makes it clear that they
use their extra time to practice and
are therefore in no way comparable to
athletes who are paid to develop their
sport to the exclusion of all else.
It is impossible to quantify the colloquial
"all" in the above (out of context)
characterization. Clearly there is some
hyperbole in common use. I suspect their
effort is similar to Waterloo's, the
Russians, and other top-performing teams
which is maybe 200 hours for the season.
A significant time commitment, to be sure,
but not out of line with the amount of time
students might spend on sports, video games,
or other extracurricular activities.
3. Bogus statistics. "A faculty colleague of
mine who is a veteran coach in the ACM
contest estimates that many foreign teams
devote at least 10 times the amount of time
to practice as do American teams. Xu's
statement suggests that the factor is much
greater than 10."
It is possible that some teams spend as
little as 20 hours practicing in a season.
I suggest that these teams are unprepared
and would be surprised to see them perform
well. On the other hand, some U.S. teams
do considerably more.
So what exactly does "many foreign teams
practice 10 times more than American teams"
mean? Than some American teams? Than all
American teams? Than the mean or median
American team? And what's the methodology
used for Matloff's colleague's estimate?
"Xu's statement suggests the factor is much
greater than 10." Really? I assume that
Matloff did not take the statement to mean
that the contestants did not eat, sleep,
groom themselves, or do anything else. There
are 168 hours in each week. Full-time study
easily consumes 60-80 hours. Let's allocate
70 hours - 10 hours per day - for eating,
sleeping, etc. and we have maybe 20 hours
a week left. Anybody who practices
"considerably" less than 2 hours/week would
be ill-prepared for international competiton.
4. Referring to "prestige" as a gold standard.
"universities that are considered far more
prestigious than Jiaoda [sic?] weren't
in even the top 10." Nobody other than the
author claims that assertions of "prestige"
were accurate measures of anything. I should
also note that, as with all competitions,
there is some random component in the
outcome. The decline in U.S. teams cannot
be explained by chance; the order of
finishing of the top 3 Chinese universities
(all of which beat the top American) can.
5. Special pleading on grade-school te
We are in a time in US history when 'American' corporations have absolutely no sense of national identity and are happy to conduct the key parts of their 'business' in foreign countries using foreign labor with American technology
We also are in a time when 'Japanese' corporations like Toyota and honda open manufacturing plants in the US, employing nearly 100,000 Americans.
In TFA it seems as if the H1b cap has only been raised and raised. Not true - there was a big cut-back in 2003. The cap around 2000 was well over 100,000 and is today at 65,000. So that's a very, very ugly statement in an otherwise interesting article.
In developing (not undeveloped) economies, as currently exist in China and Eastern Europe, science and technology training is a way for people to advance themselves. In developed economies, it may be through business, law, or moving money around. It seems a natural progression to me.
Actually, I *did* work during that time, though not for an employer as such, mainly doing fulltime techical training and bits of coding in an attempt to build up some experience in more marketable areas, as well as spending a lot of time talking to folks on the phone and in person trying to find out where there might be inside connections to positions (in addition to the traditional job search and resume/cover submission activities), and the roughly $10/hour that state unemployment provided plus my wife's salary was enough to keep us afloat (the contract I found in the middle was a tremendous help as well).
That said, it should be obvious that neither the unemployment benefits nor a similar-paying job (which is all I was able to find in spite of your uninformed claims to the contrary -- ask any programmer in the Minneapolis/St. Paul area what the overall job market has been like there) would allow me any room for doing much in the way of saving, and that was the entire point of my post.
Yes, I chose to spend the time trying to advance my skills and network instead of working at McD's or building houses. Perhaps you would make a different choice, but from a financial perspective the two are roughly equivalent, and I think I ended up somewhat ahead given the path I chose for myself. YMMV, obviously -- just knock off the preaching.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
You know that building houses pays better than programming in most places... RIGHT? You also know that working at McD's/etc. allows you a flexible schedule such that you can improve your skills and "network" during the day.
Food not Bombs is a nice platitude but it breaks down when you notice that the Bombees are usually well fed
Robocode is designed to use a game-development environment to teach programming. Check it out.
Actually, any combination of capital O's, zeros, ones, and lower-case L's could be fun. :-)
:-)
l0OO1l10
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Comment removed based on user account deletion
They "outsourced" field working in the early 1800's.
They outsourced building the railroads back in the late 1800's (more like an indentured H-1B program).
Importing cheap labor (with or without their permission) is as American as it gets.
I am very small, utmostly microscopic.
We're not slipping at all. It's just that other countries are doing better. Face it, the USA is only 5% of the people so over time, as the developing countries catch up, we'll only have 5% of *everything* -- oil consumption, computer scientists, you name it.
WWII destroyed a lot of the potential competition. But now there's relative peace, thank god, and communictions are giving all people access to the same ideas and creating a global culture. So we're coming from the same place more and more, and doing the same things. Get ready for the USA to be less powerful. It's inevitable, and it's a good thing.
There is no doubt that there are many very
able Indian and Asian programmers/developers.
The internet enables effective technical co-
operation at a distance, so long as objectives
architecture are clear.
This is not, however, how outsourcing is normally
deployed, it is used to build applications, where
it is precisely the definition of the problem is
key. That is why we see, as the parent, so much
cheap app repairs.
Did anyone actually bother to read to the fucking article? Y'all are yammering on about the very diversion that news.com engaged in: that the educational process is to blame. Didn't the 'whooshing' sound over your head clue you in to the fact that perhaps you missed the point?
The problem isn't education, as the article pointed out. The problem is the simultaneous importation of cheap, skilled foreign labor (H-1B work visas) and the exportation of the tech industry overseas. The whole 'education shtick' is nothing more than a campaign of hype used to convince Congress that H-1Bs and overseas outsourcing are Great Things(TM) for the American economy. When in fact they're sucking the life out of the tech industry and are directly responsible for the ability of other countries to compete with the U.S. in the market. First we train their workers up to the expert standards of American workers, then we ship the jobs overseas...great national economic strategy, that.
So cut the crap about education being to blame. You've been hoodwinked just as easily as Congress and news.com have. Try rubbing a few brain cells together, think a few seconds over H1-Bs, overseas outsourcing, and the joblessness in the American tech sector, and see if you can actually zero in on the real problems here.
Max
My god carries a hammer. Your god died nailed to a tree. Any questions?
What sort of restrictions? Environmental policies? Too much regulatory oversight, like the kind that might have prevented the Tyco and Enron scandals from happening? Not enough tax breaks, like the ones that allow many of the biggest American businesses to get away with paying essentialy no tax? Not enough subsidies and protections?
We have a two-party monolithic government concerned only with power and maintaining the status-quo.
We had that during WW I, WW II, and the Cold War. What has changed in our political system that has made America suddenly weak compared to the Chinese?
We have our own fundamentalists that are not interested in personal freedoms.
Agreed, but the Chinese don't have many of the personal freedoms that are enshrined in the Constitution and Bill of Rights, yet they're moving rapidly forward economically.
What the Chinese and Indians and many other people have that we don't have is drive and determination. We have let our society atrophy. The state of Kansas is debating whether "Intelligent Design" should have an equal place in the education system with evolution. We have invaded two countries and are engaged in a global war, but we want our guns and our butter too - look at the number of PCVs (Penis Compensation Vehicles) on the road in America. We think quarter to quarter, always searching for the fast buck. We want quick, easy, painless solutions, and we have succumbed to the belief that individualism equals Americanism.
We Americans have our heads in the sand. We're living on past glories, allowing our democratic institutions to wither away due to lack of interest, and we continue to put forth leaders who represent the most mediocre aspects of our society.
Read the EFF's Fair Use FAQ
When a mediocre programmer gets something "done" and their manager or peer reviewer picks it apart and they have to keep doing it until they get it right (or involved someone who can help get it right), that's taking longer.
90% of the programming jobs out there don't have managers that can understand or indeed read code, much less actual peer review.
In a perfect world, maybe, but the world is not perfect. Most code out there is not peer reviewed and barely tested.
This is not the case in my current job (it's a much more professional shop than it used to be), but the previous few jobs I had this was the case.
Furthermore, even *with* peer review, there's still doing it fast vs. doing it right, and a hell of a lot of the time the managers care more about fast than about right. Corners get cut.
Anyway, assuming the same standards of code quality produced between the programmers we were discussing is entirely unwarranted, IMO.
- Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
If you would REALLY like to accelerate the shift of jobs overseas, make sure you get some good foreigners trained in US universities with a whole lot of internship contacts in American companies, then refuse to give them a work visa.
They'll go back to their home country, where developers probably get paid half as much, and use their contacts to start a code farming business, taking away American jobs.
The best way to keep jobs in America is to have the best and brightest from around the world COME to America and build their industries HERE. Sending them home, in the long run, sends the jobs with them.
E pluribus unum
Starting programming earlier? How about starting teaching how to use tools in the first grade?
Learning programming is a waste of time. Let's teach kids science and math, give them analytical skills, history, geography, etc. Once they know stuff, they'll know what to do with it. Programming by itself is nothing. I'd hate to teach kids something that they can't use. The whole problem with our education system is that kids are not exposed to a great variety of things to begin with.
Yesterday I read the latest volume of Newsweek. There was an article talking about a tough history teacher who asked kids to memorize and remember 10 European countries, where they are located and the capitals of those countries. You call it fucking tought? If it is tough to learn European geography, then I don't know what is easy. If it were up to me, I'd have kids memorize the goddamn freaking map of the Earth so they don't have to bother me with "Where is this country located?" whenever they look at the "Made in " label on products.
He just can't get a job...
...you complain about how there is this societal conformist framework about you are an outcast if you are not into football or baseball (never mind that in other countries, its the same about soccer), and then on the flip side you create your own framework to say "You are not one of us geeks if you don't..."
Trying to replace one form of conformitism with another?
You need to get your head out of the high school mindset whereby if you are not into sports/computers/golf/whatever. Outside of high school in the real world when people have lives and real issues to worry about, some people are into sports, and some people are not. Some people "geek it up", and others do not. And people don't make a big deal about it.
MOD PARENT UP
This post-Generation X generation is not even capable of irony, which requires you to be clued in to some degree. The real problem is that they hire fresh idiot college graduates instead of people like me who might cost a little more but aren't totally clueless. I mean, my VB6 sk1lz are mad phat, yo.
I think one reason why America has done well for so long is because of immigrants
I think America has down well for so long is because of native born Americans.
So there !!!
You know that building houses pays better than programming in most places... RIGHT?
Really? You say I can make $35-40/hour plus paid vacation and other bennies by building houses even though I have no experience?
I don't believe it for a second.
I see a Construction Supervisor position (which I don't qualify for) in the Minneapolis Startrib right now that offers $40k/year, and that might be enough for me to get by long term, but even that falls far short of my previous or current salary.
How much do you think experienced applications programmers make?
If that supervisor salary ballpark, though, I'm guessing that grunts like me (in that context) would make somewhat less. I can't find hard current numbers, but I do know folks who did that sort of thing as a summer job, and the pay wasn't all that good.
You also know that working at McD's/etc. allows you a flexible schedule such that you can improve your skills and "network" during the day.
How would that be an improvement on UI benefits which I'd already effectively paid for during a decade of working full-time, which gave me almost total flexibility, which probably paid better, and which actually allowed me to spend time with my wife from time to time as well as engage in the whole spectrum of fulltime studying and job-searching activities?
I would have gone that route eventually, certainly, but not until I saw that it actually provided me with some benefit.
FWIW, part-time work while also getting UI is subtracted from your UI benefit, and more than 32 hours/week renders you completely ineligible. If you do part time work, they let you keep something like the first $50 or 25%, but the rest is directly subtracted from your bennies.
That translates to a limited gain in money for a rather large loss in time. Most people choose to get a job fulltime or do UI -- the combination of a part-time job with UI usually isn't worth it, and the part-time jobs that paid well enough to be worthwhile that I felt qualified for (PC support, help desk, and that type of thing) weren't hiring experienced people -- they seemingly want new faces that work for low wages and that won't leave when a real job shows its face.
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
OMG, it's not fair, they trained harder! Well hello! Is it cheating to produce programmers who can actually solve problems and write code?
He doesn't say it isn't fair. He says it is not fair to take the results of the contest and extend them to "American CS students can't compete." Have you really done these programming contests? Are you seriously implying that dynamic programming with memoization is something you are even remotely likely to need in the average IT software project? Bipartite matching? Prime factorization?
He's pointing out that some schools spend incredible amounts of time training for the contest... not training to be better programmers, but training to be better in programming contests, which is a very different thing.
I was a H1-B worker - I made great rates (thanks very much) and so did all the other H1-B's I know. It's convenient for Norm's flawed argument to repeat this myth, propagated by programmers who think they should have had my job because it was their birthright, not because they could have done it better.
Um, excuse me but we are citizens of this country and you are not. You would not even get to come here and work if it were not for a flawed relationship between labor and politics. Is it your birthright to go to any country you wish and work, or is it a courtesy extended by the government of that country?
When Chinese (or Indian, or anyone else) programmers turn out to cost less AND be better programmers we'll be able to thank guys like Norm, who wanted to deny there was ever a problem.
The opinions I'm hearing from various places doing outsourcing is that the programmers are not better, but they are a lot cheaper. I've yet to read anything credible suggesting outsourced work was both cheaper and better.
Education is a better safeguard of liberty than a standing army.
Edward Everett (1794 - 1865)
"From this I guess the author means that it's OK to be at the same level they were eight years ago."
He is just talking about how percentiles work, and that the news isn't as alarming as it sounds. He isn't saying America shouldn't be motivated to be better, he is just speaking out against the alarmists.
"OMG, it's not fair, they trained harder! Well hello! Is it cheating to produce programmers who can actually solve problems and write code?"
No, he is saying that they are spending almost all their time preparing for a test, which will certainly help them score better than someone who doesn't. It doesn't necessarily mean they are really better programmers, or better at solving real world problems.
"I was a H1-B worker - I made great rates (thanks very much) and so did all the other H1-B's I know. It's convenient for Norm's flawed argument to repeat this myth, propagated by programmers who think they should have had my job because it was their birthright, not because they could have done it better."
If what you say is true, then why would companies be hiring you? You think American companies outsource and hire H1-Bs out of some idealistic belief in a "global economy"? Of course not. They do it because it is cheaper. That said, there are valid arguements for allowing H1-Bs, but don't claim that the obvious is a "myth".
"Too much time in academia Norm. If you can't do the job right it really doesn't matter how cheap you come. The way to compete is to be the best, there is no other way."
Ironic for you to claim he is the naive one. Companies are often very short sighted, with nothing mattering to them but the next quarter's earnings. In that environment, cost is everything. Even in every day living, cost is a BIG factor in any product. Ever bought a cheap item, knowing it would likely break quickly, but were willing to take the risk because it was so cheap? The same principle applies. In fact, that product was most likely the product of a cheap labor force that produced poor quality products. You can't distill an IT product into it "working or not working". It isn't just a matter of getting it working, it's how much money and time it took to get it working, as well as how much of the planned functionality was implemented.
"When Chinese (or Indian, or anyone else) programmers turn out to cost less AND be better programmers we'll be able to thank guys like Norm, who wanted to deny there was ever a problem."
Bring it! That's what competition is about. I have no doubt that India, China and other countries will begin to earn reputations as technology leaders. America won't hold the huge technology lead it's had forever, but I feel confident we will stay a front runner for a very long time. But, if things start leveling out as the "global economy" theory suggests, then so will your competitive advantages in cost. In the end, the quality of the product is what produces it's value, and therefore its cost. If you're the best there's no reason to be the cheapest.
Actually, if they're smart and motivated, they're more likely to be leading revolutionary assaults on society. In the past, we've offered business as a way to do that. If we put education and business entry out of reach, we're likely to get less benign methods of people attempting to change the world. That's why making sure that people can get education and jobs that pay them enough not to starve is a good idea.
Of course the Libertarians will tell me that as long as 0.00001% of the population can claw itself up from the bottom with good hard work, that's good enough. But eventually, the economic cards become so badly stacked against the individual that he *will* find a different outlet.
That is all.
Not at all. Even basic skills in programming give people tremendous advantages in modern society. While I agree that it'd be great to teach kinds more fundamental stuff like analytical skills, that's outside the scope of this discussion. I think we both agree that the education system needs to be reformed.
But, simply put, there are many opportunities that a programmer has in life that a non programmer doesn't even realize. The number of such opportunities goes up as the overall computer usage in society goes up. This is not like using a hammer. Most people do not use a hammer every day, because a hammer is a relatively specialized tool compared to a computer.
Slashdot. It's Not For Common Sense
The ACM International Collegiate Programming Competition is in no way a barometer for quality of CS teaching. I am the perfect example.
As a sophomore in college, I participated in the regional ICPC having only taken 1.5 semesters of college-level CS classes and 0 semesters in high school. I was on a good team, and we took first in our regional.
I finished up that semester, and was halfway through the next when we got to World Finals (ie: 2.5 semesters under my belt: intro, data structures, 0.5*(digital systems, assembly)). Our team tied for 11th. This was 2002.
Ever since then, I haven't gotten back to Worlds. Here are the reasons: first retry, we got hung up on input...kept getting IO errors => luck (or lack thereof). next retry: placed 2nd which is usually a ticket to Worlds...except rules stated only one team per school goes to Worlds, and guess who beat us. last retry: we just plain had an off-day.
OK, sure. I can accept the fact that my teammates were the main reason the first year we went. But the fact remains: I know plenty about this contest. And what I can say with certainty is that the results of this competition have absolutely no bearing on industry performance. Most problems in the contest are too abstract for real-life implementations. Seriously, how often will you need to implement a string hamming distance program... much less one that runs in O(m*n) time? This contest deals with three abilities: recognizing the type of algorithm needed given a short statement (and knowing a crapload of algorithms to pick from), fast typing, and speedy debugging skills.
Often, the mantra for a difficult problem becomes: it doesn't need to work for all cases... just the ones the judges use. Sometimes that boils down to brute force, exponential even, with a few optimizations.
Not winning the ICPC just means you didn't have enough experience with the problems came up on the contest. And since the problems aren't the kind you'll be implementing in real-life, you have to practice LOTS.
Winning the ICPC means you have some damn good abilities.... just not necessarily ones that translate well into industry.
IWARS.
People, in general, disappoint me. Politicians even more so.
I am an instructor for an LSAT prep-company, and I see this phenomenon all the time. I think that the vast majority of kids in my classes are there because their parents want them to be. Needless to say, those kids aren't the hardest working. I am afraid that the sky may indeed be falling in the U.S. - this phenomenon may be more prevalent than we would like to admit.
That phenomenon is not limited to the US by any measure. Parents everywhere have an idea of what they wish their children would be when they get older. Consider the very countries that we seem so scared of - India, China, Japan, Singapore, etc. - Those countries are well-known for having parents that push their children in a particular direction (usually math and science) at the exclusion of other interests. Those parents come here and do the same thing here. It works pretty well.
You seem to be a little bitch keen for an argument at any cost. I know this because you've read selectively and jumped to conclusions not supported by what I wrote or by what Norm wrote.
"Have you really done these programming contests?"
Well I said so, didn't I?
"Are you seriously implying that dynamic programming with memoization is something you are even remotely likely to need in the average IT software project?"
Yes. Actually what you really need is the ability to quickly formulate correct colutions to problems, which programming competitions are great for teaching.
"not training to be better programmers, but training to be better in programming contests"
See above - I disagree.
"we are citizens of this country and you are not."
That might have been true some years ago...
"You would not even get to come here and work if it were not for a flawed relationship between labor and politics"
Your own jaundiced, handouts-for-the-lazy-and-stupid sort of politics.
"Is it your birthright to go to any country you wish and work"
Nope - I said that some think jobs are their birthright regardless of their competitiveness, not that I think it's mine.
"is it a courtesy extended by the government of that country?"
It's a courtesy, but let's not pretend it derives from altruism. The USA does very well out of H1-B. The world's best come here, pay taxes and many become citizens.
"the programmers are not better, but they are a lot cheaper"
Again you miss the point. Norm's apathy (and yours) is going to allow this situation to change, and one day the cheap programmers will be better. You might want to point to the part where I said this was the situation today - oh wait, I didn't. You'd better read through the original post - and probably the article - again. Slowly. Have someone explain the words to you. It's a damn shame your comprehension is so limited in what I assume is your first language, perhaps Norm's point is just that programming education is good relative to language education.
"they are spending almost all their time preparing for a test"
It's not even as if the "test" has a known range of questions as a year-long course might. How do you prepare for a programming competition without becoming a better programmer? Get plenty of problems solved, quickly - that's how you win. A very good skill to have as a programmer. One that will make your future employers money!
Eh, I'm bored with this. Good luck all you people who still say there's no problem, H1-B's are slave labor, those sneaky Chinese studied programming contests rather than programming. It's a nice fantasy, and far more comfortable than trying to figure out how to maintain a technical and economic lead. It's only your standard of living at stake.
I had a professor like that. Adjunct Professor Bob LaBarre, taught Discrete Math (and a bit of Algorithms and Complexity, I think, though I didn't get to take that) at the University of Connecticut one night a week. The first day we saw him, he reminded us all of Milton from "Office Space", but he turned out to be one of the best instructors I ever had.
We were consistently a chapter or more ahead of the other sections in the same class, our final was a three-hour ordeal of fifteen relatively short-answer questions that I felt a genuine sense of accomplishment at answering. In whatever theory classes I took in the following two years, I had already seen the first few weeks' of material. When we had an extra class left over because we'd finished the scheduled material, we learned about Arrow's impossibility theorem.
And then he got fired because he was apparently making the class too hard. Not that he flunked more people than he was supposed to---just that he made the class too challenging. Pfah. Stupid administration.
--grendel drago
Laws do not persuade just because they threaten. --Seneca
The question is not "Can Johnny still program?", the question is "Can Johnny still program for 25K a year?"
Is there some sort of clever reference (e.g., Xerox PARC) here which I'm not getting?
--grendel drago
Laws do not persuade just because they threaten. --Seneca
He still made a valid point, and even if he's an AC who'll never come back here, I'd like to know how teaching a few handpicked elites is less "ivory tower" than a large state university.
--grendel drago
Laws do not persuade just because they threaten. --Seneca
Oh my God, what has happened to /. 's moderation??
--- Grow a pair, liberals... stop letting the Republicans bully you!
With overall enrollments in CS decreasing, we need to look at how to get members of BOTH sexes interested in CS.
What's wrong with beeing mediocre?
Or should all Americans be some kind of Arians?
Yes. Actually what you really need is the ability to quickly formulate correct colutions to problems, which programming competitions are great for teaching.
I guess what I should have asked is "have you really worked in IT?" Only a moron would come to the conclusion that fast algorithm coding speed equates to the primary skillset needed by IT in the US. So go ahead and live in your little world. Ask your recruiter or search Dice/Monster to see the reality of the situation.
The only thing these contests test for is your ability to quickly determine and implement the correct algorithm to solve an academic problem. They're fun. I compete in both TopCoder and ACM's programming contest, but I'm happily not so jaded as to think that since I can write a write a breadth-first search in my sleep and most CS grads can't that I'm somehow a better programmer.
Johnny can't think much less program. Some attribute it to too much TV others to increasing Hg in the environment.
I'm getting tired of all these limp efforts to help Johnny. If parents can't teach Johnny to clear his head and start thinking for himself, he and a lot of hangers on in the academic community can start looking for alternate resources beyond the taxpayer to bail Johnny out. Put all your effort into those few kids who show the self-motivation to learn and let the rest go, making it clear to them they are not worth bothering with. That will at least stimulate a few more to reconsider their slacking ways and if not, thats their problem. If society has problems with them, lock them up, its a lot cheaper than spending money trying to teach people who don't want to learn and certainly it will limit the reproductive success of those parents who think that the rest of us are willing to pick up if they slack off. Just be sure to keep the few good students away from the tuna fish sandwiches.
I say put Johnny and his parents at a disadvantage and let them figure out how to rectify his problem with learning. With support for issues such as moral values, religious virtue, and the war in Iraq, we don't need that as many scientists and academics anyway. As a country we are dumbing down and outsourcing brain power. Its simply more cost effective.
Students will, however, be needed on the front lines as there will always be jobs for soldiers.
Japanese automakers are making US auto makers obsolete. Its just that the twits in the media taken a few decades to figure it out. These kinds of shifts take time and in the US few have more than a perspective that projects more than a few months in advance.
Get over it. We are putting our energy into becoming more righteous than the rest of the world. That'll teach em.
As a grad student in CS here (coming from India) I have observed that life is usually pretty lonely for those Americans (and non-Americans too) who are really into their subjects. Many of them are automatically qualified as date rejects, and then there is also a tendency to herd and form a meritocratic circle.
Rupert Murdoch makes money by dumbing down to the average joe. By sheperding their thinking he makes big bucks and pressures politicans who might stray out of line. He and his advertisers know that for every genius watching their commercials there are a hundred just smart enough to turn on the boob tube and watch the reruns. They are simply a much bigger market. Murdoch is the 20th century equivalent of P. T. Barnum.
Its not a symptom of the educational system. Its just a sympton of how big business and social/pollitical stratification now operate in the US and other countries.
Get used to being at a disadvantage. Its your fate.
Ask yourself, what is an intellectual like? What kind of atmosphere would an intellectual seek out? What kinds of things would appeal to an intellectual? What kinds of rewards would an intellectual seek out?
Now, take a peek around the US climate. Idiocy is shoved down our throats from every angle. Television is a waste-land of vapidity, bookstores stock light-weight fluff, education is the first thing to get cut whenever the wolverines in office need more pork to go around. Those who study and work hard are looked down upon as "geeks", "nerds", "bookworms" and worse, even to the point of getting beat up by the pick-up rednecks whenever they can't find any of their favorite minorities.
When I lived in Las Vegas, it came up to a vote on whether to build more libraries. Citizens of the city, who were thrilled to get 3 more hootie bars, 10 more casinos, and that "Wheel of Fortune" was auditioning at the Luxor, came out MARCHING IN PROTEST against building more libraries - the cheapest possible government expenditure!
Just today, there was a story in the news about Utah students who hooked a GPS up to a wheelchair to produce a satellite-guided navagation system for a small vehicle. Who are they looking to offer the idea to for further development? Car manufacturors, so we can have self-steering cars and have fewer accidents? Nursing homes, so more handicapped patients can have better mobility? Heck, no, they're gonna sell it to the military!
What is the richest person in our country rich for? A superior feat of engineering? No, a famously inadequate platform which he then keeps in business through legal bully tactics.
Who's the most famous American scientists? Einstein, Bohr, Feynmann? What was their field? Physics. What did we do with their research? Make bombs.
Hello, Average American. I'm an aspiring scientific researcher, looking for funding for my projects. Would you be interrested in contributing for... AIDS research? "No, way, the sooner the fags die, the better!" conservation? "What, are you some kinda tree-hugging hippie?" alternative energy resources? "AAAAHHH! You're trying to devalue my Exxon stock!" general medicine? "No, your stem-cell research is an abomination against God!" computer science? "Thank God we have AOL to protect us against hackers like you!" ah...
Hey, Average American! Name five NFL players! Name five NASCAR drivers! Name three Tournament-winning Golfers! Name ONE Nobel-prize-winning scientist!
Yeah, America has *no* problem keeping ahead of the pack! We're *number one* and anybody who says different is just agenda-pushing and fear-mongering! Now don't bother me, I'm on my way to get that Godless evolutionary theory out of my child's educational curricullum.
Meanwhile, other countries see brains going to waste, and wouldn't at least one or two of them either strive to encourage their own brain-power or offer bigger salaries in the hopes of luring America's wasted talent overseas? What do you think, Average American? "Oh, no, anybody too stupid to speak English wouldn't think of that!"
You must be one of the guys Berkely (elsewhere) turned down for an interview because you weren't qualified.
Lets face it. Excellence has a way of rising to the top and if its not excellence you can call it fancy footwork and impressing the masses, or whatever. Obviously, the gent who got the job has learned his lesson and the folks at Berkely WANTED HIM to be working there and obviously not JERKS like you. IT WAS THEIR CHOICE TO MAKE BERKELEY BETTER AS THEY SEE IT.
You might do well to learn your lesson.
In the meantime I look foward to reading his research.
It is you who can fuck off. Or better yet enlist for the front in Iraq. We need more troops on the front lines and recruiting is down.
American Taxpayer.
Definitely good insight. Please mod chade01 up!
It's like Visual Basic for Video Games. Pretty cheap, nice libraries and easy to get started in. It's not going to get every last frame out of your computer, but it's really fun and easy to get into. I use it to create little games for my 4 year old.
Check it out.
http://darkbasic.thegamecreators.com/
You don't mention that they did that because our government forced them by threat of tarriff to do so. Now that the plants are here, it's cheaper to produce the cars here than to transport them. But the plants would not have been here had it not been for government intervention.
That is all.
I learned BASIC, Cobol, C, C++, Lisp, Assembler, Bash shell scripting, and Python in that order. Every language had it's strengths and weaknesses. Each language taught me valuable things about how to think about programming. Each language had features which made coding certain kinds of programs easier than others, and each had ways in which it was harder to code than all the others.
There is no magic language that will make you a perfect programmer, any more than there is a magic car that will make you a perfect driver.
Another problem I'd like to note is that the gap between what you can code yourself, and what is considered "commercial-quality software" is ever widening. Back in the days of the Apple ][, you could easily learn to "roll your own" games/software that was useful enough, in relation to what you could easily get from the outside, that it felt worth the effort to learn and tinker.
As time went on, it seemed like what you could "roll your own" on became continually less and less impressive compared to what everyone else "could just get at the store", that the "wow factor" of homebrew coding just evaporated.
I could say exactly the same think for homebrew electronics tinkering, by the way.
It seems like the F/OSS movement has breathed a whole new life into homebrew development, and has shown that you can make a difference outside a corporate development team. This is a wonderful thing, but... It usually does not extend to games, and it isn't very visible to the average home user. (i.e. not as much of a "show-off" capability)
Those of us who started in the Apple ][ and earlier days have a real edge on the new kids, in that we were able to build our knowledge in a day when there were greater personal and social rewards, and when there seemed like more of a "point" to home coding.
Why don't they just let people do what they are interested in, instead of trying to somehow trick or bribe people into doing what they are not interested in?
Damn, I must be getting old.
There are many incarnations of these.. perhaps they've fallen out of favor, but it's how I learned C a long time ago.
There's a graphical shell that displays the output of your program in a controlled space.
There's a bunch of real c (tm) functions that let your "robot" program do things.
There's constraints on how big you can make the robot, or tradeoffs with speed, etc etc.
I absolutelyfuckingloved this kind of thing when I was younger, and in university, wrote my own little simulator environments for it. I haven't seen anything like it in years though, although I'd bet there are several in freshmeat. This sort of thing is how you teach programming, not boring old crap about simulating cannonballs.
..don't panic
1. If you're an H1-B, you're NOT an immigrant, you're a guest worker. You don't belong here, and the only reason you ARE here is lobbying by high-tech companies and their greedhead owners. SO FUCK OFF.
2. American universities should hire their own U.S. grads, not arrogant foriegn fucks who have the nerve to talk shit on Slashdot about their situation. SO FUCK OFF.
3. What, weren't there any jobs in Australia? People down there find you as annoying as we do? Why come here, why not just work in your own fucking country? FUCK OFF.
I think that about covers it.
Yeah, I think it about does. The bits I put in bold are what I think are the most telling lines in your post.
I'm reposting what you wrote in full, not to play flame games (got tired of those in grad school) but to illustrate how thin this veneer of protectionism really is, and what lies underneath it: pure racism.
I'm sorry you think I'm arrogant. I think you are either afraid (perhaps because you've been out of work for a while) or just immature. You certainly don't have a clue about how science works, which IMO makes your Slashdot activity more inappropriate than me. Regardless of the fact that I am "foriegn" (LOL)
>>Long before Olympic athletes from all countries became quasiprofessionals, the Eastern European countries were seeing >>to it that training for the Games was their athletes' full-time job, giving them a major advantage over other nations' >>athletes."
>OMG, it's not fair, they trained harder! Well hello! Is it cheating to produce programmers who can actually solve problems >and write code? What exactly is coursework for if it isn't preparation for the kinds of problems you solve in programming >contests? I've done a couple - it's the same thing, you just have to be faster and more accurate, compared to a >programming assignment.
Have you ever been in the ACM Programming Contest? Winning is based simply on banging out code as fast as possible.
Sure, they make sure the program actually solves the problem, it can't just print the answer to stdout, but solving in a general way, a portable way, or checking for errors, or generally being robust, only hurts you. So if open a file, and because you have good habits, you check to see if the open succeeds, well you probably just lost, because there's another
a team who didn't, and you lost the time spent to type it out... Generally, the contest will reward good typing speed more
than anything else. So, basically any good habits you may have learned from a Computer Science Program will only get in the way... It was cool to be in it, fun, but I wouldnt make any conclusions that the winners are necessarily the best
engineers, or even programmers.
So it is like the olympics before we allowed pro's in, amateurs would have to also focus on things like working, or going to school, were as Russia could take some kid and have him train for 1 olympic advent for life... so , its possible that some countries are , say, training specific students not to write robust code, but mainly type fast, just to win the contest.
Like compiler writers beating benchmarks.
The US companies mass-produce goods and undercut prices in third-world countries. There has been no qualms about that. Whereas when India and China mass-produce smart people and export them to US, there is a big uproar. The US is still lobbying around the world for open markets. But wants to protect its own interests by imposing severe restrictions on what other countries can export to it. Another example of the US's double standards is the NPT. The US has enough nukes to decimate the world and do it over and over again several times. Is the US willing to defuse all nuclear weapons it has? (Oh! I forgot, the US is the saviour of Planet Earth from aliens and needs nukes to fight them.) Why the hypocrisy, Uncle Sam?
I live in the twin cities area (same as the other poster) and I was off my computer job for part of the period. You have wrong about what the market it like.
I choose to build houses when unemployment ran out. I started at $12/hr (the was a couple years ago), though I did get health insurance. (most contructions jobs to not offer insurance to workers less than supervisor, but they pay a little more) My foreman was making $20/hr, plus a company truck, and he was doing very well. Enough money to live on if you are careful. I had to work long days, and every Saturday, and I was still falling behind on my bills. (Fortunately interest rates were dropping, at the end I was able to refinance and drop my house payment. If I had known I wouldn't have bought this house)
When I found a job a year latter I was offered about half again more than the foreman was making. This is a wage that is generally less than what I'm worth. I was also able to drop my hours to 40/week.
The big advantage of not working construction is in my body. I no longer come home in pain. I no longer get home from work, and leave again in 7 hours.
McDonald's is a better choice if you go into management. If I had stuck with them from high school I would always make as much or more than I made elsewhere (They in fact made me that offer back then). I also would not have a real university education, so I would be stuck with them. Of course beautiful high school girls have to talk to you, but that is the only real advantage. (even though some would sleep with you, if you are that type, you would be arrested for it) The stress is high though, and the hours suck. In theory it is flexable, but in practice that just means you never know when you will be working.
There indeed is a "labor shortage" in academia, take a look at how many American graduate students there are in engineering - how does the author propose to address that.
My brother is an engineer, and the market is rough right now. You are looking at quantity only. The fact is that engineering is moving overseas because it is cheaper to do it there.
TFA claims paying H1-Bs less than Americans (which AFAIK is illegal) is one of the problems - how are they able to get away with it?
Here are some possible approaches from teh blog:
1. Resume Templating - Add every skill that a given H-1B candidate has on his/her resume into the "needed skills" line of the application form. That way the "needs" profile will never match a citizen above the probability of winning the Instant Millionaire lottery. Government inspectors are usually too overworked and/or not knowledgeable enough to check and follow-up on actual skills used on the job, especially if there are more than a few. (This approach was also covered in another message.)
2. Undocumented Experience - Claim a highly experienced H-1B applicant is really only a beginner, and thus a company gets experience at beginner rates. Inspectors cannot realistically check somebody's skill background as obtained inside a foreign country. If they do find out, claim you didn't know. Just make sure the experience is not on your "official" copy of the visa worker's resume. It is an easy lie to get away with.
3. Take Advantage of Situation - Work the H-1B overtime or weekends without extra pay. Complaining risks getting the H-1B sent home, so they usually keep quiet. Plus, they may not understand how our legal system works or be intimidated by a process foreign to them. (US money is worth more to them due to exchange rates when they eventually go back home, and thus they often just live with labor abuses without complaint in order reduce risk while obtaining their financial nest-egg.)
4. Tinker with Titles - Information technology (IT) titles are often vague, inconsistent, and overlapping. It is hard to penalize a company for using the wrong IT title on an application form because there practically is no such thing as an objectively "wrong title" in IT. Plus, most IT work involves a mixture of a lot of different skills, such as programming, analysis, debugging, customer support, documentation, etc. There are no consensus metrics for categorizing these based on ratios or percentage of usage.
5. Outsource the Buck - A big company can contract the H-1B from a small, fly-by-night company that keeps a portion of an H-1B's pay, delays paychecks, does not pay overtime, etc. The big company that contracts out is then not exposed to the risk of dubious activity. They can claim that they did not know the contractor was abusing the visa workers (and may not know). Such small contracting companies are often staffed by people from the H-1B's originating country such that if they are caught or risk being caught, the company folds up and goes back to their home country where they can do other business. The risk of real penalties is very small. (Cross-country white-collar crime investigation tends to be poorly coordinated between countries involved.)
6. Shred Citizen Resumes - Companies applying for visas are required to place an ad in a typical job listings source and review received resumes or applications for qualified citizens. Government inspectors may ask to see such resumes. However, if somebody takes citizens resume and shreds them, nobody besides the shredder will ever know they existed.
7. Lopsided Interviews - Government inspectors don't sit through most live interviews. Thus, a company trying to weed out citizens can simply ask tough questions when interviewing the citizen, but be easy on the visa candidate.
They have to get an American degree to be competitive
Why is that? What is wrong with say Indian universities?
Table-ized A.I.
"How can American engineers compete with cheap, imported labor?" Too much time in academia Norm. If you can't do the job right it really doesn't matter how cheap you come.
That's not true. The real world is not like programming contests for the most part. They are an interesting sport, but not highly practical.
Second, one can throw boddies at the problem, so that wages make a difference. Have more code reviews, more testers, etc.
Table-ized A.I.
Yeah, look at that fuckwad gook father on King of the Hill.
Actually, it's no surprise the C/C++ example you give wouldn't make much sense to a budding young programmer - it doesn't make much sense, anyhow. If you're using cout, then you should include iostream.h, not stdio.h - that one's for printf and friends.
Of course, outside of that, I agree with what you said (even though I'd say Perl is better than Python - any language which depends on whitespace to determine block structure should be taken out and shot), and this minor confusion just is another example of why C and C++ are quite useless when you want to teach someone how to program for the first time.
Although, one might add, it does get even worse than that. The first CS courses I had myself used SML/NJ as the programming language; I don't want to say anything against ML really, but while it is a powerful language, I think it's just about as userfriendly and suitable for introducing students to programming as C++ is. The reason why we used it, BTW, was that the professor's personal opinion was that anything that's not a functional programming language is inherently evil and inferior - it often seemed like he was on a personal vendetta against "normal" (imperative) programming languages.
We did ultimately get one of those, too, but it was Modula-2 - arguably one of the most useless languages ever invented, one that squeezes even the last remaining bits of life out of Pascal and makes it difficult to do just about anything useful.
Fortunately, both me and (most of) my friends already had a background in programming; but there were others that were not so lucky, and I think ML and Modula-2 managed to destroy just about any actual interest they might have had in learning how to program properly.
Ah well. The good (?) old days.
quidquid latine dictum sit altum videtur.
Whoops, good catch...well, I guess that points out just how little I use C++ ;)
-Jay
No problem. :) Have you seen "The 11 evolutionary stages of a programmer", BTW? The C++ examples in there don't need any comments, I think. :)
quidquid latine dictum sit altum videtur.
hahahah! That was great, thanks.
You're welcome. :)
quidquid latine dictum sit altum videtur.
If what you say is true, then why would companies be hiring you? You think American companies outsource and hire H1-Bs out of some idealistic belief in a "global economy"? Of course not. They do it because it is cheaper. That said, there are valid arguements for allowing H1-Bs, but don't claim that the obvious is a "myth".
As a former U.S. work visa holder, it's not because we are "Cheaper" it's because there are lots of unqualified people out there and companies want to cast as wide a net as possible.
Most visa holders (from Canada, at least) make very , very good money as a temporary worker in the U.S.
-Stu
Because you are obviously not versed in what a haiku actually IS, I have decided as a public service to share some with you. Here goes (ahem):
You dumb aussie twat,
Arrogant fuck-head dipshit,
just go the fuck home!
Notice how there are 5 syllables in the first line, seven in the second, and five in the third. This is the norm for haikus, at least the simple ones that get play outside of Japan.
Here's another:
Oh, you cocksucker,
motherfucker, two-bone bitch,
you make my balls itch.
This one was more difficult because I had to re-parse an old childhood rhyme (Cocksucker, motherfucker, two-bone bitch, every time I look at you my two balls itch). Yeah, I grew up in a rough neighborhood, so sue me. But the popular rhyme schemes of the day aren't haiku, which is the subject of the current conversation.
Let's have some fun with this:
Oh, Australian,
May you confuse H2O,
H2SO4
Drink up, buddy! Or, perhaps,
May the Aussie Fuck
While here, meet a local guy:
serial killer
Or,
Oh, he's visiting
Cali's La Brea Tar Pits!
Hey, cool, he fell in!
Obviously one can go on in this vein. The application of your new-found knowledge is left as an exercise to the reader.
Farewell! It's been a fine buncha years!
An A/C, grossly offended by my response to the Aussie, said " You must be one of the guys Berkely (elsewhere) turned down for an interview because you weren't qualified." (and a bunch of other claptrap I found mildly amusing).
Nope, sorry, I find California a bit too expensive, although I do enjoy vacationing there. I'm a New Yorker, and I prefer this side of the country (it's an East Coast/West Coast thing). However, I'm touched by your concern -- but don't worry, I'm gainfully employed as a software engineer, and I make a rather nice wage.
As for "qualified", I have a degree in computer science and I've built a few systems that were filed for patent, although sadly, I didn't make any money off that.
Perhaps this would be a good time to mention the old saw, "Those who can, do. Those who can't, teach."
I love trolling. A good flamewar gets the blood flowing, doncha think?
Farewell! It's been a fine buncha years!
I hear people like you spouting all of these observations, but in my experiences, they are almost never true. I've worked with many H1-Bs from all kinds of countries, and know people in the field, and they certainly do not make only 45k anywhere. Usually the H1-Bs that I've known make more than I do, and I assure you that I'm far from underpaid.
I guess the moral of the story is that you can take the word of your imaginary 45k-making Indian friends over third parties trying to pass truth around any day of the week.
Notice how there are 5 syllables in the first line, seven in the second, and five in the third. This is the norm for haikus, at least the simple ones that get play outside of Japan.
It's pretty evident by now that "simple" is your metier, but haiku is a rich and varied form including renga, haikai and.... oh, what the hell.
I said "Haiku" and you jumped. That's entertainment enough for me. Let's see what you do if I say "shotgun enema".
Why, would you like one? One barrel, or two?
Farewell! It's been a fine buncha years!
"Avoid employing unlucky people - throw half of the pile of CVs in the bin without reading them." -- David Brent
throat all the way back to Brighton!!!!!!!!
The Miserable Freaking Jews running the US universities plow this crap that I've been stepping in/over for the last 25 years. Shut up and go back home - we are 7 Trillion in debt and our wages are stagnant yet the US still imports these needless whiners. Freakin'. Better yet - why don't you go to Pakistan and get the hell out of the US that you obviously look down on. You could be chipper to your foreign friends there in Pakistan - we don't want you ranting here at our hatred of you. Or, put all of your bright minded H1B genius friends on a huge tech conference luxury liner and sink that damn thing. We would still be nice enough to throw you a life-vest but you are not coming back to the US..no sir!.. stay in Haiti or Cuba and smoke some cigars wrapped with your H1B visa!!!! Now there you go, Doesn't that smell real good!!!!!!!!!!!
There are so many ways around all those preconditions that they are not worth the proverbial paper that they are printed on.
The federal government does NOT enforce these H1-B visa laws any more than they enforce laws agains that other source of cheap labor, illegal immigration.
Overseas companies that specialize in providing cheap 'engineers' work hand in hand with US corporations to avoid the impact of these laws. Doctored resumes, fake employment records that raise average salaries stats but are never paid to anyone, providing cheap crowded quarters for living space, etc are common.
US companies intent on using H1-B or L1 visa labor will tailor their position profiles to exclude most Americans and appeal to their prior selected foreign H1-B applicant who is already lined up for the job. All they are really doing is going through the motions to cover their legal backside.
The pigeon-hole game of saying that a proggrammer has to specialize in a certain language to be considered while ignoring all experience in a very similar language is a part of this scam by HRs around the country to ease out Americans and replace them with immigrants.
The worst of all this is for the immigrant that finally gets his citizenship as they end up at the very bottom of everything - not cheap enough for those inclined to hire foreign labor on one hand and having to deal with prejudice against immirgants on the other hand.
There should be ZERO H1-Bs while their is significant unemployment in the tech sector.
The H1-B is supposedly only for labor shortfalls and it is better for our nation to retrain Americans than to hire someone from overseas and in effect train the competition we will face ten years from now.
Yea, and a monkey could be trained for each job. They only make 30K-50K and their buying power is shrinking.
Darkbasic is an excellent tool, really easy to use. .dlls if you feel the urge to extend its capabilities and the pricepoint is the same as games, not development packages. Sorry to sound like the cheerleader here but we've been using it (in its "Pro" version) for rapid prototyping here in the lab. Most people who haven't used it chuckle at the notion of it but are impressed with the results given you can actually go from idea to prototype implementation in a couple of hundred lines of code.
No more complex than BBC BASIC was back in the day but you can manipulate 3D space, cameras, particle effects etc. Also, it has support for networking code and
You do indents anyway - then why you need to write all these curly braces? They are redundant, actually.
Just try using Python for a few days and you will see.
And Perl is making writing ugly code too easy. Python encourages readability.
Brain is my second favorite organ.
Well, that's just why I do use braces - readability. They make it immediately clear what forms a block and what doesn't. One might argue that whitespace does the same thing, but I personally feel it's too volatile really. There is a reason why more or less all programming languages use braces (or keywords, or some other explicit construct) to mark blocks, rather than relying on whitespace.
And with regard to ugliness... if *that* is the only thing you can find to complain about, then Perl must be a pretty good language indeed. :) And actually, FWIW, even though I don't think that Perl looks uglier than other languages, I think it is worth pointing out that much of the (perceived) ugliness stems from the fact that Perl also tries to apply what could be called a sort of Huffman coding to the language itself - it should be possible to express common idioms in a short and concise way, or at least that's more desirable than saving the concise expressions for things you rarely do at all.
I mean... sure, something like ($escaped = $string) =~ s/\\/\\\\/g; may look intimidating when you're not familiar with the language, and it may not be immediately obvious to a novice what's going on there, but the same goes for (say) while(*t++ = *s++);, too, doesn't it? When you learn a language, you usually get past the "novice" stage pretty quickly - so why should the language be artificially limited just so that novices may need two hours less to learn it? A language's expressiveness determines its usefulness, and if you limit the former, you are also going to limit the latter. Turing completeness looks nice on paper, but in the real world, there's much more important things - or why do you think we're having compilers with literally millions of lines of code instead of just programming everything in Brainf*ck? :)
As for the "too easy" part, that's really rubbish, too. There is no such thing as *too* easy, and claiming that limiting what you can/can't do in a language is only going to discipline the programmer (which many people seem to do) is wrong. What do you think is more bug-prone? A one-liner in Perl or a 20-liner in C that has to go to lengths to reproduce the same behaviour that can easily be had in Perl? None of us is perfect, and no level of discipline, experience or caffeine can make sure that we always know exactly what we're doing, that we have all corner-cases in mind constantly and all that. The fact that it's easy to write even relatively complex programs in Perl is *good*. A car may have more controls and take a bit longer to learn how to handle than a bicycle, but wouldn't you agree that in the end, a car is more useful/powerful/versatile than a bike?
(Speaking of caffeine, I haven't had any today yet, so take this whole thing with a grain of salt. I also don't mean to diss Python in particular; I don't like it, but that's really just my own opinion, and if someone else uses it or finds that it fits their own development model better than other languages, that's fine, too. But for some reason, it seems (maybe wrongly so) that it's the Python folks in particular who always ridicule Perl, and I think that's wholly unjustified.)
quidquid latine dictum sit altum videtur.
I rarely take part in anything even remotely resembling "language flamewars" but as former Perl programmer who recently switched to Python I think I have to reply
That's because people who created all these Algol-derived languages hated FORTRAN column-fixed syntax, I think. And then it stuck :-) Read
here or here.
Perl is "grown" as "there are more than one way to do it". Python is designed to be "there is one obvious way to do it" . It does not limit your "expressiveness", however - you can write ugly and unmaintainable code in Python.
I prefer 2-liner in Python. And it might be more understandable by somebody who've never seen python code before. The whole Python language is designed to be readable.
Yeah! It's easy to write complex Perl programs. To fix and maintain them - that's the hard part. And "python car" is no less powerful than Perl truck :-)
In summary: I don't try to ditch Perl, I'm trying to convince you to overcome your "syntactic-whitespace-hate" and try Python a little more. See what Eric Raymond says ("Oddly enough, Python's use of whitespace stopped feeling unnatural after about twenty minutes. I just indented code, pretty much as I would have done in a C program anyway, and it worked.")
Speaking of myself, I used Perl for six years and recently switched to Python. It's typical - not many doing the opposite... That's why "it's the Python folks in particular who always ridicule Perl" - they usually know both sides :-)
Brain is my second favorite organ.