A martial art for a programmer
elblanco: Doesn't really matter. Pick a few that interest you and try them out for a month. Try at least two different schools for each style. Saying Tien Shan Pai sucks and Liu He Ba Fa rocks, makes no sense. It's just whatever works for you. I know a guy that was absolutely in love with Hsing Yi Quan, had studied it for 20 years. I found it intolerably boring. Tang Lang on the other hand was a blast.A lot of it depends on the vibe of the school as well. That's why I say try a couple.If you want to ground and pound, and that's what gets you off, try a bit of some grappling styles. BJJ is ok, but depending on where you live there's probably some modern style schools you can give a go at also (usually some combo of Muay Thai and some kind of grappling).If you want to enjoy something with a long history, and steep yourself in the culture, try some kind of Kung Fu style. I find Chinese styles exercise different parts of the brain I don't use as much for engineering and actually can be very relaxing. Most of it is highly impractical in a modern setting, but it's like studying painting or calligraphy or some such.If you want to be tightly disciplined, Japanese styles, with their strict emphasis on form, ceremony and procedure can be highly enjoyable. I liked my brief study of Shotokan for just that reason, it allowed me to turn off the self-discipline for a bit and let something else take charge.If you want something you can maybe take to high levels of sport and competition, Tae Kwon Do is probably the place to go. There are a bajillion TKD places around, so choose wisely. Lots of them will be belt-mills selling personal fitness more than the Olympic sport. Try to find a school with lots of Korean students.But there are others, off the beaten path you can try and have fun with too like Escrima or Capoeira.