63 comments

[ 2.7 ms ] story [ 123 ms ] thread
Your post has a lot of gems, but you also misunderstand a lot about what is going on in Indian society. I am not surprised, not a least bit.

>>I am sorry to say this, but parents come with an “old generation” mindset ... Because they think that if he gets a job he has settled in life ... Unfortunately, what they don’t realize is that there is no such thing as “settling” in IT jobs.

They come with a very correct mindset. For many people here. Including my own family, getting to a IT job was a long drawn battle against very tough financial conditions, social pressures and all other kinds of problems. There are people, including few of friends where they were the first people to enter a Engineering college. Imagine having to drive a taxi, or an auto rickshaw, or pushing a vegetable cart, or a small time farm worker practically working 18 hrs/day and then sacrificing every small desire of yours to save every single paise and doing this for decades you can so that your child can study. And imagine the kid, having to wear only two shirts and two pants a year. Traveling in near-to-explode crowded buses in a city starving all afternoon, and practicing math problems on a newspaper just to get a decent degree and a job.

From their perspective, they are really reaching a milestone, when they get a full time job. At least that is how I felt I when I got my full time job at a Call center here in Bangalore. You might think that's a disaster for an engineer. But from my perspective, the analogy is similar to a person dying out of thirst in a desert getting a glass of cold water, and you criticizing him for not aiming for Apple juice.

Its extremely difficult to understand this, unless you have suffered the same fate. Even if you think you do, you don't. You really need to suffer from it, to understand what it is.

Remainder of your post has some nice insights. But I believe our society suffers from a crisis of honesty. Throughout my entire childhood, teens and now in a job I see rampant corruption. I don't mean bribery. But unfair play of all kinds. Question papers in exams getting leaked, seats in colleges being secured through 'high influences' & capitation fees, Seats denied to general category students due to reservations.

And now in the corporate job, I don't see things as any different here. In fact this is the worst I'm seeing in my life. Even if you are the best programmer out there, you will be slaughtered in the resulting office politics. I've seen some super idiots being promoted, sent to onsite locations, and given amazing hikes just because his manager happens to be speaking the same language as him, or belongs to same state from some part of India, or is because of some religion. At the same time, the entire industry is full jumping jacks, attrition in nearly every company is record high. Because every one wants to be a manager, thanks to the IT services companies and the mess they created in 90's. Now every one joining this industry thinks programmers are losers, and climbing the corporate ladder is all that is sole measure of one's success, or how many time one has visited the US.

Meritocracy is dead in the water, when it comes to the programming scene in India. If you want progress, you need to be some managers's pet and "suck up" to him. Playing political games, and being in manager's power structure is all that counts. Else find your self a manager who is of your state or speaks your language.

This has nothing to do with engineering education. Its about being honest and playing fair. Besides I chuckle every time a guy gives 'engineering education' as a reason to not do something. A 20+ year old with Google at his disposal, has 0 reasons to complain when it education and knowledge these days.

Start up's and bootstrapping are our only hope at this point of time.

A 20+ year old with Google at his disposal, has 0 reasons to complain when it education and knowledge these days

WRONG

Totally

Where would a 20 year old learn about a driver code written 15 years back , with no documents? This job would feed him And it is hard.

Nobody gets Google search results, For "segfault in driver.c written by rahul rai in 1985"

But, they get good enough help on writing device drivers and troubleshooting them. That is all you need, and you have to take it from there.

There is nothing like copy-paste if your are solving a new problem. You have to incrementally work your way to a solution.

If you think that is not possible for a person, they must rethink and chose a different profession instead.

No.

It also indicates that companies hire people and then throw problems at them without training them or mentoring them or providing adequate tools for them.

He means to say that an engineering student should have an aptitude of solving problems. All he needs is a hint of solution. Google is happy to give that..
I call BS on that attitude.

First, the author was making a generic point. Your contribution is to point out some silly exception.

