Category Archives: Resources Lists

Data Science/Artificial Intelligence, Learning Lists, Resources Lists

49 Essential Resources To Learn Python

Hi, I’m Roger, and I’m a self-taught data analyst/scientist (but only on my good days). I spent a lot of time thinking about Python — and here’s a compilation of resources that helped me learn Python and can hopefully help you.

I’ve broken it down to:

Beginner resources for those just starting with programming and Python

Intermediate resources for those looking to apply the basics of Python knowledge to fields like data science and web development

Advanced resources for those looking to get into concepts like deep learning and big data with Python

Exercises that help practice and cement Python skills in practice

Beginner Resources To Learn Python

learn python

1- Welcome to Python.org

The official Python site offers a good way to get started with the Python ecosystem and to learn Python, including a place to register for upcoming events, and documentation to get started.

2-Learn Python the Hard Way

An online book with a paid and a free version. The free version goes into an outline of the content and can be a useful to-do list.

3-Basic Data Types in Python – Real Python

RealPython dives into the different data types in Python in detail. Learn the difference between floating point and integers, what special characters can be used in Python and more.

4-How to Run Your Python Scripts – Real Python

This simple intro to Python scripts through the command line and text editors will get you up and running for your first Python experiments — a handy tool to get you started as you learn Python.

5-Python Tutorial: Learn Python For Free | Codecademy

Codecademy offers a free interactive course that helps you practice the fundamentals of Python while giving you instant, game-like feedback. A great device for learning Python for those who like to practice their way to expertise.

6-Google’s Python Class | Python Education | Google Developers

The official Python development class from Google’s developers. This tutorial is a mix of interactive code snippets that can be copied and run on your end and contextual text. This is a semi-interactive way to learn Python from one of the world’s leading technology companies.

7-Learn Python – Free Interactive Python Tutorial

This interactive tutorial relies on live code snippets that can be implemented and practiced with. Use this resource as a way to learn interactively with a bit of guidance.

8-Jupyter Notebook: An Introduction – Real Python

Want an easy, intuitive way to access and work with Python functions? Look no further than Jupyter Notebook. It’s much easier to work with than the command line and different cobbled together scripts. It’s the setup I use myself. This tutorial will help you get started on your path to learn Python.

9-Python Tutorial – W3Schools

W3Schools uses the same format they use to teach HTML and others with Python. Practice with interactive and text snippets for different basic functions. Use this tutorial to get a firm grounding in the language and to learn Python.

10-Python | Kaggle

Kaggle is a platform which hosts data science and machine learning competitions. Competitors work with datasets and create as accurate of a predictive model as possible. They also offer interactive Python notebooks that help you learn the basics of Python. Choose the daily delivery option to have it become an email course instead.

11-Learning Python: From Zero to Hero – freeCodeCamp.org

This text-based tutorial aims to summarize all of the basic data and functional concepts in Python. It dives into the versatility of the language by focusing on the object and class portions of the object-oriented part of Python. By the end of it, you should have a neat summary of objects in Python as well as different data types and how to iterate or loop over them.

12-BeginnersGuide – Python Wiki

This simple tutorial on the official Python Wiki is chock-full of resources, and even includes a Chinese translation for non-English speakers looking to learn Python.

13-Python Tutorial – Tutorialspoint

Set up in a similar fashion to W3Schools, use Tutorialspoint as an alternative or a refresher for certain functions and sections.

14-Python (programming language) – Quora

The Quora community is populated with many technologists that learn Python. This section devoted to Python includes running analysis and pressing questions on the state of Python and its practical application in all sorts of different fields, from data visualization to web development.

15-Python – DEV Community – Dev.to

Dev.to has user-submitted articles and tutorials about Python from developers who are working with it every day. Use these perspectives to help you learn Python.

16-Python Weekly: A Free, Weekly Python E-mail Newsletter

If you’re a fan of weekly newsletters that summarize the latest developments, news, and which curate interesting articles about Python, you’ll be in luck with Python Weekly. I’ve been a subscriber for many months, and I’ve always been pleased with the degree of effort and dedication placed towards highlighting exceptional resources.

