Indian College Students Face Bleak Prospects
The New York Times has a piece on the lackluster prospects facing the great majority of Indian college graduates. Most of the 11 million students in India's 18,000 colleges and universities receive starkly inferior training, according to the article, heavy on obedience and rote memorization and light on useful job skills. From the article: "In the 2001 census, [Indian] college graduates had higher unemployment — 17 percent — than middle or high school graduates... [At a middle-tier college] dozens of students swarmed around a reporter to complain about their education. 'What the market wants and what the school provides are totally different,' a commerce student said.... [A] final-year student who expects next year to make $2 to $4 a day hawking credit cards, was dejected. 'The opportunities we get at this stage are sad,' she said. 'We might as well not have studied.'"
In the US and India. College isn't training you for a job, it is learning a field of study. Perhaps this is the issue, jobs require these "degrees" and now that is what colleges teach to, not the theory behind the area of study. My college was guilty of this, sadly.
Agreed. This has nothing to do with nerds. What is it doing here? Not to mention half of us are bitter toward Indians anyway as a result of outsourcing..
Oh maybe thats why.....
"What the market wants and what the school provides are totally different," a commerce student, Sohail Kutchi, said.
Ironically, American businesses, i.e., tech companies, complain about the samething with U.S. Universities.
interesting to say that stuff is useless... if programming really is just a commodity trade, then that other stuff is useless. but if computer science consists of more than just programming (which I believe it does) then math is certainly relevant.
Reality is nothing but a collective hunch.
It sounds like these kids want training, not Educations.
A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
I agree, at least as far as the learning of the useless things. I spent 3 years taking GEC's at a "traditional" college. Alot of things I had to go through did not directly reflect what my overall major is. Since then having switched to a more technical, but not quite DeVry-esque technical, I have learned alot more about my field. But what has helped me more is being in the field rather than school. I got a job when I started college because I knew FrontPage (And now I know better) and that has also helped greatly. Working their I learned CSS and a good portion of Photoshop, networking skills, etc. It almost seems to me that the availability of apprenticeships or internships would be more beneficial to people than traditional college, at least in the Tech field. Yet companies are unwilling to do, at least in my experience.
Mod points here for insightful.
I'll never understand why Americans are so bitter about this. I don't have a single colleague who can say they lost their job to offshore outsourcing, or even has any trouble getting a new job for great pay.
If anything, I have only positive things to say about offshore-outsourcing. Farming out the easy stuff frees me up to pursue the more lucrative stuff, like working more with customers or developing partnerships.
Spoken plainly as one who doesn't use any advanced algorithms in their coding. Lemme guess, you paint forms and play with DB rows?
Let me enlighten you: The heart of Computer Science is ALL "math crap".
I think it's a bit too harsh to say that all of that stuff is useless, but it is true that few students will get much use out of it until much later in their careers.
My complaint is that most schools don't teach good large project management skills. Everybody works on toy programs by themselves or in small groups and on short deadlines. That is highly unrealistic in the real world and teaches the kids a lot of bad habits IMHO. I think it would be better if the schools put more emphasis on project management (both from a manager and coder perspective), including version control, planning, testing, debugging, and so forth. Grading would be a bit more difficult, but the ability to compare students based on their amount and general quality (how many fixes did it require afterward?) of checkins would be a good place to start.
The class could even mix it up a bit between writing their own project and maintain last year's project, especially if they build stuff that is actually useful and post it online. Granted, this is an ambitious project for a classroom, but I think it's the only way to properly prepare students for the real world.
I read the internet for the articles.
Spoken plainly as one who doesn't understand the job market.
The heart of most Computer Science *jobs* is in "painting forms" and "playing with DB rows".
HOLY CRAP! this is my daily experience at work!
/. account, but this is what I see everyday...
I can't for the life of me remember my
IT people that can't fix their own MS word problems...
give them instructions on step by step how to do something, no problem. Give them an exe and tell them to install a program, it'll never happen.
Everyone I've talked to says the same thing. give them a structured problem and they knock it outa the park. give them an open ended real world problem without structure given to them, and they are lost.
It makes me feel good about myself and the ability to think, and figure out what concept to apply and how to apply it...
It's far easier to teach someone who can think how write programs than it is to teach a programmer how to think, as you've demonstrated clearly enough.
Well, duh. They should have taken a programming course. Studying CS to learn programming is like studying Economics when you want to go into business - economics and business are both about money, after all.
The problem is that stupid companies think programmers with a degree are better, even though there are no university level programming degrees.
(spoken as a programmer with a CS degree, but I got it because I love math and theory)
I believe posters are recognized by their sig. So I made one.
Universities aren't a place to learn vocational skills.
This is especially true for CS. If you just want a decent paying job, you can get the needed skills at lots of places like ITT-Tech. You don't need a CS degree to write web front-ends and PHP/SQL scripts, or to be a sysadmin.
If you don't want to learn the theoretical foundations, why get a CS degree? You don't get a physics degree if you want a job fixing cars.
Unlimited growth == Cancer.
Well, I don't think it is a big of a problem as it is made out to be, I know people who have lost their jobs to outsourcing. However, I think the underlying hate comes from the people who have to call tech support at a placed based in India, and then can't understand or communicate with the person on the other end of the line. All things considered as well, if your calling support, you are probably already frustrated enough, and now you can't understand what the other person is saying? I can see that being pretty aggravating. Worthy of hating an entire nation? Probably not.
Second this.
There's way too much emphasis on starting your own projects from a clean slate, which is very rare in the 'real world.' More often you get handed the spaghetti-code mess of the "last guy," to puzzle over and figure out how to document and maintain.
Too much CS education is focused on the very beginning of the software lifecycle. That's like churning out doctors that can only deliver babies, when what the market needs are GPs and geriatric specialists. Grads need to know not only how to start a new project themselves, but how to pick up one that's in the middle of development, or that's well into its maintenance phase.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
Actually, the fact that you find advanced math topics "crap" says loads about your particular education/skillset.
I don't hate India. I hate the companies that route my calls there.
What's annoying about the Indians taking the calls is that they pretend to understand when you use words or phrases they don't get, and it quickly becomes apparent as they struggle to troubleshoot a problem they never comprehended in the first place. But they're taught to do this, just like they're taught to tell me their name is Steve or John or Bob. Again, it's really the fault of the company putting the almighty dollar ahead of customer satisfaction.
120 characters for a sig? That's bloody useless.
I agree, however: "learning a field of study," is not what most people in college want, nor what most employers are looking for.
What most students want is job skills. Few students have the inclination (or spare funds) to learn for the sake of learning for four years, and then spend another two or three at a trade/professional school, before they can get a real position.
Students go to various schools in great part because of the job prospects they think they'll have on completion. Only the rich can afford to simply go because it will be intellectually stimulating. Plus, mixing together people who just want job training with people who are fundamentally interested in learning is a mistake; neither are going to be satisfied with the results.
To be honest, I think we need to remove some of the social stigma surrounding trade schools in the U.S., and we should have a clear path for students that just want to get job skills. Maybe the companies themselves could even help fund them, and in return get to dictate parts of the curriculum (via directed tax contributions, if not voluntarily). That would remove the education/industry disconnect. Students who wanted an 'education' would be able to go to college, and students who want 'job training' and a near-guaranteed job in a relatively short amount of time could go to the trade schools.
I think in the U.S. we have dragged 'childhood' further and further out; there is no reason why a person should have to go through nineteen or twenty years of schooling before they can survive on their own in the economy. Education needs to be made more relevant to what students want to learn, and more rigorous earlier in the curriculum. Huge swaths of my own education were nothing but wasted time because of the way the system is currently set up; there is no reason why a motivated 15 or 16-year-old shouldn't be able to be out learning a skill, if that's what they want to do. Making them acquire thousands of dollars in debt and years of wasted 'education' that they won't use first, helps no one.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
I disagree. Tools are transient, and the features of each become more commoditized each year. The american programmer chases "learning new tools" with each programming "generation." This in itself isn't bad, but more often than not, rolling your own for a specialized situation is a skill that needs to be present at all times.
It's been said before in the perspective of not knowing how things work on the inside (especially in language wars) but I've run into more junior programmers that don't understand how to analyze and debug systems because of a simple ignorance of the "magic" of , be it networking, compilers, operating systems, sparse and/or associative arrays, code optimization in large scalable systems, the network stack, internal type representation, threading, memory usage, security...
In each of these topics, I've been on a team of programmers that simply wrote VB-style windows apps for so long they couldn't tackle a bug in one of these more difficult issues. I don't advocate that every programmer needs to learn all these topics before starting, but they have to know that there are layers beneath the tool, and that such layers are subject to examination.
Even now, I'm reengineering a large-scale system that made some horrible scalability decisions. They had a simple point-click, drag-drop style of application construction, and couldn't understand how to optimize for the real-world data throughput the end product needed to satisfy. So here I am, the "math guy", ripping out chunks of tool-generated sequential searches, file caches, and other endless layers, to streamline.
SO I argue that the *jobs* will always have a mix of programmer types, but if you hire only mousemonkeys, you're risk not having a skillset ready to tackle the "difficult" things.
Those aren't computer science jobs you're talking about. They're code monkey jobs.
Umm...The Americans can draw from context better? I don't know. I can tell you I've never had a basic communication problem with American tech support, even those who aren't native English speakers. When I'm trying to convey a lot of information in a hurry, I tend to use big words and complex grammar; this can completely shut down a conversation with a foreign call center, but the American (and Canadian, to be fair) support manages to get the job done.
I'll just put it this way: I've never had to explain the same situation three times to the same person or had a tech doggedly stick to the script regardless of what I told them when talking to an American. I've worked in tech support before and have *seen* some American script monkeys at work, but it's almost a policy for the Indian (and other) call centers to rely entirely on scripts.
Example: if I tell "Joe" that I've got a problem with my new wireless NIC and I need to know where I can enter the SSID in the software, it should be clear to him that I know what the problem is and what I need to do to fix it. What does he do? Force me to go through twenty minutes of uninstalling, reinstalling, PULLING THE CARD TO GET THE MODEL NUMBER, before finally putting me on hold for ten minutes to get someone else on the phone who knows the answer to my question.
Maybe the problem is what is talked about in the article: they're trained on rote memorization, not troubleshooting. They don't know how to deviate from the norm and jump straight to a solution.
120 characters for a sig? That's bloody useless.
I think it's time you try to take a more objective look at yourself. If your resume is good enough, perhaps you are coming across poorly in interviews. Physical appearance, manners, diction, etc... all matter. It's all about attention to detail. Most important though, is projecting the right balance of confidence / humility. These are people skills anybody can nail.
Most employers do not see degrees as quaint. Experience rules for senior positions, but entry level positions are made for recent grads. A problem you are going to face is that you're graduation is becoming less recent all the time. I hope you are keeping up on your skills and continuing your education. Do some volunteer IT or try to make yourself visible on some open source projects.
Where I work, we turn away people with very good resumes all the time if we don't think the person would fit in. I'm not going to hire somebody unless I think I'm going to enjoy working with them. Think about it- you probably spend more time with people in your office than with your significant other.
We've also hired some people with unrelated degrees to do some of the most demanding work here (our network admin has a degree in german language).
Lastly, what are you doing to expand your people network? Often who you know is more important that what you know. I used to think this was awful, but now I think it's because people are very afraid of risk and the unknown. Find other nerds and find out what they are doing. Interview at their company after you have thoroughly researched whatever it is they do.
-ec
During my MS I attended school with numerous Indian classmates. Through several discussions about why they attended school in the US as opposed to India, it seemed that Indian schools at the BS and BA level were nothing but extentions of highschool with high demand on obediance, following proceedures, speed, and memorization. At the MS - P.h.D. level, a course was simply independent study.
I doubted this until we had a visiting professor from India for one Semester. He spent more time yelling at students for bringing coffee into the class room and for asking/commenting on his lecture than teaching anything useful. A fellow student who had a 4.0 throughout his degree failed 3 tests from him due to inability to complete the laborous but simple mathematical questions within time. The few of us that passed the class were only able to do so by pre-program his busy work into our calculators. The department dropped all grades below a B in this course after student outrage.
So needless to say, I am highly suspect of the actual education in India's Universities/Colleges.
Sign up for University of Phoenix online then and stop complaining!!
Farming out the easy stuff frees me up to pursue the more lucrative stuff, like working more with customers or developing partnerships.
The problem with farming out the "easy stuff" is that is what most entry level people cut their teeth on out in the business world. If you take away the things that the entry level people are qualified to do, they never get the chance to become senior level.
With that simple move, you've cut the legs out from under your technical competence as a society and are now at the mercy of others. This, by the way, is a great way to cause an economic collapse and possibly another depression.
Everything I need to know I learned by killing smart people and eating their brains.
It's nit picking, but to throw about the term so lightly is to dishonor people who actually had to endure true slavery.
"People who think they know everything are very annoying to those of us who do."-Mark Twain
Also the heart of Automotive Engineering *jobs* is in "pumping gas" and "balancing tires."
You're assuming that software development IS Computer Science. Just because the job requires someone to sit at a keyboard and produce code of some sort doesn't make it a "Computer Science" job.
Actually, that tendency seems to be a characteristic of most everyone from that culture - that is, not asking for clarification, but forging ahead despite doubt or a strong possibility of misunderstanding. I am not sure what the source of the tendency is, but I have seen it over and over in my dealings with Indian development firms and individual developers - describe specs or requirements, or how some system should work, and they nod their heads quietly (actually it's more of a head-bob than a nod), go do their work, and come back four weeks later with something that is in no way what we asked for and is based on major misunderstandings about what we actually said in the first place.
Rex is 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
I couldn't agree more.
The "vocational" or "trade school" remark has been around since early in the 1900s when the tool & dye market was booming. People that wanted to go off and just be "thinkers" went to college, and people that wanted specific applicable skills went to trade school.
Nowadays it's really an empty offering, because a trade school education won't get you the technical skills you need either, and employers don't respect a trade school certification anyways, they want to see a degree.
So we all line up, pay our tuition and they spoon feed us the BS that you're getting a REAL education, even though many of the required topics and classes have been outdated since the 80s.
I don't believe that universities should just mass produce employees for the business sector, but they need to be more dynamic and quicker to adopt relevant new technologies.
Wouldn't it be nice if a university algorithms class was advanced enough that they would show you something like PageRank as a real world example?
I was a support monkey myself at one time in the past. I memorized a lot of the most common problems but I still got in trouble a lot for making sure the customer's system was working before hanging up with them. I had a low reopen rate but that wasn't the stat they were looking at. They just wanted calls closed per hour.
Having been in that position myself I know what dealing an irate customer can be like, but by the same token there's no better way to make me irate than to do a half-assed job of helping me, even if that's not technically what your job description is. Thus my rule of thumb is to escallate early and escallate often for technical problems. Most of the time they're just as happy to get rid of you and move on to the next guy and you can move on to someone who actually knows what they're doing.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
What I believe I'm seeing as an EE/CE TA is that the average student is steadily becoming dumber, expecting to be spoon-fed and being practically devoid of all powers of deduction. This is evident in the lower level classes and really evident in the advanced senior level classes (eg. microwave engineering class, which requires tying together lots of concepts from basic electronics, EM, etc.). However, the good/excellent students are still as good/excellent as ever (probably the same with the outliers on the other end).
Lots of profs I've talked to also agree that this seems to be the case and they're becoming increasingly annoyed.
I got higher-level assistance from the engineers on Component A who finally admitted that even though this particular product has been out for over 10 years and is in its third major revision (about to be its fourth) it doesn't appear to actually work outside a sterile lab environment. They promised to put in an enhancement request to make the product work correctly.
We went with a product from a much smaller company that advertises the same functionality and costs twice as much, but has the added advantage of actually working more than 99% of the time.
HP is no better. As they have bought smaller software and hardware companies, their support and service from those companies has been ritually destroyed. The website of one small outfit bought by HP, which used to contain an excellent self-serve knowledgebase for product issues is now scrapped and replaced with their all-in-one/none-at-all website which doesn't do jack shit.
Outsourcing is of course a big favorite of huge software companies and I think it fits in their extremely fucked mentality of consuming all of the marketshare of a particular product and cutting costs (quality) in order to "unlock the profits."
The bigger these companies get, the more catastrophic their failures will be when the real market forces kick in and people get tired of trying to use absolute shit product.
My book, podcast