DEV Community

Cover image for My Favorite Free Resources for New Programmers
Ali Spittel
Ali Spittel

Posted on • Edited on • Originally published at zen-of-programming.com

My Favorite Free Resources for New Programmers

Last week, I shared my tips for new developers and how to start coding. I also wanted to share my favorite free resources for learning how to code. I have used or gone through each of these personally, so I can vouch for them being good quality and beginner friendly!

For HTML and CSS

For JavaScript

For other Programming Languages and Concepts

  • This site has it all -- from HTML, CSS, and JS through frameworks and other programming languages. It has a unique REPL tutorial format: Code Academy - this would be my top recommendation for where to start.
  • Learn a web framework -- from the command line through Python and Django and through HTML and CSS -- all in roughly a day: Django Girls - their online tutorial was where web development clicked for me -- it was very pivotal in my career!
  • Try Ruby code directly in your browser: Try Ruby
  • Github has a series of tutorials for learning both Git and GitHub directly in the browser: Try Git
  • A full list of resources for learning Python

For Computer Science

  • A series of illustrated guides to computer science fundamentals: BaseCS - there are also podcast and video versions of some of these articles!
  • A bunch of cheat sheets I wrote when studying for interviews: Coding Cheat Sheets
  • Video versions of a lot of classes including computer science classes: MIT on YouTube

For Code Challenges

  • Tons of challenges with difficulties attached: CodeWars
  • Another code challenge site with more consistency: HackerRank
  • Mathematical coding problems: Project Euler

Awesome beginner Libraries

  • Build art with JavaScript: P5 JS
  • Build a customized map with JavaScript: Leaflet
  • Build virtual reality applications with HTML: A-Frame
  • Build a JavaScript game: Phaser

Communities

  • Ask questions with the #explainlikeimfive, #help, and #meta tags dev.to
  • Participate in Twitter chats, listen to awesome motivational podcasts, and read helpful blog posts: CodeNewbies - they also have a Slack group!

Your Favorites

Again, these are the resources that I have used myself or gone at least gone through, so I can definitely recommend them. Since I do mostly Python and JavaScript development, these lean pretty heavily in that direction! Tweet me your favorite resources! If you liked this article, subscribe to my weekly mailing list with my favorite links from the week and all of my writing from that week!

Oldest comments (52)

Collapse
 
ben profile image
Ben Halpern

I'll also toss in dev.to as a tool. Obviously I'm biased, but If you come actively seeking help, you will find it comes to you a lot of the time.

Check out @brendazam for an example of someone using the platform really well in this regard.

[deleted user] image

[Deleted User]

Collapse
 
aspittel profile image
Ali Spittel

Totally agree! Going to add in a communities section right now!

Collapse
 
brendalimon profile image
Brenda LimΓ³n

Been a beginner learning online is hard, too many questions and a lot of information. Having a community as Dev.to allows me to ask without been judged and get the support that I need to stay focused. Ben and Ali you both are an inspiration, thanks for all your content. Hugs & Husky love πŸΆπŸ‘©πŸ»β€πŸ’»

Collapse
 
nickytonline profile image
Nick Taylor

Another one I love for JS katas is es6katas.org.

Collapse
 
flexdinesh profile image
Dinesh Pandiyan • Edited

Adding to this collection,

If someone wants to keep updated on front-end tips and news - smashingmagazine.com

Collapse
 
shripathy profile image
Shripathy πŸš€

Awesome resources but I think this is going to be one of those article that's gonna be in my bookmarks but I rarely open it. Thanks for the list :)

Collapse
 
d1p profile image
Debashis Dip

Personally I felt like most of the resources we find online are great, However Harvards CS50 course teaches a student from the ground to the top. Great emphasis on algorithm, thinking and in some ways teaching how to learn and think in cs.

Collapse
 
davidchase profile image
David Chase

Thats a really good one :)

Collapse
 
cjbuckethead profile image
Charles Joseph

Could you drop a link to this? Thank you

Collapse
 
d1p profile image
Debashis Dip
Thread Thread
 
abdifatahdev profile image
Abdifatah Mo

Do know where to find this course in youtube?

Thread Thread
 
d1p profile image
Debashis Dip
Collapse
 
zarulyakuza profile image
Comment marked as low quality/non-constructive by the community. View Code of Conduct
zarulyakuza

freenode.net port 6666

Collapse
 
chiangs profile image
Stephen Chiang

You don't know JS is also great to bookmark and read from phone whole queueing.

Collapse
 
chiangs profile image
Stephen Chiang

I like You don't know JS . Great free reading from your phone while queuing.

Collapse
 
ssharizal profile image
ssharizal

FreeCodeCamp should be here.

Collapse
 
lefebvre profile image
Paul Lefebvre

A free PDF for new programmers: Introduction to Programming with Xojo

Collapse
 
epogrebnyak profile image
Evgeny Pogrebnyak

Why a new programmer should learn an exotic language?

Collapse
 
lefebvre profile image
Paul Lefebvre

Learning to program does not mean "learning a language". It means learning the concepts behind programming that you can apply to any language. Starting with a language that is simpler can make it easier to learn these basic concepts and prevent frustration (and even giving up entirely on learning to program). Once you've learned the concepts it makes it much, much easier to learn other languages. In general, most programmers know several different programming languages.

Collapse
 
jhossyd3v profile image
Jhossymar Contreras

Codingame.com is another site for Code Challenges

Collapse
 
lkreimann profile image
Lea Reimann πŸ¦„

Jep, I wanted to recommend that too :D Challenging and fun at the same time! :)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.