GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Rustam-Z/python-programming: 👨🏽‍💻🐍 Software Engineering with Python • Developer Roadmap from Junior to Middle

BranchesTags
Open more actions menu

Latest commit

 

History

79 Commits
79 Commits

Folders and files

NameName
Last commit message
Last commit date
Libraries/argparse
Libraries/argparse
 
 
Projects
Projects
 
 
design_patterns
design_patterns
 
 
solid
solid
 
 
.gitignore
.gitignore
 
 
PROJECT-IDEAS.md
PROJECT-IDEAS.md
 
 
README.md
README.md
 
 

Repository files navigation

Software Engineering with Python

Learn and code every day! Take notes.
Learn to ask GOOD questions.
Learn to prioritize tasks. Focus on 1 thing!
Build something, anything. Build projects that bring some benefit to you or the people around you. 
Take small steps, but every day, consistency is very important.

Contents:

  • Important Skills
  • Computer Science Basics
  • Start Learning Python
  • Discover some Python libraries
  • Databases: SQL, NoSQL
  • Web Development
  • **Advanced Python

Important Skills

  1. Algorithms and data structures
  2. Programming mindset - analytical, problem-solving mindset
  3. Know your programming language

Computer Science Basics

  • Harvard CS50 - Scratch, C, Arrays, Algorithms, Memory, Data structures, Python, SQL, HTML, CSS, JavaScript, Flask
  • Crash Course Computer Science

Start Learning Python

Learn the basics, watch a couple of tutorials, read articles, and then build projects using Python. Learn by building. Start from building console applications, then learn how to build desktop apps, then web apps.

  • 11 Beginner Tips for Learning Python Programming
  • freeCodeCamp.org - Python beginning
  • freeCodeCamp.org - Python intermediate
  • 30-Days-Of-Python
  • Программирование на Python
  • Corey Schafer, focus MORE on this!
  • Readings:
    • Easy practical Python
    • w3schools.com
    • programiz.com
    • *pythontutorial.net - Python Basics and Python Advanced sections
    • **python-course.eu - only Python Tutorial section
    • **realpython.com
  • OOP in Python:
    • by Caleb Curry
    • by Corey Schafer
    • python-course.eu
    • pythontutorial.net
  • Books:
    • Python Basics: A Practical Introduction to Python 3
    • *Python Tricks: A Buffet of Awesome Python Features

Problem solving & Practical tasks

  • https://github.com/Rustam-Z/cpp-programming
  • https://github.com/darkprinx/break-the-ice-with-python

Discover some Python libraries

  • File handling: txt, json, csv, yaml
  • Working with paths with pathlib and OS with os
  • Sending HTTP requests and receiving HTTP responses with requests
  • Building CLI with argparse
  • Working with data collections, itertools
  • Learn web scraping using beautiful-soup and Selenium

Databases: SQL, NoSQL

  • SQL
    • sqlbolt.com
    • w3schools.com
    • sqltutorial.org
  • sqlite, sqlalchemy
    • Introduction to working with databases in Python
  • Relationships: One-to-One, One-to-Many, Many-to-Many
  • Data normalization

Web Development

  • Understand how the Internet works, OSI & TCP/IP models, DNS, HTTP, REST API.
  • HTML, CSS, JavaScript
    • Web design in 4 minutes
    • CS50: Web Programming Course
  • Learn Django or Flask
    • Mozilla Developer Network, Django
    • Django girls
    • "Flask Web Development" Miguel Grinberg
    • "Building REST APIs with Flask" Kunal Relan
  • See how others build projects using Django, then build your own app.
    • Corey Schafer
    • Dennis Ivy
    • Building REST API
  • Books:
    • "Django for beginners" by Vincent W.
    • "Django for APIs" by Vincent W.
    • "Django 3 by Examples"

Advanced Python

Check https://github.com/Rustam-Z/senior-python-developer.

On a high level:

  • Clean code:
    • PEP 8 - Style Guide for Python Code
    • clean-code-python
    • testdriven.io
    • "Clean code in Python" book
    • LinkedIn Learning: Clean coding practices
    • typing
    • dataclasses
  • Clean design:
    • Design principles: KISS, DRY, SOLID
    • Design patterns
  • Concurrency, parallelism, asynchronicity programming:
    • Concurrency and parallelism
    • realpython.com
    • LinkedIn Learning: Part 1
    • LinkedIn Learning: Part 2
  • Testing:
    • unittest, pytest
    • "Python testing with PyTest" book
    • “Python testing with Selenium”
    • “TDD in Python”
    • “Python Unit Test Automation“
  • Advanced topics:
    • python-course.eu
    • book.pythontips.com
    • Python topics for Senior developers
    • Python best practices - realpython.com
    • Medium blog
    • thedigitalcatonline.com
    • *Python 3 Patterns, Recipes and Idioms
  • Books:
    • "Fluent Python"
    • "Python Cookbook"
    • "Learning Python"
    • "Effective Python"
    • "Advanced Guide to Python 3"
    • "Mastering Object-Oriented Python"
    • "Expert Python Programming" 2021
    • "High-performance Python"
    • "Practices of the Python Pro"
    • "The Python workshop"
    • "Python Workout"
    • "Clean Python"
    • “Python Automation Cookbook” 2nd edition, Jaime Buelta

About

👨🏽‍💻🐍 Software Engineering with Python • Developer Roadmap from Junior to Middle

Topics

computer-sciencelearning-pythonproject-ideaspythonroadmap

Resources

Readme
Activity

Stars

91 stars

Watchers

1 watching

Forks

20 forks
Report repository

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.