Working with smaller objectives to do each day plus other facultative ones, generally when you have finished the simple tasks, you are still in the mood to go further.
Also remember that the best way to do your code is to not repeat a piece of code if it is not useful to do so, organize your code to make it quicker and safer to do a modification, don't try to do everything at once, a large project can be simplyfied in just smaller piece of code putted together, so try to make those pieces of code one after another, it will help a lot in the long term.
Also sometimes a little break is good, It is summer here, hard to work too much with the heat, learn to have a good cycle, I mean by that find the good balance between working enough and not break you down, working too much is as counter productive as not working enough.