Layering your work
Understand that any work you are planning on doing with your dog (with success desired) must first begin with consistent enough behavior on the handlers part. The more consistent the handlers actions are, the easier it is for the dog take hold of what is being taught - even if it is not being taught all that well. Therefor, even an amateur handler can accomplish pretty hefty goals with his/her dog with a level of consistent approach to correction and (more importantly) the redirection to what we want. Such things as social behavior, off leash commands, and overall behavior are impacted the most with a determined, scheduled, realistic effort by the owner. So, layer it with succesful goals that YOU can achieve before you set them for the dog. How often can you present social play to your dog?....How often can you be off leash in public areas?....what does your schedule allow?....Answers to those questioms, which have nothing to do with the dog, have everything to do with your success.
First - set yourself up for success.
Second - teach the dog what you want