socket practice