Saturday, October 1, 2011

The Software Development Professor!

No, we still don't have such a CS/IT Professor. We have only CS/IT Research Professors. But what if we had CS/IT Software Development Professors? I think such a career track will do wonders for the quality of Design & Code taught in CS/IT academia.

The entry level minimum requirements as per UGC rules are:

3.3.0 The minimum requirements of a good academic record, 55% marks (or an equivalent grade in a point scale wherever grading system is followed) at the master’s level and qualifying in the National Eligibility Test (NET), or an accredited test (State Level Eligibility Test - SLET/SET), shall remain for the appointment of Assistant Professors.
Source: http://www.ugc.ac.in/policy/revised_finalugcregulationfinal10.pdf (Page 4 of 130).

So a master's degree in CS/IT (M.Tech., MCA etc.) followed by clearing NET/SLET/SET allows a person to be considered for appointment as Assistant Professor (lowest level of university teacher - earlier it used to be Lecturer - I am not including T.A. - Teaching Assistant).

However I get the impression that the NET/SLET/SET exams are very theory oriented. Really don't know how much design & code expertise is tested there. Maybe not tested at all - it is a paper exam.

Alternatively if a person has a PhD in CS/IT he need not clear NET/SLET/SET to be appointed as Assistant Professor.

But the promotion to Associate Professor and Professor is where PhD becomes almost mandatory (Professor - mandatory). Direct recruitment of Associate Professor also seems to have mandatory requirement of PhD. Research publication record is given great value.

Is it any wonder then that CS/IT academicians focus on PhD and research publications? And naturally, design & code in CS/IT academia becomes irrelevant from a career growth point of view. And so, design & code knowledge level among CS/IT teachers in academia is generally poor with students' learning in design & code also being correspondingly poor. This is THE key systemic problem in CS/IT academia.

In a previous post http://eklavyasai.blogspot.com/2011/09/is-phd-in-csit-necessarily-good-teacher.html I had suggested academic teaching CS/IT departments and academic research CS/IT departments. The current AICTE/UGC norms may fit perfectly for academic research CS/IT departments.

But for academic teaching CS/IT departments, different norms based on software development expertise of the teacher may be introduced. Instead of research publication record we could have Open Source software-development-record. We could also have an impact factor based on how many people are using the software developed.

Norms could be made to decide quality and quantity of software development which can be considered as PhD equivalent. Like the PhD defense, the software development PhD equivalent candidate could be grilled by software development experts (initially from industry but over time from academic software development professors).

Appointment as / Promotion to Associate Professor should recognise Software-Development-PhD-equivalent like current rules recognise Research PhD.

For appointment as / promotion to Software Development Professor appropriate norms of quality & quantity of software development work including guiding/mentoring Software-Development-PhD-equivalent candidates can be arrived at.

So we can have a complete software design & development academic career track with no research component at all for the Software-Development-Professors. Such Software-Development-Professors (Asst. Prof., Assoc. Prof. & Prof.) may be very suitable for academic teaching CS/IT departments. They will be unsuitable for academic research CS/IT departments.

If AICTE/UGC introduce this software-development-professor career track for CS/IT, I think we will see a quantum jump in job-oriented-skill-set quality improvement of CS/IT graduates/post-graduates. Which is exactly what most students and their parents want. Which is what the CS/IT industry will want. Which is what will help the country's economy as industry will not have to spend huge time & money to train 'freshers'. Which will allow 'freshers' to straight-away consider becoming software development free-lancers or entrepreneurs (like a Mark Zuckerberg).

Research needs of industry and the country can be met via the academic research CS/IT deparments and industry research.

Let supply and demand factors drive how many academic teaching CS/IT departments are set up and how many academic research CS/IT departments are set up. Let us not coax innocent students to do research oriented CS/IT study if what they really want to learn is software development expertise so that they can get a good job. Let students have full and well informed academic freedom about what they want to learn - CS/IT research or software development.

I think this will be a great boon for CS/IT teachers. Right now they are under immense pressure. They have to try to keep some pace with ever changing software technology - so syllabus changes have to be made for courses quite regularly. And they have to produce research publications and take up 'project' work as well. Then there is an expectation from society that 'computer' professors can help them with software development. All this places a huge and impossible burden on the CS/IT academician.

IMHO, separation into two tracks - Research and Software Development - will simplify life greatly for the CS/IT academician. The Research CS/IT academician focuses on research and teaches research-oriented students. He can safely point software development queries and work to the CS/IT Software Development academician, who focuses on software development and does not bother about research.

Industry software development professionals who would like to contemplate moving to academia can fit in very well in the CS/IT Software-Development-Professor track. Entry of such industry experienced professionals can be a great boon to academic teaching CS/IT departments. AICTE/UGC in conjunction/consultation with software industry experts can come up with norms for deciding equivalence of industry experience quality and quantity wise with academic software-development-record.

As CS/IT is a special field in industry where we have persons from various streams of academia - Physics, Mech. Engg., Metallurgy etc. - the academic degree stream for industry professionals entering into academic teaching CS/IT departments should not be expected to be CS/IT only. If that sounds surprising to CS/IT academic policy makers, Andrew Tanenbaum, the famous CS textbook writer and famous Professor of Computer Science has a PhD in Physics, http://en.wikipedia.org/wiki/Andrew_S._Tanenbaum. So he moved from Physics to Computer Science. Similar movement happens in CS/IT industry.

These thoughts may seem very unusual. But I think they have significant value if AICTE/UGC policy makers want to fix the serious systemic problems regarding design & code in CS/IT academia that causes signficant suffering to countless students and parents in the country.

3 comments:

  1. I have fulfilled both roles to some extent - have taught hardcore theory for MS CompSc students (Pune Univ) for a year, and hardcore programming (with C as the language). I am not a PhD - but just an BSc. I think, as I have said earlier, the right blend required for the industry is a blend of both the appropriate theory and its practice in a programming context. I would love to teach again - but my lack of qualifications is a big hurdle. And, I do not want to play politics - which is what rules these days. Any ideas???

    ReplyDelete
  2. As I understand the system:

    Private Colleges (limited or no govt. funding) - You can be paid "visiting faculty" type - this will be like contractor instead of employee in industry. If what you teach helps in job placement of students, the private colleges may be willing to pay handsomely.

    Govt. funded colleges - I think these colleges will be careful not to upset AICTE/UGC as otherwise they may not be given funds! So they may be happy to have you as a FREE "visiting faculty" - no issues whatsoever there about qualifications if they are convinced of your knowledge level. But if you want a paid academician career there, you have to either do a Master's in CS/IT (get above 55%) & clear NET/SLET/SET exam OR acquire a PhD in CS/IT. Otherwise there is no way that you will be taken as a regular "on scale" academician (Asst. Prof.).

    BTW if you acquire a PhD then due to your industry experience they may consider appointment as Assoc. Prof.

    However my entire understanding above could be wrong. You could check with some engg. colleges.

    ReplyDelete
  3. Oh! I missed out mentioning pre-eminent clause.

    AICTE/UGC allow for pre-eminent persons in a field to be made Profs irrespective of their academic qualification. But I guess that would apply to only really well-known experts like a Mr. Narayan Moorthy or Mr. Nandan Nilekani.

    And IFIRC 5 journal papers in journals with impact factor of 2.0 and above in the same technical area is considered equivalent to PhD. So if you crack 5 journal papers in your area then you can probably be taken as Assoc. Prof.

    Don't know how much value they place on patents. I mean, how many do they expect and how they measure the quality of the patent (impact factor equivalent) to treat it as PhD equivalent.

    ReplyDelete