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 - pro1code1hack/Your-Journey-To-Fluent-Python: Your Journey To Fluent Python

BranchesTags
Open more actions menu

Latest commit

 

History

19 Commits
19 Commits

Folders and files

NameName
Last commit message
Last commit date
assets
assets
 
 
images
images
 
 
01.Introduction-to-programming.md
01.Introduction-to-programming.md
 
 
02.Data-types-convertion-basic-operations.md
02.Data-types-convertion-basic-operations.md
 
 
03.Conditionals-and-strings.md
03.Conditionals-and-strings.md
 
 
04.Strings-and-loops-introduction.md
04.Strings-and-loops-introduction.md
 
 
05.Loops.md
05.Loops.md
 
 
06.Lists.md
06.Lists.md
 
 
07.Tuple.md
07.Tuple.md
 
 
08.Set.md
08.Set.md
 
 
09.Dict.md
09.Dict.md
 
 
10.Functions.md
10.Functions.md
 
 
11.Exceptions.md
11.Exceptions.md
 
 
12.Imports.md
12.Imports.md
 
 
13.Files.md
13.Files.md
 
 
14.Functional-programming.md
14.Functional-programming.md
 
 
15.Introduction-to-OOP.md
15.Introduction-to-OOP.md
 
 
16.Intermediate-OOP.md
16.Intermediate-OOP.md
 
 
17.SOLID.md
17.SOLID.md
 
 
18.Logging.md
18.Logging.md
 
 
19.Testing.md
19.Testing.md
 
 
20.Iterators-and-generators.md
20.Iterators-and-generators.md
 
 
21.Refactoring-and-code-review.md
21.Refactoring-and-code-review.md
 
 
22.Documenting-python-code.md
22.Documenting-python-code.md
 
 
23.Regular-expressions.md
23.Regular-expressions.md
 
 
24.Algorithms.md
24.Algorithms.md
 
 
25.Advanced-OOP.md
25.Advanced-OOP.md
 
 
26.Context-Managers.md
26.Context-Managers.md
 
 
27.Introduction-to-Concurrent-and-Parallel-Programming.md
27.Introduction-to-Concurrent-and-Parallel-Programming.md
 
 
28.Threading.md
28.Threading.md
 
 
29.Multiprocessing.md
29.Multiprocessing.md
 
 
30.Asyncio.md
30.Asyncio.md
 
 
BookPDF.pdf
BookPDF.pdf
 
 
README.md
README.md
 
 
prj-3.png
prj-3.png
 
 

Repository files navigation

🐍 Your Journey to Fluent Python

πŸ‘‹ Welcome to the thrilling journey to Python fluency!

alt text

Note

Initially this repository was supposed to be a Senior Developer Roadmap and had to include not only Python but DB, AWS, Linux and BE Frameworks. That was not the best approach to do and cover everything at once, so I decided to focus only on Python and during the process this book has been created! I worked on it alone, almost 1.5 years, and hope that you will like it. In the future I have plans to colaborate with a major UK publisher to create the second version of this book. If you could provide any feedback, this would be extremely valuable. Attaching PDF version for free to improve your learning experience!

πŸ‘€ Introduction

My name is Yehor, and I'm the CTO and co-founder of Swetrix, a privacy-focused analytics platform. Additionally, I hold a Software Engineer position at a company based in Oxford, United Kingdom πŸ‡¬πŸ‡§.

After years of studying programming, I've reached a solid level of proficiency, mainly through reading books and exploring different courses.

I've found that many books in the programming world lack practical relevance and don’t give the knowledge to actually build real software. They're informative but don’t have interactivity and engagement with a learner at all.

That's why I am excited to introduce a revolutionary approach to education and interaction with books.

This isn't just another book to read. It's a comprehensive guide that will walk you through every step of your learning journey, providing interactive experiences and personalised support along the way.

In order to interact with me, you have 2 options:

  1. Open a PR and submit your homework/questions, and I will review it on Github directly.
  2. Join the Discord server where you can submit your H/W for my personal review through tickets instead, ask general questions about the topic you are struggling with, and integrate into our Python society to excel your knowledge and skills together.

In case you have any questions or would like to contact me directly, just do it!

Email: [email protected]