However, if a 20 year old had the driver's code, he can learn to look at the code of similar driver's or failing that learn to read the code, and run them through a kernel-level debugger. If he doesn't know how to do that, there are resources available on the internet to show him how.

Where do you find a similar iscsi driver code written for windows NT
Similar to what?

Here's a link to the open source linux version: http://linux-iscsi.sourceforge.net/

Also check out this site for more info: http://www.open-iscsi.org/

The Windows DDK is a good source of sample driver code. If you are a MSDN subscriber, you would be able to find it as part of your collection ( or available for download online )

Beyond that, i suggest contacting MS tech support.

I know all of this

my point is how do you deal with the pain of supporting code written by someone else years ago?

If you knew all this why ask a specific question?

I am really trying hard to take you seriously and not treat you like a troll.

As far as supporting code written by someone else years ago, that's just the nature of programming. If you find it too painful, get out of this industry, find something you truly enjoy and do your best in that area.

Life is too short to be struck doing something you really don't enjoy.

//Seats denied to general category students due to reservations// I mostly agree with the rest of your post, but bundling the reservation system among corruptions is naive and mischievous. Reservations for the low caste were gained after a long struggle for their social justice.
No it's not.

'naive' and 'mischievous' don't mean what you think they mean, and the author of the parent post did not claim anything of that sort. It's just that your opinions differ and you want to throw some idiotic words at the author's post.

I quoted what the poster said.

It is _naive_ for a person born into low caste, to believe that the reservation system is corrupt.

On the other hand it is _mischievous_ for the elitist to claim that it is corrupt. Indian popular media and the justice system which are disproportionately occupied by the elitists, have been successful in their propaganda to make the younger generation think that it is wrong to utilize the reservations.

No he didn't. Don't just make shit up.

And, by the way, the constitution of india enjoins every indian to be treated equally. If you don't understand that concept, and only view life through casteist eyes, then you are in for a sad, bigoted future.

Justice is equality, not reservations.

There are two people, Person A works very hard, Person B doesn't. In a exam, because of the registration number system both are anonymous. Now if Person A scores above Person B. I don't see why B must get a seat above A? For what?

Social justice is to give people what they deserve corresponding to their efforts.

>>Indian popular media and the justice system which are disproportionately occupied by the elitists

By elitist you mean people who work hard and make it big in their lives?

And 60+ years of reservation system hasn't changed anything which says volumes about the problems with uplifting weaker sections of our society. If you give some one an option to get something for free, they take that rather than working for it.

Net Result? You get people who only look progressive but are actually not.

(comment deleted)
I work at one of these IT service companies. This year I complete my 10 years. I love coding, solving problems and learning new things. But unfortunately, with extreme reluctance I will have to become one of these managers. I just do not have any other way, no body cares about writing code here and writing good code will not get you nowhere.

I am too old for the product companies and I am not from a top tier college. So its game over for me, however the only hope I have is that someday I will manage to build something on my own that will free me. This is what I have been dreaming of ever since I passed out of college. You may ask me why I did not do it then, but for a guy from a lower middle class background, it was not an option. I needed to survive.

Any advice for someone who has completed just 1 year ?
First question - do you like programming? If not get out. If you like programming, get better. Learn algos, lookup open source projects, dig through the code. That is how I learnt. Build something - it could be a website, an app. Try showcasing it, it may open opportunities.
Yes I like coding. I'll try and do what you suggested. But how did you find the time ? It gets very hectic at time doesn't it ?
To add to it there is a lack of career counselling. One really does not know about many of the career options out there when he/she is in Class 10, when he/she has to make a choice.
http://www.youtube.com/watch?v=HRPDO63rI1E

The Truman Show reality. Truman learns there is something very wrong with reality. They tell him to get a job. He says, "fuck-off".

God says... C:\TAD\Text\QUIX.TXT

