Now, to the untrained eye this device may look like a simple iphone in a waterproof box, and that's actually what it is!
Remember that GPSs do not work underwater, so this solution can be used for guiding to a point of interest during surface swimming, such as for starting the dive on top of a wreck. Where surfacing is not feasible, you can carry it with you underwater attached to a reel and then send it to the surface for a minute or so. In this way the phone gets the signal and when you pull it underwater the screen still shows the last received location.
Please note: the phone in a box can play 2 roles: the one described here and recording positions as the GPS logger explained in the other page, it just needs an additional app running to record the positions.
So why would you need the other GPS logger if you can do it all with a phone in a box?
The phone in the box has a limited buoyancy and whenever you need to move to trace a contour, such as a sandline, you need something more buoyant that can sustain the pull of the cable.
You can read here how I used it for finding a small wreck, 400 meters from the coast, in 2 meters of underwater visibility.
You can buy the waterproof Dolfinbox from Whitworths, waterproof to 24 m, $25, and add some styrofoam to hold the phone in place. I have used an old iPhone I had in the drawer, you know... just in case the waterproof box isn't so. As the transparent lid of the box is actually matt, I have made it more transparent by using fine sandpaper (1200) and Brillo polisher, which is the same technique you would use to remove scratches from an acrylic dome.
In terms of apps, my preference goes to Pure GPS. It's free and comes with a simplified graphic interface to guide the swimming to the predefined waypoint.