Thursday, December 19, 2019

Resources for Learning to Program in New Languages


This is a collection of resources for teachers, students, parents and others to learn programming in a variety of languages, context and media.

Free Resources

  • A Byte of Python
    • Free online book for beginners learning to code. You can choose to download it for free as a PDF or spend money for a hard copy.
  • Android Developers
    • Official site for Android app developers. Learn how to build your first Android app with detailed online coding tutorials and training courses.
  • Code.org
    • Code.org provides learning materials specifically dedicated to increasing the rates of female and minority students entering computer science careers. Their free coding courses are designed for K-12 students, but can be useful to all ages. Start out with their quick Hour of Code tutorials, or build projects in lab courses.
  • Code.org Student 
    • A youthful resource for finding online courses or local classes. Includes games and activities.
  • CodeAbbey
    • A collection of beginner-to-advanced practice problems that allow you to earn certificates and hone your skills. Consider it a type of fun homework.
  • Codeacademy
    • Ryan Hanna’s alma mater is helping educate the world in programming; choose from a catalog of courses that meet your learning needs and get coding.
  • CodeEval
    • See how you stack up against other coders with a large library of dynamic coding challenges while building a profile and attracting the attention of programmer-seeking companies.
  • CodeFights
    • Explore programming in your preferred coding language and on your own time. Whether you’ve got five minutes or five hours, Code Fights allows you to practice for job interviews, play arcade-style coding games, and compete in screen-to-screen challenges
  • Coderbyte
    • Choose a coding language and solve challenges; accompanying solutions and tutorials help you cement crucial programming skills with step-by-step instructions
  • CodeWars
    • A great resource to train yourself, collaborate with others, and create in a variety of programming languages.
  • Command Line Power User
    • A handy video series for web developers learning how to interact with computer programs.
  • Conquering the Command Line
    • Free online book by Mark Bates that goes very in-depth. You can purchase hard copy or screencasts.
  • CSS-Tricks
    • Goes very thoroughly into CSS with their big, bad CSS almanac. However, the blog now goes beyond just CSS and talks about other things like Sass, JavaScript, PHP, and more. Explore tons of resources and check out their code snippets.
  • Cybrary
    • Free crowd-sourced cybersecurity and IT learning videos. Covers topics like computer and forensics, cryptography, and cyber threat intelligence.
  • Dataquest
    • Hands-on free coding courses that teach you the skills you need to become a data scientist, data analyst, or data engineer. Build projects in your browser and work on real-life data science problems.
  • David Walsh Blog
    • Web developer Walsh shares a host of programming tutorials in addition to sharing demos and info about coding conferences.
  • Derek Banas Blog
    • A single video per language. Good for viewers who like longer but more thorough videos instead of bite-sized chunks, or want to watch overview videos of languages before diving into courses/curriculums.
  • Edabit
    • Bite-sized coding challenges that simulate what programming is like in the real world.
  • EdX  (Professional certificates at a cost)
    • Students choose from an extensive collection of self-paced computer science courses fueled by university curriculum — it was founded by Harvard and MIT in 2012.
  • EliteDataScience
  • Eloquent Javascript

Resources with Fees

  • Bitbucket   ($10 per month), free plans available
    • Collaborative; works in conjunction with Git to help programmers work jointly on projects.
  • Code Avengers  ($29 per month; $150 for six months)
    • Project-based learning tools for creating and real-life problem solving, tailored to your own individual programming path. Build websites, apps, or games, this resource has helpful lessons, quizzes, and They even provide an educational environment for junior coders.
  • Computer Science for Babies  (prices vary)
    • A book series designed to help your little ones make connections to computer science principles
  • Coursera (prices vary)
    • Coursera is one of the best places to learn to code for free, with its professional and versatile course options. The site is a large online course library where classes are taught by real university professors. All courses are free of charge, but you have the option to pay for a “Coursera Verified Certificate” (prices range between $30-$100) to prove course completion. Sometimes paying for a certificate also grants access to content not available in the free versions. Coursera also offers “Specializations,” which are collections of courses on a specific topic, typically with a capstone project at the end.