our Casildea de Vandalia in beauty; and in addition to this you must promise, if you should survive this encounter and fall, to go to the city of El Toboso and present yourself before her on my behalf, that she deal with you according to her good pleasure; and if she leaves you free to do yours, you are in like manner to return and seek me out (for the trail of my mighty deeds will serve you as a guide to lead you to where I may be), and tell me what may have passed between you and her-conditions wh

"we can expect a new technology that we don’t even have now to get outdated before our lifetime." Very well said and so true. People must Adapt in order to cope up. Probably online education programs (MIT/Coursera etc)play vital role here in learning new domains/skills and keep us going...
I am a start up founder as well and I am facing the same problem. Most of freshers applying for the jobs claim to have decent "Java", "SQL" knowledge in their resume. But they cannot even write a simple program that reads and writes to a file.

They don't even know that there is something called "Open Source Technology". Absolutely no one has hands on experience with Linux. And they haven't even heard of technologies like ROR and Node.js.

I had to invest in their training. But even after 3 months of rigorous training, they still fail to grasp basic concepts.

I am not blaming parents for their child's failure. Of course, they pray that he should have a better life than themselves. That's why they pay for his education.

I will blame these petty colleges with their petty engineering degrees.

Paid projects are killing "problem solving attitude" of entire engineering generation.

Also blame the students themselves. It really doesn't matter what collages they attended, how poor their teacher was etc.

The internet is the biggest teacher of all. With institutions like Khan Academy and MITx and Google and coursera and other MOOCs, the availability of free knowledge is plentyful for people with an ounce of interest.

And never invest in a person who does not love programming or problem solving. No amount of training can fix a character flaw.

I agree. I learned that hard way.
I had to invest in their training.

You see the problem.

Why are you not getting people from non tier 3 colleges and choose to not "train" them?

Your choice of "tier 3 " college graduates proves a lot about you.

What you want is pay these "tier3" college grads a minimum amount of money and then charge your clients/sell a produnt to get maximum profit.

No Sir , you are the one to blame yourself.

The greed and un ethical attitude of peopel like you and IT service companies is the one to blame.

First you want chaep labor , then you hire people for cheap , then you blame the education system.

If the IT companies really wanted a good supply of engineers why have they not opened an engineering college in India?

Becasue , No one after graduating from these colleges(assuming they deploy good teachers) would choose to work on BS maintiance projects.

Ok , please kill your body shop attitude , where you want people to work for you and YOU WANT profit. If you want to create value , then either work for self or hire people whom you need not train.

Do not blame an engineering college.

Open one , I double dare these Infosys shit companies.

Agree , but thankfully we have industry experts who understand this problem and I personally appreciate move like this: http://jaaga.in/study . They provide free classes through "Coursera" etc. and technical help to financially backwards ( those who cant afford higher studies)
Having interviewed 100+ candidates in past 2 years for my own startup and a similar number before in my previous job, I completely understand what the author is trying to say. Believe me when I say that 90% of my interviews simply stop at the first question (Can you write a function in C which given an integer array and its size as arguments, returns the number of zeros in an array?). My interview then turns in a small career counselling session telling them to learn and how learning to learn is important because it breaks my heart to see the young ones come out with no ability. Most of them though dejected at not clearing the interview thank me and tell me in the past 4 years that they were getting their degree nobody told them what I did. Shows really that there is nobody guiding them out there and the mindset is wrong.
Software can have jobs where the work involved is "crank the handle, produce output", but the majority of them do indeed require the ability to solve problems.

I interviewed one candidate several years ago, and the question was: "How do you ensure that your program works as intended?". Hoping to get answers like "I write unit tests, integration tests, test scaffolds" or even "I exercise it with different inputs", what I got was "I use Visual Studio". After rephrasing my question a couple of times and getting more or less the same answer each time, I came to the conclusion that the candidate felt that Visual Studio doesn't allow you to write bugs.

Crank the handle, produce output.

