A very good friend of mine (and an Aquanauts IDC grad) ran the Khao Lak branch of a big Scandinavian dive company in Khao Lak this high season and loved it.
Day trips to the Similans? Can't beat that.
Khao Lak is back. There was a big feature in the Bangkok Post just yesterday (search their website) on how Khao Lak has now recovered from the tsunami and tourist numbers are what they used to be. The place had 100% occupancy through much of high season this year and there are about 3,300 more hotel rooms opening for next season.
There's no gogo or beer bars, I think 1 disco so don't go there for nightlife. But if you want great diving during the day and b-e-a-u-tiful beaches, you will be quite happy.
Personally, I like Phuket for a short holiday. I stay in Patong and dive with Dive Asia. Get good day trips, but have plenty of good restaurants, music places and bars at night. It's not quite the same "complete package" as it is here in Pattaya -- fun diving in the day and fun all night is why many divers choose Pattaya -- but it's a good getaway.
As for Krabi, Krabi Town is not where you want to go. It's Ao Nang. Never been, but my friends throught it was beautiful.
Whereever you go, though, book early. January is quite busy.