πŸ’¬ Support

Options Link
Buy a book on Amazon Amazon
Donate for businesses in Britain Coffee
Buy a subscription on Swetrix (best option) Swetrix
Put a star on this repo to show your support! ⭐
Share this book to your friends and colleagues! πŸ“’

πŸ“• Content

1.Introduction To Programming

  • 1. What is programming?
  • 2. Overview of Python
  • 3. Python installation
  • 4. IDE Installation (VSCode)
  • 5. print()
  • 6. input()
  • 7. Quiz: Introduction to Programming
  • 8. Homework

2.Data Types Convertion And Basic Operations

  • 1. (int and float)
  • 2. Math operations
  • 3. (str and bool)
  • 4. Converting data types
  • 5. Quiz
  • 6. Homework

3.Conditionals And Strings

  • 1. Relational Operators
  • 2. Logical Operators (if/elif/else)
  • 3. Nested Logical Operators
  • 4. Strings
  • 5. Quiz
  • 6. Homework

4.Strings And Loops

  • 1. Strings in the PC memory (encodings, ascii/unicode), ord(), chr()
  • 3. Slicing
  • 4. Methods of Strings
  • 5. Introduction to loops
  • 6. Quiz
  • 7. Homework

5.Loops

  • 1. Introduction to loops
  • 2. break, continue, and else in Loops
  • 3. Nested Loops
  • 4. Quiz
  • 5. Homework

6.Lists

  • 1 Mutable and Immutable data types
  • 2. Introduction to list
  • 3. Functions (len(), sum(), min(), max(), sorted())
  • 4. Methods of Lists
  • 5. General methods of Iterations
  • 6. Copying lists
  • 8. join() and split()
  • 9. Quiz
  • 10. Homework
  • Example

7.Tuple

  • 1. Overview of Tuples
  • 2. Features Overview
  • 3. Iterations
  • 4. Quiz
  • 5. Homework

8.Set

  • 1. Introduction to Sets
  • 2. Methods of sets
  • 3. Set Comprehensions
  • 4. frozenset() Overview
  • 5. Quiz
  • 6. Homework
  • Example

9.Dict

  • 1. Introduction to dict
  • 2. Functions and Methods of dict
  • 3. Iterations
  • 7. Quiz
  • 8. Homework

10.Functions

  • 1. Introduction to Functions
  • 2. Parameters and Arguments
  • 3. Positional vs Key Arguments
  • 4. Scopes
  • 5. Return
  • 6. Optional Parameters
  • 7. Args and Kwargs
  • 8. Argument Ordering
  • 9. Quiz
  • 10. Homework

11.Exceptions

  • 1 Introduction
  • 2 The try & except Block
  • 3 The else Block
  • 4 The finally Block
  • 5 Raising Exceptions
  • 6 Exception Chaining
  • 7. Quiz
  • 8. Homework

12.Imports

  • 1. Introduction
  • 2. Creating a Module
  • 3. import, from, and as
  • 4. if __name__ == "__main__"
  • 5. Packages
  • 6. venv
  • 7. requests
  • 8. Pillow
  • 9. Choose your direction
  • 10. Homework

13.Files

  • 1 What is a File?
  • 2. Working with Files
  • 3. Exception Handling
  • 4 Full/Relative Paths
  • 5. Context Manager with
  • 6 Working with Files of Different Formats
  • 7. Quiz
  • 8. Homework

Intermediate

14.Functional Programming

  • 1. Revision of Functions
  • 2. Programming Principles(KIS, DRY, YAGNI)
  • 3. Function pointers
  • 4. Higher Order Functions
  • 5. Closures
  • 6. Decorators
  • 7. Lambda Functions
  • 8. Function Composition
  • 9. Currying
  • 10. Recursion
  • 11. Function Memoization
  • 12. Quiz
  • 13. Homework

15.Introduction To OOP

  • 1. Intro to OOP
  • 2. Class VS Instance Attributes and Methods
  • 3. Class vs Instance methods + @staticmethod
  • 4. Key Paradigms of OOP
  • 5. Examples of good OOP designs
  • 6. Quiz
  • 7. Homework

