I'm reading up on some algorithms and data structures because it's fun and challenging. Some people go to the gym, I tackle algorithms instead.
There's a great resource over at MIT Open Courseware (6.006) that talks about the algorithms in this repository, go and have a look if you fancy it.
I write most of the code on paper, then I enter it into LINQPad to find out what kind of errors my on-paper code got. I write most of the code in C#.