As stated in the introduction, this only covers the basics, but enough basics to enable you to tackle a wide variety of applications. Look at other people's code, try and figure out how it works. Read the help for the keywords and techniques you don't know. You now know enough to make your mark in the world.
When looking for challenges start small. Every programmer has an unfinished project that they started but never quite got round to completing. The usual reason is lack of experience and / or time. Beware of tackling something that is too big too early. This way you won't get discouraged when your attempt to rewrite Windows or produce that killer version of Quake before next Saturday fails.
Thank you for your interest in this and I hope it has been a valuable insight into the wonderful world of programming.