I actually blame the people who hire such idiots. Their lack of knowledge is not the problem. Their lack of curiosity is. Their lack of self-motivation is.

Even for "crank the handle, produce output" type of jobs, it's a bad strategy to hire idiots since they will not be doing such jobs for the rest of their lives. Projects change. clients change. Technology changes, and only people with at least a minimal amount of adaptability wlll thrive.

And to answer your generic interview question: By running it. If you probe further, things like unit test coverage, integration test coverage, debugging, seed data etc can come into the picture but that depends on your specific question.

Right - the question is pretty open ended, with lots of potential areas to explore after getting a basic answer.

As a potential employer, I'm happy to help them learn, but I'm not going to spoon-feed them. If someone is profoundly incurious, maybe they'd be better off working somewhere else. Or in another career field.

Right-o.

Good to go with open ended questions. It's hard for candidates to memorize answers.

Sadly i see lots of these kinds of idiotic strategies on their part :-)

When i started my first company in 95 or thereabouts, i remember a person who just would not open his mouth during the entire interview. I didn't know what to make of him. I then asked my receptionist to talk to him, find out if i was being too rough or intimidating etc.

Turns out that the interviewee did not trust his own command over english enough to answer back.

Once i learned that, i just handed him a free PC, told him to try writing whatever program he wanted in the next few hours and did not set any time limits.

When i came back after lunch, i saw that he had written a complete game ( This was in the DOS days where writing a game was really difficult since there were no high-level game engines around )

The guy eventually turned out to be one of my best programmer.

I'm in the process of converting my team of 50ish programmers in Chennai into a DevOps and "legacy apps support" org because finding people with the necessary current skills is proving too difficult. And by "current" I'm talking basic stuff like javascript competency, an understanding of what MVC is (versus dragging toolbox controls onto a webform and writing a couple lines of databinding), and the impossibility of hiring people who have programming experience in anything besides .Net (and to a lesser extent, Java, but even Java is hard to recruit for) and SQL Server or Oracle. My "low cost" (which, as a result of demand and globalization, has turned into "US light" rather than "developing world") country of choice now is Mexico, and -- judging from the recent recruiting challenges there -- I'm not alone. In the Guadalajara area, HCL, Tata, Infosys, HP, Dell, Oracle, and a raft of others are all gobbling up freshers who really can code themselves out of a box, who have good communication skills with at least passable English, who are able and interested in learning new skills, and generally speaking have much more in common culturally with the US.

I am certain there are both bright spots and bright futures ahead for the Indian IT economy (and education system), but for now I'm either putting my creative work in other countries or hiring [much higher cost] consultancies to augment the local skills in my captive team there. The cycle mentioned by other commenters here and in the blog post of finding employment solely for the sake of certification or learning a new skill to support jumping to a new employer is a huge turn off for two reasons: 1) a lot of the incoming freshers literally have zero skills and it's a huge time sink for the experienced folks to get them to the point where they can contribute, and 2) by the time someone is contributing they're already either looking for a new job or expecting promotions and salary hikes in the 20-50% per annum range. This is untenable and quite ridiculous, even with the recent inflation/currency issues. My company, like many others, have a different job code/title scale for India than everywhere else in the world, just to support the concept of having a dozen steps in between fresher (literally zero skills) and senior engineer/architect... not to mention similar things on the management side.

I could write a book on this crap and, frankly, I'm already feeling riled up just thinking about it so I'll stop here. I'll just leave it at this: I truly hope the Indian education system and cultural issues surrounding employment, family, corruption, and financial stability are worked out in the coming years, but the stress dealing with this mess through the past ten years has put me off enough to abandon ship. The cost savings is just not worth the productivity hit (not to mention subjective issues like time difference).

As a person who started one of chennai's first product development org. in the mid 90's, let me add my two cents here:

1) Hire people for their interest in programming, their core problem solving ability and the fun they have with the process.