17-The Ultimate List of Python YouTube Channels – Real Python

For those who like to learn by video, this list of Youtube channels can help you learn in your preferred medium.

18-The Hitchhiker’s Guide to Python

Unlike the rest of the resources listed above, the Hitchhiker’s guide is much more opinionated and fixated on finding the best way to get set up with Python. Use it as a reference and a way to make sure you’re optimally set up to be using and learning Python.

19-Python: Online Courses from Harvard, MIT, Microsoft | edX

edX uses corporate and academic partners to curate content about Python. The content is often free, but you will have to pay for a verified certificate showing that you have passed a course.

20-Python Courses | Coursera

Coursera’s selection of Python courses can help you get access to credentials and courses from university and corporate providers. If you feel like you need some level of certification, similar to edX, Coursera offers a degree of curation and authentication that may suit those needs.

Intermediate Resources

learn python

21-Getting started with Django | Django

The official Django framework introduction will help you set up so that you can do web development in Python.

22-LEARNING PATH: Django: Modern Web Development with Django

This resource from O’Reilly helps fashion a more curated path to learning Django and web development skills in Python.

23-A pandas cookbook – Julia Evans

I learned how to clean and process data with the Pandas Cookbook. Working with it enabled me to clean data to the level that I needed in order to do machine learning and more.

It works through an example so you can learn how to filter through, group your data, and perform functions on it — then visualize the data as it needs be. The Pandas library is tailor-built to allow you to clean up data efficiently, and to work to transform it and see trends from an aggregate-level basis (with handy one-line functions such as head() or describe).

The Pandas cookbook is the perfect intro to it.

24-Newest ‘python’ Questions – Stack Overflow

The Stack Overflow community is filled with pressing questions and tangible solutions. Use it a resource for implementation of Python and your path to learn Python.

25-Python – Reddit

The Python subreddit offers a bunch of different news articles and tutorials in Python.

26-Data Science – Reddit

The Data Science subreddit offers tons of resources on how to use Python to work with large datasets and process it in interesting ways.

27-Data science sexiness: Your guide to Python and R

I wrote this guide for The Next Web in order to distinguish between Python and R and their usages in the data science ecosystem. Since then, Python has pushed ever-forward and taken on many of the libraries that once formed the central basis of R’s strength in data analysis, visualization and exploration, while also welcoming in the cornerstone machine learning libraries that are driving the world. Still, it serves as a useful point of comparison and a list of resources for Python as well.

28-Data Science Tutorial: Introduction to Using APIs in Python – Dataquest

One essential skill when it comes to working with data is to access the APIs services like Twitter, Reddit and Facebook use to expose certain amounts of data they hold. This tutorial will help walk you through an example with the Reddit API and help you understand the different code responses you’ll get as you query an API.

29-Introduction to Data Visualization in Python – Towards Data Science

Once you’re done crunching the data, you need to present it to get insights and share them with others. This guide to data visualization summarizes the data visualization options you have in Python including Pandas, Seaborn and a Python implementation of ggplot.

30-Top Python Web Development Frameworks to Learn in 2019

If you want a suite of options beyond Django to develop in Python and learn Python for web applications, look no further than this compilation. The Hacker Noon publication will often feature useful resources on Python outside of this article as well. It’s worth a follow.

Advanced Resources

learn python

31-Beginner’s Guide to Machine Learning with Python

This text-based tutorial helps introduce people to the basics of machine learning with Python. Towards Data Science, the Medium outlet with the article in question, is an excellent source for machine learning and data science resources.

32-Free Machine Learning in Python Course – Springboard

This free learning path from Springboard helps curate what you need to learn and practice machine learning in Python.

33-Machine Learning – Reddit

The Machine Learning subreddit oftentimes focuses on the latest papers and empirical advances. Python implementations of those advances are discussed as well.

34-Python – KDnuggets

KDNuggets offers advanced content on data science, data analysis and machine learning. Its Python section deals with how to implement these ideas in Python.

35-Learn Python – Beginner through Advanced Online Courses – Udemy

