Good luck in your endeavors. SQL::Abstract and other SQL abstraction modules eliminate the risk of SQL injection and help make your code easier to maintain when working with databases. You could also implement a CAPTCHA using GD::SecurityImage to prevent getting spam in the first place, another great use of and way to learn perl!