I've found that HackerRank is a great place to practice. The site doesn't really teach you anything, it's up to you to look up how to code, however it's a good place to learn by solving common problems in cs. They provide you test cases you need to satisfy and you get points for it. It's somewhat motivating to get graded.