Nikolay Blokhin Facebook Nikolay Blokhin Instagram Nikolay Blokhin Linkedin Nikolay Blokhin Twitter

Hi, I'm Nikolay Blokhin I build the cool things with Python and Swift

How to become a Python developer

Here I tried to collect all the necessary books, courses and lectures that need to be studied to become a junior Python developer.

The progress depends on your previous experience and perseverance. But I guess if you will spend a few hours a day for learning, all materials can be mastered in a few months even if you are new in the programming.

Important: you should fully study these materials and not just briefly read/watch.

Programming

1. CS50 – The course on computer science from Harvard

It gives general information about programming, algorithms, data structures, etc. (13 lectures, ~22 hours)

2. Data structures

The data structure is a data organization, or in other words, it's a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.

It's one of the most important parts of any program. No one program can work without data. As told Niklaus Wirth: Programs = Data Structures + Algorithms.

3. The book "Algorithms and Data Structures" by Niklaus Wirth

It's a classic book. Every developer has to read it and understand conceptions from this book.

4. MIT course "Introduction to Computer Science and Programming"

This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python programming language.

5. MIT course "Introduction to Algorithms"

This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.

Python

1. MIT course "Introduction to Computer Science and Programming in Python"

"Introduction to Computer Science and Programming in Python" is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language.

2. The Python Tutorial from python.org

It's the best place for the beginning of an acquaintance with Python. It covers all important aspects of the language, information that present there is concise but gives the whole picture.

But take a note: this tutorial is not about programming, it's about Python language.

3. The book "Learning Python" by Mark Lutz

This is a very large and thorough book about Python. One of the best.

Most likely you will not understand much at the first reading, and this is normal. With each reading, you will understand Python better and better. At the initial stage, this book should be your handbook.

4. Python Cookbook

Inside, you’ll find complete recipes for more than a dozen topics, covering the core Python language as well as tasks common to a wide variety of application domains. Each recipe contains code samples you can use in your projects right away, along with a discussion about how and why the solution works.

5. Style Guide for Python Code (PEP 8)

Other

1. The book "A short introduction to operating systems" by Mark Burgess

Every developer must know what is computer and how it works. This book explains how the computer works from the point of view of the programmer.

2. UNIX Tutorial for Beginners

A beginners guide to the Unix and Linux operating system. Eight simple tutorials which cover the basics of UNIX / Linux commands.

3. The book Pro git

Version Control, Git, GitHub – about all this stuff you can read in this book.

4. A free HTML and CSS tutorial

5. Introduction to HTTP

6. Basic JavaScript for the impatient programmer

7. JavaScript For Cats