The best and cheapest dive in the area is the St. Andrews Park Jetty. The west side is the best. You park at the last Beach parking lot and walk down to the kiddie pool area. Cross the kiddie pool then go over the rocks. There's several ways to dive the jetty. Start at the shallow end, there's gaps in the rocks that you can swin through, go to the bottom, aproximatley 15 feet to begin with, swim south, you'll end up at 50-65 feet. You can surface and cross the rocks back into the kiddie pool. Again there's a gap that divers use to cross. Other option is to start shallow and swin south turn around and swim back. My husband likes to hug the bottom but I swim 5-6 feet off the bottom cause you see more in the rocks. If you're unsure of where to turn around start deep and swim north to the shallow end. If you're there on a weekend, particularly Sunday, you'll see where the divers enter and exit. Only crazy people swim around the tip.
You want to time your dive with the incoming tide. Either find it on the internet or ask at Panama City Dive Center. They are located just before you enter the park on Thomas Drive. They will tell you about diving the jetty and rent tanks, probably have a web site. I know they have dive masters that will escort you if you're unsure the first time.
There's coral and other interesting things growing on the rocks. We've seen al sorts of tropicals, spade fish, baracuda, shark, jew fish, eagle rays, flounder and if you look in the rocks, octapus and stone crabs.
No spearfishing but if you have a fishing liscense you can harvest stone crab claws, The season is open till Mid May.