Other courses
Here are older courses I have taught.
Introduction to Programming
An undergraduate level course for first year students, teaching the basics of programming, using Java and object-oriented concepts, but also introducing some aspects of C not available in Java. (Available only in Portuguese.)
Aspect-oriented Programming with AspectJ
A graduate level course. (Available only in Portuguese.)
Programming Languages Concepts and Paradigms
A graduate level course discussing and comparing several programming languages concepts, paradigms and design decisions. Java, Standard ML and ADA are used to illustrate the aspects considered during the course. (Available only in Portuguese.)
Specification of Distributed Systems
A graduate level course on CSP. (Available only in Portuguese.)
Rational Unified Process
An undergraduate level course. (Available only in Portuguese.)
A graduate level course. (Available only in Portuguese.)
Object Oriented Programming and Java
An undergraduate level course teaching the basics of object-oriented programming and Java, but also covering advanced concepts such as Software Contract and Parameterized Programming. (Available only in Portuguese.)
UNIX: Introduction and Administration
This course introduces the Unix operating system and presents basics aspects of Unix system administration. (Available only in Portuguese.)