I'm about to finish my Ph.D. study in robotics. My field requires complex, but at the same time online and high performance algorithms involving a great deal of mathematics. That's why my greatest companion is C++. But I often use Python to test and visualise my C++ code. This is very easy, thanks to Boost.Python. I like Java for hacking together a GUI quickly, or when I need to do some network based application (and often both of them together). I also like the fact that Java integrates very smoothly with MATLAB. I don't like MATLAB, but due to the courses that I assist in, I end up having to use it. I'd much rather use Scipy + C++ for almost any purpose that one would use MATLAB.
I'm a fan of parallelism, and I would very much like to work on GPU or even FPGA based projects. Despite all the craving in me, I couldn't get deep into either, because it's hard to reconcile such hard-core optimisation with academic research. Papers are mostly about algorithms, not their implementations. So far, I've had to console myself with OpenMP and some humble CUDA programming.
I'm an Ubuntu user and I love it. I use Eclipse as an IDE of most of my programming (also LaTeX). One of my big fears is having to use Windows (and MSVC) for work one day.
I like computer games. Both playing, and making them. I'm yet to complete a game, since after writing the engine I lose the necessary enthusiasm. But I'm hoping to finish the current one after I get my degree.
Nowadays, I fancy 3D printing a lot. I used to do a lot of 3D modelling as a hobby in the past. I feel that the time is approaching when I materialise my thoughts. I will try to get a 3D printer as soon as I settle in some semi-permanent home. Meanwhile, I'll probably start using the online print-to-order services.