When I first started my exploration of WP I did so one small step at a time. When I look back on those initial stages of learning I think about how much quicker the process could have been if I had just dove in and conquered obstacles as they arose.
For beginner WP developers it may be tempting to stick with theme modification. By this I mean just taking a theme, whether premium or free, and simply modifying bits of it's code (or child theming) to get the desired results. This can be great in some cases and well warranted. However, in the end this leaves you or your client with a pile of code you may or may not fully understand (seriously, open up
functions.phpon a theme you didn't create and witness how much excess code your theme ships with).
I was in the same boat initially, child-theming and theme-editing my way to early victories. This was important, but it wasn't until after I built my first theme from scratch that I felt fully in control of my theme. Building a theme from scratch also gives you a nice sense of accomplishment in the end that you may not get from editing an existing theme: everything you see in the final design was your own doing. So what is starting from scratch? An empty folder in
wp-content/themes/on your local dev server. Then just add
index.phpand style.css and get coding.
So if you're looking to get some good hands on practice with WP just open up a new folder on your dev server and get started. If you're not the type to craft all site assets by hand then just Google free website PSD templates. Find a template you like and then theme it up. PSD templates are great because they often come pre-sliced so you get to spend most of the time in the code editor and in the browser.