Udemy offers a selection of Python courses, with many advanced options to teach you the intricacies of Python. These courses tend to be cheaper than the certified ones, though you’ll want to look carefully at the reviews.

36-A Brief Introduction to PySpark – Towards Data Science

This introduction to PySpark will help you get started with working with more advanced distributed file systems that allow you to deal and work with much larger datasets than is possible under a single system and Pandas.

37-scikit-learn: machine learning in Python

The default way most data scientists use Python is to try out model ideas with scikit-learn: a simple, optimized implementation of different machine learning models. Learn a bit of machine learning theory then implement and practice with the scikit-learn framework.

38-The Next Level of Data Visualization in Python – Towards Data Science

This tutorial walks through more advanced versions of data visualizations and how to implement them, allowing you to take a preview of different advanced ways you can slice your data from correlation heatmaps to scatterplot matricies.

39-Machine Learning with Python | Coursera

Coursera’s selection of courses on machine learning with Python are veryw well-known. This introduction offered with IBM helps to walk you through videos and explanations of machine learning concepts.

40-Home – deeplearning.ai

Deeplearning.ai is Andrew Ng’s (the famous Stanford professor in AI and founder of Coursera) attempt to bring deep learning to the masses. I ended up finishing all of the courses: they offer certification and are a refreshing mix of both interactive notebooks where you can work with the different concepts and videos from Andrew Ng himself.

41-fast.ai · Making neural nets uncool again

This curated course on deep learning helps break down section-by-section aspects of machine learning. Best of all, it’s completely free. I often use fast.ai as a refresher or a deep dive into a deep learning idea I don’t quite understand.

42-Learn and use machine learning | TensorFlow Core | TensorFlow

This tutorial helps you use the high-level Keras component of TensorFlow and Google cloud infrastructure to do deep learning on a set of fashion images. It’s a great way to learn and practice your deep learning skills.

Exercises To Learn Python

learn python

43-Datasets | Kaggle

Kaggle offers a variety of datasets with user examples and upvoting to guide you to the most popular datasets. Use the examples and datasets to create your own data analysis, visualization, or machine learning model.

44-Practice Python

Practice Python has a bunch of beginner exercises that can help you ease into using Python and practicing it. Use this as an initial warmup exercise before you tackle different projects and exercises.

45-Python Exercises – W3Schools

The Python exercises on W3Schools follow the sections in their tutorials, and allow you to get some interactive practice with Python (though the exercises are in practice very simple).

46-Solve Python | HackerRank

HackerRank offers a bunch of exercises that require you to solve without any context. It’s the best way to practice different functions and outputs in Python in isolation (though you’ll still want to do different projects to be able to cement your Python skill.) You’ll earn points and badges as you complete more challenges. This certainly motivates me to learn more. A very useful sandbox for you to learn Python with.

47-Project Euler: About

Project Euler offers a variety of ever-harder programming challenges that aim to test whether you can solve mathematical problems with Python. Use it to practice your mathematical reasoning and your Pythonic abilities.

48-Writing your first Django app, part 1 | Django documentation | Django

This documentation helps you get on the ground with your first Django app, allowing you to use Python to get something up on the web. Once you’ve started with it, you can build anything you want.

49-Top 100 Python Interview Questions & Answers For 2019 | Edureka

Should you ever be in an interview where your Python skills are at question, this list of interview questions will help as a useful reminder and refresher and a good way for you to practice and cement different Python concepts.

Resources Lists

32 Free Tech Job Boards for Programming Job Seekers

If you’re here, it’s because you’re likely looking for a job in technology. This excerpt from our upcoming guide to how to get a programming job without a degree will help you do just that by giving you categories of tech job resources, tech job boards and tech job sites to consult. I’ve helped isolate some of the best job boards for you among the many tech job boards out there. Hopefully, this resource will help you land a new job! 

General

tech job boards

The following tech job boards often have a selection of general jobs, but they are also useful resources that can be used to find technical jobs — if you’re able to process the information correctly. Tech companies abound on these general resources. 

LinkedIn

Sometimes it’s good to start at the most obvious place: LinkedIn has a large number of technology jobs that you can find quite easily. You can sign up for a free trial of the premium version and quickly look through different jobs.

