Firstly, don't be so hard on yourself. Cheers to you for building something.
Secondly, be sure to test functionality fully and often. Like, when you start a method, after any big functionality in the method and at the end of the method? Or whatever works for you. In this example, when you overloaded the init method you'd probably have seen the error pop up? Just a thought, it is a bit of a pain though.
However, in general the best bug breaking strategy is simple... Take a break! Grab a coffee, walk your dog, get some groceries... Just get your mind off the problem and come back to it with a fresh pair of eyes... It's the next best thing to a new person. Just make SURE you aren't thinking about the problem while you're taking your break! It's gotta be a real break.
You might also consider looking into co-working spaces in your area?
Good luck! Have fun.