And without hesitation, I will tell you that creating a WordPress theme for the theme directory is the absolute best place to accomplish that goal. Between the time I learned the web development basics and picked up a development internship, I worked on creating a theme for the directory. And it helped immensely.
So here's why you should build a theme for the WordPress theme directory this year.
Great way to learn web development
Obviously, creating a WordPress theme is the absolute best way to learn web development. There's only so much "book learning" that you can do before you just need to start building.
Creating a WordPress theme makes for the best environment to take what you've learned and really turn them into actual skills. So what if this one thing fails? Just change the code, fix the error, learn your mistake and move on.
I learned so much by creating my first two WordPress themes, Nuovo and Giornalismo. I learned all of the WordPress functions and tags and how to make PHP work and how to create good styles. And most importantly, I tried, failed, learned and became a much better developer because of it.
So creating a WordPress theme will quickly make what you learned into real world web development skills.
Chance to learn about support and maintaining a project
Once you get your theme into the theme directory (which this list will help you get through the review process faster), you're going to have to maintain and support your theme. People are going to have questions about your theme. They'll find issues with your code (no matter how matter how many times you go over it).
And because you're going to have others using your code, you have to learn how to maintain the code and provide support for those who are using your theme.
I found this to be highly useful. Learning what problems and what ideas other people had about my product (because that's what it is) gave me ideas about what I could do better, both for this theme and future themes. And I also learned how to work with others to find a solution to problems, which is what we are as web developers.
Your best opportunity to grow as a web developer
But most important, this is a great opportunity to grow as a web developer. As I mentioned before, the real key to learning web development is to just do it. Open up a code editor and just write code. For me, a lot of concepts didn't hit home until I started typing them out, running them and either failing or succeeding.
And that affords you time to try things, to fail, to try some other things, to fail again and eventually to succeed. And once you're done with the theme and it's made it's way into the WordPress theme directory, you're going to have a lot more experience. That just makes you a better developer.
So if your goal in 2018 is to be a better web developer, try creating a WordPress theme for the directory. It will help you in ways nothing else can.