There are lots of such people, just learn to look beyond what everyone else does. For instance, i once hired a person who could not speak much english, and who did a BA or something like that. He, later on, turned out to be one of the stars of the organization writing a core part of a VoIP solution.

2) Invest in long-term training. By that, i mean don't hire some crappy institute to come and train your people. Here from experienced folks in other organizations to come in over the weeke-end or other timings to help your team.

I remember having to train almost every member of my team in assembly, c, win16 and later on win32 among others. Some of my team members then went on to train professors in IIT, chennai. :-)

3) Mentor your team members. Show interest in them beyond what they can deliver today. Build good relationships with them and help them, both technically and otherwise. When they see you sincerely reaching out to them, they will do the same.

4) Be patient with people. If they know zilch, be frank with them and let them know that they are currently not contributing anything to the organization. However also lay out a plan for them, along with HR, to bring them up to speed in core areas; viz problem-solving, algorithm design, data structures etc Don't allow them to waste time on fancy courses from idiotic institutes. Make your senior programmers take classes some of the time. That's also part of their job.

>>>>by the time someone is contributing they're already either looking for a new job or expecting promotions and salary hikes in the 20-50% per annum range ----------

What is wrong with that?

Have you made them sign a service contract? I bet , you did. Did you confiscate their original + official documents? You almost did that.

Why do you hire people with "literally 0 skills" in the first place?

Why? Why?

Because you could get away with paying them 5K per month.

Why are you blaming others? Why are you blaming the cost of hiring?

If you have good work to do , you have to hire good people to do the work , and have to pay them good.

But your primary concern is to find people who can be bullied/exploited at severely less cost.

Hence you are ranting about the the lack of skills.

This body shopping attitude of yours deserves nothing but people who leave your company as soon as possible for them.

Your company wants to make profit , not create value , I wish no one stayed at your company after their contract period gets over.

Storm is coming , Mr . Eitally.

Stop blaming , stop ranting about lack of skills in someone else ,Speak the truth - You are finding it hard to find bodies to whore them.

That is truth.

I hate you and your company.

Are you really programming in C? If so, good for you and your organization. If not, i suggest not wasting time becoming a career counselor and try finding a faster way to eliminate idiots.

I don't buy the crap that they have not been taught in collage. In the age of the internet, there are so many damn resources on every language possible on the internet that a person claiming that they know how to code in c should have a much, much higher bar set.

That was presumptuous on your part. First I shall talk about C. 2 reasons. 1.Any engineering graduate in India should know C. It is the first language they learn and use in curriculum. 2. We work in embedded and kernel domain. Welcome to a world where C is important.

Also it is not about deep understanding of pointers and stuff like that. The sad part is that most of them can't even write it in pseudo code.

As for the question of you not buying it, I can't convince you except that there are other commenters in this thread who have pointed out the same problem. This problem does exist.

Wow. Dude, you really need to learn how to parse english.

1) When i said, "i don't buy that..." i was referring to people blaming the collage or university for their own lack of knowledge.

In today's world where the internet is available to everyone with a net connection, i would expect people to use some initiative, go online, search for C sources or tutorials, download free compilers and linkers, learn them thoroughly etc. ie The real blame for their lack of knowledge is with them not with their collages.

2) Why would you claim, on the one hand, that the blame for kids is with their collages and poor teaching, and then claim that i expect everyone to know c cause that's the first thing they learn in engineering?

And, lastly, don't get huffy with me, dude. If you make generalizations like "Any engineering grad in India should know C" good for you. I don't care. I really don't give a damn.

You have serious anger issues all over the thread. Calm down a bit.
Really.

I guess you are entitled to your own imagination.

Your aggression and quips do nothing but reveal your insecurity and obviously degrade a rather sensible thread into a showdown of your ego. Kindly refrain.
Passive aggressively imagining things and projecting it on others is going to get you nowhere.

