The tarpit approach is a double-edged sword. Sure, you're keeping some script kiddie's machine locked up (maybe), but you're also keeping socket connections open and wasting resources on the machine they are targeting. A much more efficient approach is using fail2ban and a firewall to just drop traffic from offenders.
You could also do a combined approach with the tarpit + fail2ban parser that could just ban people stuck for longer than x amount of seconds.
tarpit will likely hurt yourself as the system ties up sockets for a long time and you'll run out eventually. You'd have to combine the tarpit with something to limit the number of connections you accept.
IMO, setting up ssh on another port has been useful, especially combined with port knocking. And of course turning off password auth.