Indian who finished Engg in CS (from a less known university) here, I can pretty much attest to the story. Some facts that I want to state are below.

#1. Reason: Most of the folks joining (CS in) Engineering do so due to parental/societal pressure. Engineering degree from an established college is a sure shot way to that cozy job in BigCo Inc. through campus placements, once they clear those stupid interviews (usual stick arranging/manhole puzzles) and have a 70%+ aggregate. From there on, it's the usual journey of going onsite i.e., a long-term assignment to US(##1), a trophy wife and a big apartment, a car and so on and so forth.

#2. Practical subjects have set syllabus in many universities; essentially a set of programs which most of the folks mug up and clear through. (hence the term 'procrammers') VTU (http://www.vtu.ac.in/) is most notorious for it.
Ex. Data Structures lab : http://www.vtu.ac.in/index.php/scheme-and-syllabus/766.html?...
OOP lab: http://www.vtu.ac.in/index.php/scheme-and-syllabus/772.html?...
Algorithms lab: http://www.vtu.ac.in/index.php/scheme-and-syllabus/785.html?...
syllabus details for all branches and all semesters: http://www.vtu.ac.in/index.php/scheme-and-syllabus/299.html?...

#3. Most of the teachers (lecturers/professors) have no idea what they are teaching. Many folks take up teaching only if they cannot get through campus placements or another corporate job. A fellow from my batch who failed in Microprocessors (twice) is a lecturer teaching Microprocessors in a small town engineering college. They themselves not being aware of the right set of tools to be used, they would even promote usage of archaic tools. Almost all the colleges affiliated to VTU Belgaum, in Karnataka, state which has Bangalore as capital, use Turbo C as IDE. They have no idea what compilation/linkage is, but only know Ctrl-F9/Alt-F9. Usage of CLI is something that is seen as too technical/geeky. Most of the 'software engineers'/lecturers/professors have never used an OS other than a flavour of Windows. (Few are not even aware of the existence) Very few know about useful sites like StackOverflow or HN; and many would land up in various forums with ‘can haz codez’ requests.

That said, there are few people who land up in IT cause they love computers and programming. Numbers are not in their favour cause for every one of these truly passionate ones, there would be a thousand odd zombie types in Indian IT scenario; and the latter would stand out. The numbers of passionate ones is growing, though slowly.

But there is more to this topic, imho. Article linked by OP talks about folks not being fit enough for the job. The companies which cry foul about the crop of engineers and their capability are not really bothered about technical skills but more about 'soft-skills'. Simply because most of these firms are outsourcing service providers who would not want great programmers in their payroll but some sub-standard/mediocre guy who can keep his head down in the cube farm, conform to org-wide (sometimes ridiculous) policies/norms, follow through checklists, churn out filled up excel-sheets/documents by dozens and get the job done. I am sure many would miss this fact.

(##1) Ask any IT guy from India how someone who has been in IT but hasn't been onsite would be treated. Lepers are better off, much better.