If you have something useful or even your own opinion to contribute, do so. I see that you have nothing to contribute except with your imagination

>>Any engineering graduate in India should know C.

A big assumption.

When I finished my engineering, I was pretty good with assembly language programming. I could do anything with 8085 and 8086.

It took a good deal of time to learn ALP, and I'm glad I did it before learning C as I got all necessary low level details correct and complete.

But I agree your point on pseudo code.

90% of my interviews simply stop at the first question (Can you write a function in C which given an integer array and its size as arguments, returns the number of zeros in an array?)

So , you are claim to run a start up and your job requirements are such that such students make to your interview?

How much are you willing to pay. 3/5/7 thousand Rupee per month.

If your CTC is so low , are you expecting to find what , kernel hackers at such cost.

Here is Advice - Kill your greedy attitude. Kill your dream that you would be ever successful. Kill your body shopping attitude.

The problem is people like you , you want people at so cheap price for you so called "start up" and then you rant on Internet that you cannot find people with skills. The real reason is you are finding it hard to find people to exploit.

If you want better people , you need to pay them . BUT ALAS , why would you want to pay them? Mr, NM is your role model.

Good luck on scaling your worthless start up.

Let me take another viewpoint where everyone is too biased to the idea that the parents put the clamps on their kids. I am an engineering undergrad and honestly, the kids doing Tier-3 Engineering won't be even slightly better off if they weren't. For the simplest reason, for 90% of people there is a no sense of purpose in life except settling for a 20K income and have a well settled family of four.

I see no sign of passion, creativity in 9 out of 10 people. For the remaining "one", there is no stopping them to what they want to become. People want to shrug off their shoulders blaming they were forced to do engg.. without knowing what would they be doing if not it.

You are absolutely right. But this is a problem and the sooner we fix this ( is it possible? ) the better it will be for India ( or any other country for that matter with a similiar population ) .

There are a few things that I think requires serious change in India :

1. We need to develop a culture that supports, encourages and rewards innovation - which means we need to develop a startup culture that is akin to US. We should make it damn easy for people to start companies in India (Hopefully you are listening Mr.Modi and Mr. Manmohan Singh ). So far all I have heard is that its hard. With a labor force like ours we can surely go far ahead.

2. The second part ( and the part that is addressed by this blog post ) is training or bringing this large labor force to a level that is usable by the companies that are thus created. This is a much harder problem but perhaps there is a way this too can be disrupted and changed. Changing the mentality of people towards something is not really that easy. But considering how people flock towards all those Indian Idol, Saregama etc.. maybe something similar ( I dont know what that is ) might help.

For the simplest reason, for 90% of people there is a no sense of purpose in life except settling for a 20K income and have a well settled family of four.

FWIW, I see a lot of competent people in the United States with this mindset (different numbers, but the same mindset.) They work hard in college and learn what they're supposed to, and after college they keep up with the technologies required for their work. They are rarely superstar coders, but they are competent and productive. People like that end up exactly where society guides them. In the U.S., the society turns them into valuable professionals; in India, apparently the outcome is not so good.

This post captures very accurately the engineering education scene in India. I would add that many students today are actually aware of what they are getting into (Most of the times, they don’t need engineers but mere “coders”). Unless they are living under a rock, their predecessors have already told them that by now.

Going further the students who were pressurized to take up engineering are now using these jobs as stepping stones to reach a point where they can pursue their real interest. The good engineers are seen as capable to lead bigger teams and pressurized to enter project management (which is, in reality, resource management).

At least on the open source front, there seems to be a real community of interest in India, who seem to involved due to their love in the area. The way I see it, getting into engineering was an 'arbitrage opportunity'. That window has closed and people will slowly move on.

I am sure 'project management', especially in Indian outsourcer firm's context (managing people + forwarding messages to and from them and customers to conceal the fact how dumb the coders are) is long-term, a much worse of a hole than working for the same outsourcing firm as a coder. Because it doesn't give one any marketable skills, and slowly turns him into a neurotic.
>>The good engineers are seen as capable to lead bigger teams and pressurized to enter project management

