📚Python Books
33.7K subscribers
1.13K photos
3 videos
93 files
1.12K links
📚Python библиотека

admin - @haarrp

@ai_machinelearning_big_data - машинное обучение

@programming_books_it - бесплатные it книги

@pythonl - 🐍

@ArtificialIntelligencedl - AI

@datascienceiot - ml

РКН: clck.ru/3FmsTi
Download Telegram
Forwarded from Data Science
Linear Algebra for Computer Science

📓 Read

@datascienceiot
Математика без попсы: три бесплатных книги для тех, кто хочет настоящий фундамент

Три бесплатные книги Аллена Хатчера по математике

Если хочется нормального фундамента по топологии, K-theory и теории чисел, у Аллена Хатчера есть отличный бесплатный набор.

1. Algebraic Topology
Классический учебник по алгебраической топологии. Книга вышла в Cambridge University Press, но онлайн-версия доступна бесплатно по соглашению с издателем. На сайте есть полный PDF, главы отдельно, исправления и дополнительные упражнения.
https://pi.math.cornell.edu/~hatcher/AT/AT.pdf

Дополнительно: Spectral Sequences - отдельная расширенная глава к этой книге.
https://pi.math.cornell.edu/~hatcher/AT/ATch5.pdf

2. Vector Bundles & K-Theory
Короткая книга про векторные расслоения, топологическую K-теорию и характеристические классы. Сейчас онлайн выложено около 120 страниц: основы vector bundles, часть K-theory, Bott periodicity, characteristic classes и stable J-homomorphism.
https://pi.math.cornell.edu/~hatcher/VBKT/VB.pdf

3. Topology of Numbers
Необычное введение в теорию чисел через геометрию и картинки. Много внимания уделено квадратичным формам, диаграмме Фарея, цепным дробям, уравнению Пелля, quadratic reciprocity и topograph Конвея. PDF примерно на 350 страниц доступен бесплатно.
https://pi.math.cornell.edu/~hatcher/TN/TNbook.pdf
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку

В IT прокачивается тот, кто каждый день видит сильные идеи, новые инструменты, реальные задачи, вакансии и разборы.

Окружение решает больше, чем кажется.

Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.

AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: t.me/DevopsDocker
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_1001_notes
Java: t.me/java_library
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: https://t.me/gamedev
Haskell: t.me/haskell_tg

Собеседования и карьера:

DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview

Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy

Полезное сверху:

ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: @courses
ИТ-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy

Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg

Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.

Пока кто-то листает шум, ты будешь видеть инструменты, задачи и идеи, которые помогают расти в профессии.
700+ страниц алгебры, после которых слово “абстрактная” перестаёт пугать

Есть бесплатная PDF-версия Basic Algebra Энтони Кнаппа — большой учебник для сильных студентов старших курсов и первого года магистратуры. Digital Second Edition доступна для личного образовательного использования.

Внутри почти весь фундамент современной алгебры:

* целые числа, многочлены, матрицы
* векторные и евклидовы пространства
* группы и действия групп
* линейные операторы и жорданова форма
* тензоры и внешняя алгебра
* кольца, модули, поля
* теория Галуа
* категории и функторы

Особенно ценно, что это не «конспект на 100 страниц», а полноценный маршрут: от конкретных вычислительных примеров к общей теории. Сам Кнапп пишет, что читателям нравились именно широта книги, раннее введение линейной алгебры и большое количество задач.

Для новичка без опыта доказательств будет тяжеловато. Но если уже умеешь читать строгую математику и хочешь собрать мощную базу по алгебре — это прям серьёзная находка.

PDF: https://math.stonybrook.edu/~aknapp/download/b2-alg-coverandinside.pdf
Бесплатный учебник по геометрии на целый университетский курс 📐

Euclidean Plane and its Relatives Антона Петрунина, профессора Penn State, можно легально скачать бесплатно. Книга рассчитана примерно на один семестр и строит геометрию строго через определения, аксиомы и доказательства.

Внутри:

евклидова геометрия: треугольники, подобие, параллельность;
инверсивная геометрия;
гиперболическая и нейтральная геометрия;
аффинная, проективная и сферическая геометрии;
комплексные координаты, построения и площади.

Автор специально сделал книгу минималистичной и достаточно строгой, предполагая, что читатель уже знаком с матанализом, вещественными числами и непрерывностью. Учебник распространяется по лицензии CC BY-SA.

Скачать книгу бесплатно: https://arxiv.org/pdf/1302.1630v19
One Day Offer: заходи в команду, которая двигает финансы на терабайтах данных! 🔥

На связи блок «Финансы» в Сбере! Мы строим системы, которые автоматизируют казначейство, риск‑менеджмент, отчётность — и добавляем AI для точных прогнозов.

На One Day Offer мы хотим найти коллег сразу в 3 продуктовые команды. Базовый стек и уровень задач одинаковы — выбирай направление по душе:

✔️ BigData: Spark (batch+streaming), сложные SQL‑оптимизации, DWH/Data Lake.
✔️ Микросервисы: Python (FastAPI/Django), API, интеграции с системами.

От тебя ждём: Python от 5 лет, экспертный SQL, PySpark, SOLID/asyncio, HDFS/Kafka.

👉 Регистрируйся по ссылке. Встречаемся 8 августа!
interlock: Circuit Breaker That Trips on Failure Rate and Latency

