On Tue, Feb 22, 2011 at 10:04 AM, Rad! <conradakunga@gmail.com> wrote:
I am amazed at some of the sentiments on this thread.

  1. It is not the University's job to teach you how to install CentOS!
  2. It is not the University's work to teach you Android
  3. It is not the University's work to teach yo Ruby/Python/Java/C++ etc
The university's work is to teach you CONCEPTS. It is up to you to figure out how to apply them.

Granted the University should do some more to help in this regard. There i agree.

I also find it presumptuous to say lecturers are incompetent and don't know the latest technologies. The latter may be true but the former? Justify that. Lecturers don't have to know about Davlik and Reactive Framework. It would help them be better lectureres if they did, but it does't make them incompetent if they don't

Engineering students are not taught how to build Mitsubishi or BMW engines. they are taught how to build internal combustion engines. Application of the same is up to the students!

In fact Universities that teach LANGUAGES are the ones contributing to the half baked graduates (not the graduate's fault!) that join the workplace each year. A good symptom is all those nonsense arguments about programming languages that pepper this list.

A serious however who knows the fundamentals -- data structures, algorithms, O notation, program flow etc however will not have any problem learning new languages as the job suits him.

As for that person wondering how useful compiler theory is -- well, compiler theory is what enables innovations like GWT and Android to work -- writing in one language and getting it compiled into a second language that gets executed/interpreted or even compiled into a third language. How useful is it to IT support? Very. Do you process a lot of text files? Then you will need to know how to use regular expressions. Guess what underpins that?

Discrete mathematics? Rather than write an essay here, read for yourself the applications http://en.wikipedia.org/wiki/Discrete_mathematics

So to recap -- I completely disagree it is the university's work to teach you the latest shiny technologies. I'm tired of being saddened interviewing graduates who throw programming languages in my face but don't know the difference between a queue and a list

They can however help in this regard. Perhaps a partnership with industry such that some of the fourth year courses are taught by industry professionals. Or perhaps in the fourth year the university can send lecturers for training in some of the latest industry developments and teach that to students to SUPPLEMENT their understanding of the fundamentals.

One thing that can be done immediately is make industrial attachment part of the core syllabus and have it weighted the equivalent of one semester of units.

Also, i agree with the sentiments that the teaching is not always done in a context sensitive fashion. You are taught a concept but not its practical application. This makes it that much harder to grasp the concept. Lecturers should be a bit more creative to get students to appreciate the concepts. 

If there is any university ambitious enough, I would like to dare them to pair teaching mathematics (calculus & algebra) with programming as an aid to teaching.


I could not agree more. The application of technology is constantly changing, one cannot afford to limit themselves to particular 'technologies'. Which is why I tend to have a fundamental problem with 'Vendor Certifications'. Cisco is not always the best platform for building a network, but because everyone has a CCNA locally, we all default to it. No one really teaches core networking concepts. 

A Computer Science degree is supposed to prepare you for whichever field you choose to dive into... If you choose support, it should be able to assist, if you choose to specialize in networks, you should be able to have a firm base. Should you choose to go into mobile apps, it should assit, because if you really think about it, the fundamentals are largely the same.... 

To use a more practical example, if you spent 3 months of your core curriculum in University learning about how to code for the Symbian platform, because it was the most widely used phone platform. Relevance, right? No basic concepts... Said semester would have been rather useless, given the movement to Microsoft last week... 


With Regards,

Phares Kariuki

| T: +254 734 810 802 | E: pkariuki@gmail.com | Twitter: kaboro | Skype: kariukiphares | B: http://www.kaboro.com/ |