This is a continuation of the Ideas are Cheap series.
We all know how much disparity there is between computer science courses in engineering colleges in India and real-world coding skills.
So how about a training institute that fills this gap?
I'm sure the first question is that how is it any different from NIIT? The difference is that it is about programming skills, not about technology. Skills such as:
- Reading large amounts of code - which is what really happens 90% of the time in big companies
- Debugging - again, maintenance and bug-fixing are the major tasks in any reasonably sized company
- Deployment - a hugely underestimated skill/process
- Unit testing
- Performance engineering
- Security aspects
The best part is that this can work very well with open source. I'm thinking more in terms of the Synovel/SpiceBird model where a for-profit company is working on open source code.
- Students get to learn real coding skills and get to see the impact of their code real-time
- Company profits because the development is being made on their main products and not simply throwaway run-of-the-mill projects.
- Open Source means interested students can continue contributing even after they "pass out" of the training institute.
And how different is this from Google Summer of Code? GSoc is meant for college students who are already good hackers whereas as this training is to help people become good hackers.
There are tons of ideas that can be taken up and that would be sexy enough to interest students:
- How about an open source desktop search application that runs on Windows?
- How about creating an open source equivalent of Microsoft OneNote? (or at least a converter from the proprietary .onenote format to any other open format)
Interestingly enough, the training institute can grade students on their hacking skills and eventually become a resumé goldmine for companies that require uber-coders such as the Yahoos, Googles and of course, the startups.
If someone is doing a training programme like this, let me know. I can join as a student.