One of the ways I practice coding is by using the amazing FreeCodeCamp website. They provide training, and set projects that have to meet a "client brief". This is great for those of us that don't have loads of ideas of our own about what websites to build. It also gets you used to having to meet very specific design and functionality criteria, exactly as you would if you were developing a website for a client.