You’ve done the Hour of Code and Codecademy, or maybe you’ve taken a couple formal intro classes. Now what? Here are some great resources for staying sharp and taking your coding to the next level.
Cons: The iOS path has a course on Objective-C but not Swift, though the developers have blogged about Swift and it seems they’ve got a course in the works. If you’re not looking to learn about web technologies, however, this site won’t be very useful to you.
Cost: $29/mo individual subscription
Pros: Treehouse is track-based like Code School, but offers additional topics like Android development, PHP, Python, WordPress and even a track on how to start a business.
Cons: If you want access to industry talks, interviews and workshops, you’ll need a Pro account at double the cost of a basic subscription.
Cost: $25/mo individual basic subscription
Pros: If you’re interested in more than just web technologies, PluralSight probably has you covered with its 3500+ courses. There are some learning paths but the site is largely geared toward current professionals who might be preparing for a specific certificate or who need to learn a very specific topic. Here you’ll find videos on .NET, C#, databases, SQL, and methodology-based courses like agile and unit-testing.
Cons: There’s much less hand-holding on PluralSight, so it’s probably useful if you have an intermediate-level understanding of programming basics and/or are very self-directed. PluralSight videos aim to teach you what you need to know without fancier things like themed learning paths.
Cost: $29/mo individual basic subscription ($49/mo subscription for access to exercises, pre-/post-assessments and certificates)
Pros: TopCoder posts challenges in the major areas of design, development and data science for programmers to compete to come up with the best solution. This is a great place to show off your skills, potentially win prizes and get noticed by companies. Some companies use this site as part of their technical interview.
Cons: TopCoder doesn’t have courses to explicitly teach you skills. Rather, you can learn by taking on a challenge and doing your own research about the topic.
Pros: HackerRank easily lets you practice coding (from late beginner skills onwards) in over 30 programming languages. This is a great place to sharpen your skills in algorithms, artificial intelligence or functional programming. HackerRank consists mostly of exercises but has some tutorials like Linux Shell/Bash and Python. The farther up you move in the ranks by completing challenges, the more you could also get noticed by companies. Some companies use this site as part of their technical interview.
Cons: For the most part, HackerRank is more about completing challenges and teaching yourself something along the way. Let StackOverflow be your friendly companion; the forums specific to each challenge have some handy tips, too.
Why do I list having to teach yourself without formal video tutorials as a con? I wrote this guide with the beginner/intermediate programmer in mind – someone who probably considers themselves a student and isn’t used to the fact that ‘learning by doing’ can also mean solving a challenge by looking up lots of bits and pieces on the internet whenever you need it. You won’t have all the information you need all in one place: I think this is a good thing and more representative of what it’s like to be a programmer on the job. If you’re not used to taking the initiative to find a new tool or feature of a particular programming language, sites like TopCoder and HackerRank can make you feel like you have little direction. If you feel this way, I encourage you to dive in with the mindset that you now have more freedom to choose your direction and how you find new things to learn.
Image by Alexander Scheffelaar Klots