My educational backgrounds include mathematics, engineering and computer science.
My writing here will be about subjects that I have to think during the week as part of my work (teaching or research).
My favorite courses, which I took as a math student, are algebraic topology, commutative algebra, and differentiable manifolds. Some of the other interesting courses I have taken include solid state electronics, computer vision, artificial intelligence, machine learning algorithms, neural networks, image processing, and pattern recognition.
I enjoy teaching UNIX/Linux system administration, systems programming and network programming. I also teach data mining, object-oriented programming, design patterns, software engineering, and variety of web related courses. I have been programming in Java, Python, Ruby, C, and UNIX shells. I use Google Web Toolkit (GWT) and Java EE for web programming. Last fall (fall 2010) I started learning C# as well.