I have been bouldering for years, and I love that you can go with people from all levels, and everybody is having the same fun trying to succeed at problems. And a beginner that doesn't have the strength to do something can have th brains to show you how to do it.
I have brought many people with me over the years, most engineers / software people get totally hooked for some reason. I think it probably comes from the puzzle aspect of it.
Sports/workouts/exercise - not original but great way to balance the sedentary lifestyle if you're not already doing so
Juggling - pretty fun to learn and relaxing activity. It has been shown to give great mental benefits when done regularly
Card tricks/magic tricks - impress your friends during parties
Learning foreign languages - this one has so much in common with learning programming I'm surprised that it's not that popular among developers. It is quite mentally draining tho so combining it with programming career is hard
One thing parallel to speedsolving that is fascinating is the amount of optimization that goes into the cube itself, especially from small brands in China. Rubik's Cube engineering just happens to be in that sweet spot of providing incremental improvements, a large design space to eke out new and interesting optimizations, and cheap plastic manufacturing. The latest and greatest model that everybody is hyped about is just $15 + shipping from Hong Kong, so it doesn't break the bank.
YMMV, the only thing you might say negatively about it is that as a community, older players weed out very quickly. The demographic really leans in the 10-15 range, so you might struggle to find adults to talk to other than online.
It's also a practical application of all that group theory the internet's been telling you to learn.
For example, the other day I had to work out after work instead of in the morning, and I had also been encouraged to do some spinning because of a knee issue. I found that I didn't perform well but I don't what caused it exactly: the cardio before lifting, it being late, tiredness from work, eating schedule, the knee, etc. Kind of similar to debugging.
"The big secret of lock picking is that it's easy. Anyone can learn how to pick locks.
The theory of lock picking is the theory of exploiting mechanical defects.
"Meditation - not really a hobby per se, but the amount of clarity it can bring to programming later that day is incredible.
Nutrition / health optimization - understanding how the body works and how to support it through your lifestyle and nutrition can be a hobby in and of itself, and as a bonus, it helps maintain a healthy brain to program with.
Cooking - this will save you money, gain you friends, and can be looked at as 'food engineering'. It's just chemistry you can eat, in the end.
Homebrewing - much like cooking, this is biology and chemistry you can eat. Or in this case, drink.
Geocaching - I've been meaning to try this. I gather it's essentially world-wide interactive scavenger hunts that use GPS.
Other fun and valuable hobbies: public speaking, improv, standup comedy, pick up, drawing, writing, and go.
A disproportionate amount of our members [0] are programmers or software engineers.