https://github.com/bagowix/interlock
One Day Offer для Python-разработчиков!💚

15 августа открываем двери в команду Agent Execution Framework ⚡️

Коллеги создают платформу для GenAI‑агентов в банке — делают так, чтобы ИИ реально работал в серьёзных финпроцессах: с безопасностью, нагрузкой и пользой.

Чем предстоит заниматься:

✔️ развивать backend на Python
✔️ подключать LLM, инструменты, базы знаний и RAG
✔️ строить пайплайны оценки качества агентов
✔️ участвовать в архитектуре и ревью кода

Встречаемся 15 августа онлайн.

Регистрируйся по ссылке
Бесплатный учебник по математике — 850 страниц.

«The Rising Sea: Foundations of Algebraic Geometry» Рави Вакила.


Книга предлагает подробное введение в алгебраическую геометрию и множество упражнений, позволяющих учиться на практике.

Требуется минимум предварительных знаний: необходимые инструменты вводятся по ходу материала — от теории категорий и пучков до коммутативной и гомологической алгебры.

Подход построен на примерах и помогает развить математическую интуицию.

Самодостаточный учебник для студентов магистратуры и аспирантуры, а также важный справочник для исследователей.


Link: https://math.stanford.edu/~vakil/216blog/
🔴 Завтра тестовое собеседование на Middle Python с разработчиком из Авито

Уже завтра вечером в 19:00 по мск
приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot

Реклама.
О рекламодателе.
🐍 Как правильно запускать внешние команды из Python

Для большинства задач не нужны os.system() или низкоуровневый Popen. Достаточно subprocess.run() - он запускает программу, передаёт аргументы, возвращает код завершения и позволяет получить вывод.


import subprocess

result = subprocess.run(
["git", "status", "--short"],
capture_output=True,
text=True,
check=True,
timeout=10,
)

print(result.stdout)


Что здесь происходит:

- capture_output=True сохраняет stdout и stderr
- text=True возвращает строки вместо bytes
- check=True выбрасывает CalledProcessError, если команда завершилась с ошибкой
- timeout=10 не позволяет процессу зависнуть навсегда

Ошибки лучше обрабатывать явно:


import subprocess

try:
result = subprocess.run(
["git", "status", "--short"],
capture_output=True,
text=True,
check=True,
timeout=10,
)
except subprocess.TimeoutExpired:
print("Команда выполнялась слишком долго")
except subprocess.CalledProcessError as error:
print(error.stderr)
else:
print(result.stdout)


Передавайте команду списком аргументов. shell=True нужен редко и может создать уязвимость к внедрению команд, особенно если строка содержит пользовательские данные.

subprocess.run() - простой и надёжный мост между Python и системными утилитами, Git, компиляторами, CLI-инструментами и другими программами.

Подробнее:
https://pythonmorsels.com/running-subprocesses-in-python/
Лето, ИТ-Пикник и музыка известных артистов уже через несколько дней!

8 августа в Коломенском пройдет ИТ-Пикник.

В программе — выступления проекта LAB Антона Беляева, IOWA, Cream Soda, Pompeya, мартина и Совы.

А днем — научпоп-лекции, дискуссии об ИИ и больших языковых моделях, мастер-классы и интерактивы. Полезные знакомства и развлечения тоже будут.

Зарегистрироваться и узнать подробности можно на сайте мероприятия.

В билет входит +1 — можно позвать близких и друзей.

До встречи в месте притяжения ИТ.
🐍 Free-threaded Python убрал GIL, но NumPy всё равно упирался во внутренние блокировки

Казалось бы, Python 3.13+ без GIL должен позволить нескольким потокам одновременно выполнять численные операции.

Но на практике параллельные ufunc начинали конкурировать за внутренние структуры NumPy, счётчики ссылок и выделение памяти.

В NumPy 2.5 разработчики устранили несколько ключевых узких мест:

- таблицу диспетчеризации ufunc заменили на lock-free concurrent hash map;
- часть общих служебных объектов сделали «бессмертными», снизив конкуренцию при подсчёте ссылок;
- выделение памяти перевели на PyMem_RawMalloc и PyMem_RawFree.

Теперь независимые операции можно масштабировать обычными потоками:


from concurrent.futures import ThreadPoolExecutor

import numpy as np

arrays = [
np.random.rand(5_000_000)
for _ in range(8)
]

with ThreadPoolExecutor(max_workers=8) as pool:
results = list(pool.map(np.sin, arrays))


Главное преимущество перед multiprocessing - массивы не нужно сериализовать и копировать между процессами.

Потоки работают в одном адресном пространстве, поэтому могут эффективнее использовать многоядерный CPU и общую память.

Но есть важная оговорка:

free-threaded не означает автоматически thread-safe.

Одновременное изменение одного ndarray из нескольких потоков всё ещё может привести к гонкам, повреждённым данным и падению интерпретатора.

Безопаснее использовать:

- отдельный массив для каждого worker;
- общий массив только для чтения;
- явную синхронизацию при записи.

Удалить GIL оказалось недостаточно. Чтобы Python действительно масштабировался по ядрам, пришлось перепроектировать и внутренности NumPy.

Подробнее:
https://labs.quansight.org/blog/scaling-numpy-on-free-threaded-python