If you want to learn a programming language in 2018 then you could do a lot worse than Python.
The versatile language is not only used in a wide range of roles—ranging from web developers to sysadmins/devops—but also in highly-paid data science jobs.
Last year, programming Q&A hub Stack Overflow declared Python was the fastest-growing programming language, based on the sharp rise in interest in Python-related questions.
But where to get started if you want to learn Python? Thankfully there's a wealth of free resources out there, including books, sites, videos, and even courses.
SEE: Hiring kit: Python developer (Tech Pro Research)
Think Python - This book breaks uses everyday English to break the fundamentals of the language into easy-to-digest chunks.
A Byte of Python - This clear guide makes learning the basics of Python a breeze.
Automate the Boring Stuff with Python - Easy to read, this guide for beginners takes a lot of the pain out of learning a new language.
Dive into Python - This continually updated book is a great choice for those familiar with programming who want to learn Python.
Invent With Python - Walks you through building various apps with Python, assuming no knowledge. While the layout could be better, the content seems good.
Python Practice Book - Another concise guide walkthrough of the fundamentals of Python with plenty of code examples.
How to think like a computer scientist: Learning with Python - Once you're familiar with the basics, this book will walk you through the more advanced concepts and the language's theoretical underpinnings.
The Django Book - Aimed at those with a working knowledge of Python, this book will teach you everything you need to know about the web framework Django.
A Python Book: Beginning Python, Advanced Python, and Python Exercises - This overview of Python, with examples, could be useful as a reference book.
Python Programming - A Wikibook that provides an outline of the language.
Non-Programmer's Tutorial for Python - Another Wikibook that walks you through the basics of the language alongside sample programs.
Courses / tutorials
LearnPython.org's interactive tutorials - A series of simple tutorials to provide a gentle introduction to the language.
The Python Tutorial - The official introduction to the language offers more detailed walkthroughs of a wider range of Python fundamentals.
Introduction to Computer Science and Programming Using Python - This series of MIT lectures offered by edX is designed to ease in those unfamiliar with programming.
Introduction to Computer Science - This free introductory course from Udacity teaches you by having you build web apps.
Google's Python Class - Google's free class aimed at people with minimal programming experience.
Pygame official tutorials - Making games is a fun way to learn, as demonstrated by these tutorials for the pygame software library.
Codeacademy - Various free lessons that teaches the basics of Python via interactive questions, with optional paid extras.
Intro to Python for Data Science - This free course focuses on getting started with using Python to interrogate data.
Idiomatic Python - An series of tutorials for those familiar with programming who want to get up to speed on Python.
SEE: Job description: Java developer (Tech Pro Research)
Learn Python in One Video - The title may be a bit optimistic but YouTuber Derek Banas takes his time to explain concepts clearly by walking through a range of simple programs.
Python tutorials on thenewboston - Approachable and easy-to-understand YouTube series walking through the language basics.
Intermediate Python Programming - YouTuber sentdex talks you through how to do more with Python.
Stack Overflow - As with every language, the crowd-sourced Q&A site Stack Overflow provides a wealth of answers and code examples for Python.
Programiz.com - Learn Python Programming - An easily digestible guide to how to get started with Python, with plenty of code examples.
Instant Python - A bare-bones, crash-course introduction to Python.
Learn Python in 10 minutes - Not really, but it will give you a whistle-stop tour of the language with code examples.
Python Tutorials - This guide walks you through the basics of the language, as well as demonstrating some of its uses.
Full Stack Python - This curated list of guides and tutorials aims to answer any Python-related web development question you might have.
Python on TutorialsPoint - Clearly written overview of the language with code examples and diagrams.
- The truth about MooCs and bootcamps: Their biggest benefit isn't creating more coders (free PDF) (TechRepublic cover story)
- Five highly-paid and in-demand programming languages to learn in 2018 (TechRepublic)
- 7 programming languages that every developer should learn in 2018 (TechRepublic)
- 8 skills programmers must master before a technical interview (TechRepublic)
- 10 ways that IT pros and developers can keep their tech skills up to date (TechRepublic)
- The 10 easiest programming languages to learn (TechRepublic)
- Learn these 3 languages now if you want to become a data scientist (TechRepublic)
- Programming languages: Your best options (ZDNet)
- IT Hiring Kit: Programmer (Tech Pro Research)
Nick Heath is chief reporter for TechRepublic. He writes about the technology that IT decision makers need to know about, and the latest happenings in the European tech scene.