On 12/14/2010 08:24 PM, Russel Winder wrote:

It sounds as though the real problem you had was that programming was
being taught by people who didn't understand programming.   You used the
word mathematician to describe the teachers and given your description
of syllabus either you were not a model student ;-) or they were fairly
poor teaching staff.  I can imagine your universities (like those I left
a decade ago) were full of people who were either interested only in
research, research funding, and research projects, or were more or less
incompetent but didn't think they were.  I know of a few people still in
universities who can program and can teach programming, but there are
far, far too few of them.
Well, since you ask :-), I got the degree with 29.5 of average out of 30. In analysis I got all 30, but a single 28. So I didn't have problems with exams. And there's a higher-than-average percentage of incompetent teachers in the italian universities, but it's another story. All my math teachers at the university were pretty competent in their field.

The problem is the scope. The two main math exams were about learning about 300 + 300 theorems. They didn't teach you how to use math tools as, well, tools, but just the theorems. When in the next years you had to use those tools, e.g. for implementing a math model or whatever, most people didn't figure out that they already knew the tools for that. Many students needed a sort of "second teach" that was organized by other teachers (engineers). That way of teaching maths was probably fit if you pursued a whole curriculum in maths, which means you have a better predisposition in understanding those specific concepts, and above all they'll consolidate them in many years focusing on those.

It's pretty much political. In italian universities politics are unfortunately fundamental - even when you deal with a skilled professor, hes political power still matters a lot. At the time there were basically two 'parties', the math guys and the engineering guys, and they didn't want to coordinate the way classes were designed in the scope of the curriculum for personal prestige. This internal battle between guys with a fanboy attitude about either theory or empirical approach is unfortunately typical in the italian culture. There are even debates on subtle differences in the path of the evolution of the "engineer" word etymology.

I've recently attended for the first time the convention of the italian agile movement, and even though I'm not strictly speaking an agilist, I was feeling at home when I listened people stressing the point that a software designer doesn't need math, if not for general culture, or because he works in a specific branch, such as signal processing. But I'm digressing. My basic point is that a software designer must be pretty empiric in nature. I say you agree in another part of your answer, and as I said it's probably a matter of our specific locales. For instance, I don't know how it is in other countries, but here the curriculum in computer engineering originated from the engineering faculty, while computer science originated from mathematics.

Actually, most people know how to browse the Web, how to use office
suites, use photo manipulation software, but they don't actually know
what a computer is.
Yes, but you could bet that a guy entering a engineering faculty, once we start from the assumption that he's likely to own a computer, has got high degrees to have tweaked with it a lot.


--
Fabrizio Giudici - Java Architect, Project Manager
Tidalwave s.a.s. - "We make Java work. Everywhere."
java.net/blog/fabriziogiudici - www.tidalwave.it/people
[email protected]

--
You received this message because you are subscribed to the Google Groups "The Java 
Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to