In which company does this happen?

Because nearly everywhere that I have seen, and especially in big IT services companies. Managerial aspirations happen as people find coding to be too much of intellectual work and would like to settle down in a desk clerk sort of work accounting job.

A middle manager in a large company these days is basically a guy who fills up forms for work accounting purposes.

>>This post captures very accurately ................

It also captures very accurately the following.

The definition of a start up in India. No start up wants to create value for society. Their immediate concern is making money /monetizing. The start up founder is someone who has some money and wants to make more money from that money. Then he wants some engineers/coders/designers to do the job.

The so called start up founder also wants it do in minimum amount of money. Hence the start up founder chooses people who are not costly. He finds the not costly people to have lack of skills. And then he blogs and blames the Indian Education System.

THE INDIAN EDUCATION SYSTEMS WILL CONTINUE TO PRODUCE SMALL NUMBER OF GOOD ENGINEERS . IF YOU WANT TO BUILD SOMETHING WHICH HAS SOME VALUE FOR SOCIETY , THEN HIRE THE GOOD PEOPLE.

BUT BLAME YOURSELF IF YOU CANNOT HIRE GOOD PEOPLE, DO NOT BLAME THE EDUCATION SYSTEM. you want profit , everyone wants profit, why would anyone work for 25k rupees per month while you charge your clients something 90k rupees per month. Stop this body shopping attitude. Just because you know linux kernel and some open source ROR does not gives you any power to blame people whose parents did not purchase them a Desktop when they were 13.

Just because you know void * (x)(int,char)[66] does not entitle you to exploit people at so 10k per month who do not know C. Stop blaming the Education system. Start hiring good people or go to hell. Fuck your luck on scaling a body shop.

One of my colleagues was taking an interview of a potential candidate who listed "Python" as a core programming language. This is similar to most interviews I've been part of. Here's how it went -

Interviewer : Name some data structures in Python Interviewee : Same as C, C++

Interviewer : Can you name some specific data structures? For example, have you heard about lists? Interviewee : I haven't heard about lists in Python

Interviewer : What is the key difference between Python and C? Interviewee : Python requires indentation, C doesn't.

That was the final straw in my colleague's patience.

Why would your colleague waste time on further questions when the interviewee answered that he hasn't heard of lists in python?

btw Python's indentation requirement is a difference with C though whether it's a key difference or not is debatable.

Given all of the differences between Python and C, I don't think it's even debatable whether or not the indentation rules in Python are the key difference. I'd say that typing and interpreted vs compiled are both so much more important.
I would have gone with object orientation myself, and a de jure standard library ( but then i am an old bloke from the days before C had a std lib :-)

