How can I make it to gold or silver in USACO on my first year

Looking ahead to next year I set a goal to make it to the silver or gold division of USACO. At this point, I have little to no coding experience. I however am very dedicated and am prepared and willing to work several hours each day to reach my goal. Does anyone have any advice on how I can reach this. I know I want to use c++ or java, so should I learn one of these first. I already made a plan so if anyone wants to tweak it or completely change it be my guest.

Learn about Computer science through CS50
Learn basics through codecademy
Practice on code chef, top coder etc.
Learn algorithms through online course
Do a one week summer program on coding
taking Ap Cs at my school next year to reinforce anything and possibly learn some new things