16.Intermediate OOP

  • 1. Composition and Aggregation
  • 2. Advanced Inheritance
  • 3. Dunder (Magic) Methods in Python
  • 4. Enums
  • 5. Quiz
  • 6. Homework

17.SOLID

  • 0. Definition
  • 1. Single Responsibility Principle (SRP)
  • 2. Open/Closed Principle (OCP)
  • 3. Liskov Substitution Principle (LSP)
  • 4. Interface Segregation Principle (ISP)
  • 5. Dependency Inversion Principle (DIP)
  • 6. Summarise
  • 7. Let's Refactor!
  • 8. Quiz
  • 9. Homework

18.Logging

  • 1. What is logging?
  • 2. Python's Built-in Logging Module
  • 3. Configuring Logging: Handlers, Formatters, and Config Files
  • 4. Logging Best Practices
  • 5. Homework

19.Testing

  • 1. Why do we need testing?
  • 2. Types of Testing
  • 3. Introduction to unittest
  • 4. Introduction to pytest
  • 5. Mocking and Patching
  • 6. Advanced Techniques
  • 7. Coverage Analysis
  • 8. Applying Testing
  • 9. Homework

20.Iterators And Generators

  • 1. Iterators
  • 2. Building Your Own Iterators
  • 3. Performance overview
  • 4. Generators
  • 5. Generators VS Lists
  • 6. Best practices
  • 7. Quiz
  • 8. Homework

21.Refactoring And Code Review

  • 1. The Importance of Refactoring and Code Review
  • 2. Principles of Good Refactoring
  • 3. Code reviews
  • 4. Application Development Life Cycle
  • 5. Homework

22.Documenting Python Code

  • 1. Introduction
  • 2. Code Comments and Docstrings
  • 3. Annotations
  • 4. External Documentation
  • Introduction
  • Installation
  • Usage
  • Contributing
  • License
  • Credits
  • 5. Homework

23.Regular Expressions

  • 1. Regular Expressions
  • 2. Basic Patterns
  • 3. Character Classes
  • 4. Quantifiers
  • 5. Anchors and Boundaries
  • 6. Grouping and Capturing
  • 7. Practice
  • 8. Homework

24.Algorithms

  • 1. What are Algorithms?
  • 2. Algorithmic Complexity (Big O Notation)
  • 3. Sorting Algorithms
  • 4. Searching Algorithms
  • 5. Dynamic Algorithms

Advanced

25.Advanced OOP

  • 1. Mixins
  • 2. Metaclasses
  • 3. Type checking
  • 4. Duck Typing
  • 5. Quiz
  • 6. Homework

26.Context Managers

  • 1. Introduction
  • 2. contextlib
  • 3. Nested context managers
  • 3.2 Best Practices
  • 4. Quiz
  • 5. Homework

27.Concurrent And Parallel Programming

  • 1. Concurrent Programming
  • 2. Parallel Programming
  • 3 Key Differences
  • 4. Homework

28.Threading

  • 1. Introduction to Threads
  • 2. Threading
  • 3. Global Interpreter Lock (GIL)
  • 4. Thread Communication
  • 5. Daemon Threads
  • 6. Thread Pooling
  • 7. More Practice
  • 8. Quiz
  • 9. Homework

29.Multiprocessing

  • Topics
  • 1. Multiprocessing vs Multithreading
  • 2. multiprocessing
  • 3. Inter-process Communication (IPC)
  • 4. Synchronisation
  • 5. Process Pooling
  • 6. Production Approaches
  • 7. Practice
  • 9. Quiz
  • 10. Homework

30.Asyncio

  • 1. Introduction
  • 2. Coroutines
  • 3. Event Loop
  • 4. Practice
  • 5. Scheduling Tasks
  • 6. Project and Debugging
  • 7. Quiz
  • 8. Homework

About

Your Journey To Fluent Python

www.amazon.co.uk/dp/B0D7HRPCFH

Topics

advanced-programmingasynciobeginner-programmingcodingdata-scienceeducationexercisesfunctionslearninglearning-pythonoopoop-principlesprojectspythonpython-3python3roadmapseniorsoftware-engineeringtutorials

Resources

Readme
Activity

Stars

1.2k stars

Watchers

23 watching

Forks

89 forks
Report repository

Used by

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.