I sometimes get questions on how to get started with programming. And the answer unfortunately is often: it depends. It depends on what your experience is, what your goal is, and mostly, what you like doing. To be a bit more helpful in this, I decided to create a list with some resources on how to get started.
The list focusses on different areas, such as general courses, web development, backend development, and mobile development, plus a list of basic skills which are handy to have.
If there are resources missing which you’d like to see here, please put a comment below, and I’ll update the list as soon as possible! Thanks for reading!
This is a list of coding resources which cover a broad range of topics, and these are generally a great place to start.
Free online courses from universities. Offers a wide range of free online courses, ranging from machine learning to algorithms. Offers courses in Scala, Python, Java, C and many more.
Similar to Coursera, edX offers free online courses and classes. There are courses available in English, Spanish, French, German and Dutch and some of the topics include Android, Java, C, HTML5, UX, C#, and Python.
- FutureLearn (paid)
Just like Coursera, edX and MIT, FutureLearn offers free online courses from top universities and specialist organizations. Programming languages: Java, Python & Haskell.
- Khan Academy
Maybe not for the absolute beginner, Udacity offers free courses built by Google, Facebook and others which will teach you Data Science, Machine Learning, Programming, Cloud computing, and much more
- Team Treehouse (paid)
You can try Team Treehouse one month for free. But this website is really one of my favourites. Treehouse offers different ‘career’ tracks: Rails Development, Java Web Development, Web Design, Front End Web Development, iOS Development with Objective-C, Beginner Android Development, PHP Development, WordPress Development, Starting A Business, Learn WordPress, Python, Ruby and much more…
- GA Dash
- Lynda (paid)
Learn a new skill online with Lynda. Just like Team Treehouse, this site offers a Free Trial. You can, among others, learn C++, Java, C, Visual Basic and Python.
- The Odin Project
- MIT OpenCourseWare
Here you will find the materials used in the teaching of MIT’s subjects. You can find a lot of courses on problem solving, C, Java, C++, MATLAB, Python and algorithms.
- CodeAvengers (paid)
- Code School (paid)
- Codementor (paid)
Codementor offers different online coding courses, for example on Angular JS, Ruby on Rails, iOS, Python and they offer a Web Development Bootcamp.
- Skillcrush (paid)
Skillcrush is an interactive online learning community. You can choose different career blueprints: Visual Designer, Web Designer, Web Developer, Front End Developer, Freelance WordPress Developer and Ruby on Rails Developer.
- One Month (paid)
One Month offers a lot of classes and tech career paths. They have an ‘Intro to Coding’ track intended to help you master the basics of software coding.
The command line is usually a big black screen in which you can type things. While it might feel intimidating at first, following these guides will take that fear away, and makes you much productive for tasks like editing files, copying and removing them, and many other tasks.
- Command Line Power User
video series for web developers on learning the command line.
- A Command Line Crash Course
This crash course by Viking Code School teaches you everything thing you need to know.
- The Command Line Crash Course
Part of the ‘Learn the Hard Way’ book series. Personally, I really like these books. And the best part: you can follow this course online.
- A Command Lina Primer for Beginners
Lifehacker wrote a comprehensive blog post about the Command Line.
GIT & GITHUB
Git is one of the most popular systems to version your source code, so you can easy revert to previous versions if you make a mistake. Github, not to be confused with Git, is a website where people can host their source code, so it can be easily shared with others.
- Try Git
Really nice Git tutorial from Code School & GitHub.
- Git Immersion
“Git Immersion is a guided tour that walks through the fundamentals of git, inspired by the premise that to know a thing is to do it”.
- Git the Simple Guide
Great guide for getting started with git by Roger Dudler. Available in a lot of different languages.
- GitHub Guides
You can also find a lot of guides and tutorials on GitHub.
- Git Tutorial
A very comprehensive guide on git from tutorialspoint.
HTML / CSS
HTML and CSS are generally used for creating websites and styling them. HTML defines the basic structure, such as titles, paragraphs and tables, while CSS can be used to make those items look pretty!
MDN is one of the most popular resources for developers on the Web. Designed by developers for Developers.33.
- HTML Dog
- HTML5 Rocks
A project from Google where you can find lots of tutorials to dive a little deeper in HTML5.
A great HTML & CSS tutorial that also teaches you about the world-wide web, the browser, and the internet.
- Learn to Code HTML & CSS
Learn to Code HTML & CSS is a simple and comprehensive guide dedicated to helping beginners learn HTML and CSS: by Shay Howe.
- HTML5 Beginner’s Guide
A nice and brief introduction to HTML5 and CSS. What I like about this guide is that it encourages you to use a text editor.
- HTML5 & CSS3 Fundamentals: Development for Absolute Beginners
This is a Microsoft Virtual Academy course and it’s a bit different from the rest. In this course, you’ll watch 21 videos about HTML & CSS. It’ll teach the fundamentals of HTML5 & CSS programming and besides that, you’ll learn concepts about web pages, CSS3 styles, and HTML5 features. It takes some time to go through all the videos, but they are very clear and easy to follow. You’ll definitely be an expert when you finish this course!
- Learn JS
Python is an easy programming language to get started with, while still offering a lot of possibilities. Python provides and easy way to understand programming concepts such as variables, loops and functions and is therefore probably one of the best languages to get started with programming.
- A Byte of Python
A Byte of Python is also an online book. It’s a free book and serves as a tutorial for the Python beginner.
- Learn Python.org
Learn Python with this interactive Python tutorial in your browser.
- Learn Python the Hard Way
Learn Python the Hard Way by Zed Shaw is a great introduction to programming in Python. I can really recommend reading this book.
RUBY / RAILS
Ruby is another programming language, similar to Python. Rails is a framework which uses Ruby to easily create the backend, such as interaction with a database.
- Learn Ruby the Hard Way
Another great book from the ‘Learn the Hard Way’ series by Zed Shaw. This book teaches you everything about Ruby you need to know.
- Try Ruby
You can try out Ruby code immediately with this tutorial. Try Ruby is a very basic 15-minute interactive tutorial that gives you a quick understanding of Ruby.
- Rails for Zombies
Here you can find lots of videos about Ruby on Rails. Each level begins with a quick video lesson, followed by interactive challenges. You program Rails in the browser, and no installation of Ruby & Rails is needed.
- Rails Tutorial
Ruby on Rails Tutorial: Learn Web Development with Rails by Michael Hartl. It’s a great comprehensive tutorial to get started with Ruby on Rails
Also, a great website if you want to learn everything about Ruby. There are beginners, intermediate and advanced levels available.
- Ruby in Twenty Minutes
A small Ruby tutorial that should take no more than 20 minutes.
- Rails Karate
Learn Rails by watching video tutorials for free.
JAVA / KOTLIN
This list wouldn’t be complete without a few links to Java and Kotlin. Java is mostly used for backend programming, while Kotlin can do the same, but it’s most popular when building Android applications.
- Learn Java Online
A pretty good resource to teach you the basics of Java
- Code Gym
While I haven’t tried this one yet, Code Gym seems like a good online place to learn Java without the need to install anything, with a nice story to keep you interested!
- Kotlin Koans
Kotlin Koans are a collection of programming exercises which will help you through the basics while diving into more complex subjects at a later stage.
Lots of resources about Kotlin. They are not all beginner friendly, but it’s a great collection of links and books.