But i have to admit that most python programs are a joy to read ( thanks to guido's insistence on indentation as part of the specs ) whereas most real-world C code is just horrible ( even code i had written a few years back )

I once had a experience with a colleague. She would continually come to me to parse XMLs and give it to her in some format like a csv which she could open it in Microsoft excel for some report generation purposes.

It started to happen pretty frequently and would consume a great deal of my time- It was reaching a stage where I had to stop my work to do her's. After a time she would just show up at my desk with her laptop, I had to write the code while she chatted with some one on her mobile. One afternoon I had, had enough and I asked her why she couldn't do it herself. She then mentioned she only knew C and C++. Then I asked why couldn't she parse the XMLs in C or C++? After a few questions back and forth, she understood I wasn't going to her homework after all.

She shed enough tears to convince our project manager, that I wasn't a good team player and I was the reason why the productivity in the project was falling down.

Thankfully one afternoon our clients had her removed from the project when I was on leave, and they made her write programs in a war room while the whole team was watching her screen on a projector.

That seems like a pretty brutal way to treat someone. Not that I'm excusing their behaviour.
Early on in the article I was unimpressed with the assumption that "who you are" or "what you'll be" is defined by your job title which is defined by your school major.
I thought i knew what a broken educational system is...
Even the top institutes like IITs engage in superstitious and fraudulent activities.

Here are some very recent examples.

Pseudoscience unchallenged at IIT Kanpur: http://nirmukta.com/2012/08/06/pseudoscience-unchallenged-at...

Hall of Shame: On a Hindutva Apologist’s Recent Lectures at IIT Madras:

http://nirmukta.com/2012/09/05/hall-of-shame-on-a-hindutva-a... """ Gravity was not discovered (sic) by “Newton or Oldton”, but by Bhaskara II and is described in his work Siddhānta Siromani.

The spherical shape of earth was not discovered by “Copernicus or Silvernicus” but Indians knew it well in advance and is mentioned in Bhagavata. """

One can imagine what is going on in other less reputed colleges?

Granted these are off-school activities, but it would be better for them to seek entertainment in better ways.

I see such articles a lot in the Internet press.

Indian Graduates being un employable .

Such articles are published by INDIAN START UPS/CEO OF INDIAN START UPS/VIPRO/INFOSYS/rest of body shops.

Has anyone wondered that why don't we see such articles by Real companies/Real start ups/Real Universities which are not BODY SHOPS ?

See the problem is GREED AND UN ETHICS. Every start up wants to become a body shop. Every Indian CEO wants to make a lot of money by adding more people and scaling the billing rate. The small app development companies oped by those TOMS AND HARRY want to employ a DICK to do "iPhone Development" at for minimum amount of money and henceforth make maximum amount of money.

NEWSFLASH: YOU

yes , THE ONE BLAMING THE PARENTS, THE ONE BLAMING THE QUALITY OF GRADUATES, THE ONE WRITING AN OPEN LETTER TO INDIAN GRADUATING CLASS , THE ONE BLOGGING ABOUT LACK OF CODING SKILLS,

YOU

ARE NOT GETTING GOOD PEOPLE IF YOU ARE NOT PAYING GOOD (Exception being the Linux Kernel , but that is open and free for everyone).

The IT services companies and the people claiming to run start ups - they have just one goal in their life -

EXPLOITATION -

They ARE NOT ABLE TO DO EXPLOITATION at lesser salaries , hence they are ranting. Such rant has been too much wide spread during the last 5 years.

I have an open question to these IT companies and such start up CEOs? Why have you not invested in opening a University/Engineering College?

Why has not Infoys/CTS opened a an engineering college?

They can train so many people for 4 months but why not for a 4 year degree program?

They would have have to deploy good faculty in these colleges .(They have a brand name to keep).

Simple Reason - No one would choose(after graduating from InfoSys Engineering college) to work for 10$ per day doing maintenance jobs while the company is charging the clients >10$ per hour.

MY TAKE ON SUCH PEOPLE WHO ARE BLAMING THE EDUCATION SYSTEM---

Why are you blaming the system.

IF YOU WANT CAPABLE ENGINEERS , YOU NEED TO PAY THEM.

YOU WANT TO MAKE MAXIMUM PROFIT ,BUT YOU WANT TO PAY MINIMUM SALARY, BUT YOU WANT TO MAKE THEM SIGN A SERVICE CONTRACT,YOU WANT THEM TO NOT LEAVE, YOU WANT THEM DO DELIVERY AFTER DELIVERY, YOU WANT THEM TO MAKE YOU RICHER -

no SIR , YOU ARE NOT GETTING THAT.

Stop blaming the Engineering Education in India ,Stop thinking that cunning bastards like NM are entrepreneurs- They are not your role model.

EM is your role model.

DO NOT BLAME SOMEONE ELSE'S PARENTS IF YOU ARE NOT ABLE TO PROFIT FROM THEIR SON/DAUGHTER'S BODIES.