LinkedIn can also be a great way to research hiring managers and get a sense of what a company is like before you even apply there. You’ll be able to see what the organizational hierarchy looks like by scrolling from one profile to another — and you’ll be able to see what skills the company emphasizes, either by looking at the profiles of those who were hired or by using your trial Premium account and looking at job postings or company pages.

You’ll want to think about how to optimize your LinkedIn profile so you can get the most out of this career-oriented social network. Among tech job boards, it is easily one of the largest. 

Crunchboard

Crunchboard is the job board associated with TechCrunch, a publication that specializes in writing about emerging technologies and new companies. As you can imagine, their job board is filled with a lot of technology and web development positions due to their audience.

Another technique you can use related to this is to look for startups that have just raised a large fundraising round on either TechCrunch or CrunchBase and reach out to hiring managers or executives at those companies: immediately after raising a fundraising round, a company is in aggressive growth mode, and is most likely looking to hire many qualified people to fill different and interesting job roles.

Hacker News

Besides being a great repository of technical articles and a community that curates people who are interested in the cutting edge of technology, Hacker News also serves as a job portal of sorts for Y Combinator companies — technology companies that might be as young as a two-person startup and also those who have started full maturing (as an example, Dropbox, Airbnb, and Quora were all at one time or another incubated by Y Combinator). The jobs section of the site features different YC companies and their hiring needs. There are also monthly threads started by a bot called Ask HN: Who is hiring? –where discussion about urgent job opportunities is surfaced that may be hard to find elsewhere. Here’s an example of a“who’s hiring” thread in May 2017.

By commenting on different articles and reaching out to different members in the Hacker News community, many of whom are senior figures in the startup world, you might also find your way to different mentors — and somebody who can introduce you to the right hiring manager.

AngelList

AngelList is an online repository for different startups. The jobs on offer here tend to be with earlier stage companies working at the edge of technology. One great perk about this is that entrepreneurs may be more willing to accept people from non-traditional backgrounds to work with them — especially if you’re willing to accept and maybe even embrace the risk that comes with working in a startup.

GitHub

GitHub, the living repository of code collaboration, also offers a selection of curated jobs for developers around the world. You can even search by programming language here, ensuring the best match for your skills.

Stack Overflow Jobs

Stack Overflow, the popular Q&A site for programming questions, offers a selection of different programming jobs, many of them posted by hiring managers who are trying to find top talent within the Stack Overflow community.

Glassdoor

Glassdoor is an interesting job board since you’ll be able to see what employees think about the company and you can get some transparency on the salary range the company offers as well. All in all, Glassdoor is a great general place to find technology jobs — but its greatest value probably rests in the additional data on employee satisfaction and approximate salary ranges that can help guide your career decisions.

Mashable

Mashable, the popular content repository based out of New York City, has a job board as well with a lot of different technology job postings.

The Muse

The Muse is a unique jobs resource, with tons of personalized career coaching and resources related to career development. It can be well worth browsing the content on the site itself if you want to learn about salary negotiation, interviews and career progression from a somewhat general perspective. The jobs board section also boasts a selection of technical and developer jobs.  

Startupers

Another community oriented towards posting startup jobs, many of them programming-related.

Dice

One of the leading repositories of tech jobs in the world, Dice offers nearly 80,000 jobs in technology for you to consider.

Cybercoders

Run by a placement agency for engineers, Cybercoders offers an easy way to search across 10,000+ different technology jobs across different industries.

Front-End/Design

tech job boards

The following tech job boards focus on jobs that are oriented towards front-end work and user design. Check these out if you’re looking to work on how the user experience of digital products feels for different people.

Smashing Magazine

Smashing Magazine is one of the premier web development and design resources on the web. They offer a selection of jobs tailored to front-end web development. It’s a perfect selection among a number of tech job boards if you’re looking for more design and development-driven work. 

Codepen Jobs

Codepen is a great interactive sandbox for front-end code, where you can use HTML/CSS/JavaScript to generate awesome interactive graphics — or where you can copy those snippets of code for use on your own website. The site also offers a job board that tilts towards front-end web development and design jobs, as you might expect.

