3 ms·
The Computer Science experience in university is just so different compared to the other engineering disciplines. The incoming students have such widely differe
by BitwiseFool 5y ago
The Computer Science experience in university is just so different compared to the other engineering disciplines. The incoming students have such widely different starting points in terms of skill, ability, and familiarity. In my class I had people who could basically program as a full time job. A security guru who embodied the 'hackerman' stereotype. And of course, people who had literally only made "hello world" websites in Netscape Composer. I personally had done some programming in BASIC and Java but was by no means comfortable with OOP.
It is so difficult to design a curriculum that accommodates such a wide range of experience. One of my professors told me that he shares the same challenges as some of the Arts teachers. Because, they too, get students who run the gamut from amateur to masters-level. And some of those painters or musicians are better than the professors themselves.
One of the ways to accommodate this is to teach a lot more about theory. Things you would not learn if you had taught yourself. The upside is that you are more likely to teach all the students something new. The downside is some of the students think the theoretical stuff is not valuable because they won't get to apply it very often. I for instance, know about Big-O but in practical terms I know I shouldn't nest loops and let some standard library implement a nlog(n) sort for me.