Umm, I had an acquaintance who's parents blocked him from visiting porn sites, and he became kinda sex crazy, because he had no real understanding about sex. I guess what I'm saying is porn is a phase kids go through, and trying to prevent your son being exposed to it may have bad repercussions. If you talk to him about it one on one, and express your opinions on his age and say maybe you don't want him looking at any hardcore stuff, but leave the choice up to him, he will be less likely to view the more harsh content out there. I know for a fact that there is no program that can succesfully block a kid from viewing porn, unless you prevent them from going on the net, as most programs can be disabled/got around (my acquaintance resorted to filesharing programs).
Anyway those are just my opinions

, you don't have to take heed of them if you don't want to, and if that's the case then your best bet is to try and sign up with an ISP who has a family filter option. That means your ISP will block access to any adult-rated sites, though your son will still be able to get porn through filesharing programs, so you'll have to set up a firewall to only allow outgoing requests to port 80 (google's your best bet).