Web Development

tech job boards

The following job boards will help you hone your skills in web development if that’s the technical career path you want to choose.

Sensational Jobs

Sensational Jobs curates a selection of different positions for web professionals of all sorts and stripes.

WordPress Jobs

The official WordPress jobs board will help you curate a selection of jobs in web development specifically focused on building things with the WordPress platform — a popular, open-source content-management system that serves as the back-end framework for nearly one in six of all websites on the Internet.

WPHired

WPHired is another great selection among this list of tech job boards — that is if you’re looking for development jobs oriented around WordPress.

Data Science

tech job boards

Data science entails a mix of statistics, programming and communication skills that are quite specialized. Oftentimes, data science job postings will be found in these specialized communities that have grown to help support the data science community. These tech job boards are often the result of careful curation and community-building. 

Kaggle Data Science Jobs

Kaggle is an online community centered around machine learning competitions. Here, they’ve used their reach in the data science community to curate a selection of data science jobs for you.

Data Elixir Job Board

Data Elixir offers a newsletter filled with data science resources, and also curates this job board to help data science jobs seekers.

KDNuggets Jobs

KDNuggets is one of the leading data science content hubs, filled with useful tutorials and resources to help you understand different topics in data science. This static jobs page is updated quite frequently with different job postings in data science.

Mobile Development

tech job boards

The following tech job boards curate different opportunities for those looking to build mobile apps on a variety of platforms. The most common tend to be iOS or Android-oriented.

Android Jobs

Android Jobs curates a selection of jobs for developers interested in building Android applications. Come here if you want to make your mark in mobile development.

Core Intuition

Core Intuition features a selection of curated Mac Cocoa and iOS development jobs — if you want to develop apps for Apple products, there are few job boards as well-placed as Core Intuition to help you advance along that career path.

Language-Specific

tech job boards

The following tech job boards are specific to a type of programming language. It can be a handy place to look if you plan to specialize in one language and grow your career there.

AngularJobs

AngularJobs is a job board curated around the Google-backed front-end JavaScript framework. Come here if you want to work with Angular.js and develop your JavaScript skills.

We Work Meteor

We Work Meteor is a job board focused on meteor.js, a full-stack JavaScript framework that can handle every part of web development. If you’re interested in pursuing a career using Meteor as your tool of choice, or if you’re interested in developing your JavaScript skills — coming to this job board wouldn’t be a bad choice.

Ruby Now

Ruby Now is a job board focused on curating Ruby on Rails specialists. Given the extensive use of Ruby on Rails for web development, you’ll mostly be working with web development positions if you look through this job board — though there are some more senior positions in back-end development.

Python Jobs (official Python website)

Python.org (the official centerpiece of the Python programming community) hosts a small repository of curated and interesting jobs that involve the use of Python. It’s one of the best among these tech job boards for those looking to work with Python. 

Python Jobs

Python Jobs (unaffiliated with the official Python programming community) is a great free resource for looking up Python jobs and web development jobs associated with the Django web development framework.

R-Users

R-Users is the place to go if you’re proficient in R or if you’re a statistician looking to get some work developing their programming skills in R.

Remote

One of the luxuries of working in a technology-oriented career is the ability to be able to work remotely from anywhere in the world. The following job boards curate remote opportunities in technology.

We Work Remotely

We Work Remotely curates a selection of jobs that are online and remote, with a section dedicated to just programming jobs.

Remote OK

RemoteOk is another job board that curates different jobs where remote work is available. They have a large selection of technology jobs and they have a neat categorization of the highest paying remote jobs and the technologies involved with it.

AngelList Remote Jobs

AngelList curates a selection of startup jobs where it’s acceptable to work remote. Again, as with the rest of AngelList, most of the jobs revolve around earlier stage startups — so be aware of that as you browse through this selection.

Upwork Jobs

Upwork is a curated marketplace where freelancers can meet potential employers. The entire process of payment, job search, and work management can be completely managed on Upwork. As a result, it can be a great place to find remote work in different technical fields.


Want more content like this? Be one of the first to get our Guide to Getting a Programming Job without a Degree!