this is part of a series of posts i wrote for my software engineering course at university of texas.
the professor of my software engineering course has delivered a lot of lectures on python and sql. he does an excellent job of walking us through the technology and asking us questions along the way that demand our attention and keep us engaged.
i find it puzzling though, because he seems to only focus on the details of the technology, and he doesn't really give us a high-level overview. for example we go over every detail of built-in python data structures, but i don't think he's ever talked about what situations would be better for python versus java. we've explored the minutiae of various sql joins, observing several different ways to do the same basic thing, but we don't talk about designing database schemas for many-to-many entity relationships.
my initial reaction is that we're spending too much time on artefactual knowledge -- the kind of trivia that's only useful if you're a python programmer writing sql. why not talk more about high level stuff? there's two things that keep me from thinking this is wrong:
he's taught this course for a long time, and everyone seems to be learning a lot very quickly.
i can't imagine him talking about higher-level stuff and keeping everyone so engaged. the fact that he calls on students throughout the lecture and they have to answer questions about code on the projector really forces everyone to be present.
in the end i've been very happy with the course, so i'll trust professor downing's judgement.blog comments powered by Disqus