Being a software developer is nice. Learning something new usually means downloading some SDK, running some new software or writting a different software. But still, the vast majority of written software runs on the same kinds of machines; screens. More often than not, you get to run your software on fancy touchscreens, interact with a mouse and keyboard. I like to break those boundaries and play with stuff that doesn't need a user to fullfill a purpose.
A few years ago, I bough an Arduino starter kit, and embarked on an the awesome journey to the Internet Of Things<
This simple experiment doesn't look like much, but to me, it felt incredibly liberating. From then on, sensors, servos and DC motors have made learning really fun.
If you're looking for a fun hobby that involves programming, I cannot recommend this enough. I recently got a Fritzing Starter Kit and I coultn't be happier!