Книги для программистов
55.2K subscribers
1.35K photos
283 videos
24 files
1.23K links
Книги по программированию, библиотека электронных книг для разработчиков.


По всем вопросам @evgenycarter

РКН clck.ru/3Ko9cz
Download Telegram
nocc — распределённый компилятор для гигантских проектов на С++

У нас есть задача постоянно компилировать тонны плюсового кода. Наш проект — почти 200 000 cpp- и h-файлов, множество Git-веток, сотни разработчиков, десятки билд-агентов: его нельзя единожды скомпилировать, приходится перекомпилировать постоянно, параллельно, разные версии.

В итоге мы написали замену distcc — компилятор nocc. Он не имеет никакого отношения к PHP и даже к KPHP, а просто предназначен для компиляции .cpp → .o в промышленных масштабах.

Это техническая статья про параллелизацию, демоны и специфику С++. Ссылки на GitHub и видео приложу в конце статьи.

https://habr.com/ru/company/vk/blog/694536/

#cpp #programming

👉 @cpp_lib
👍15🔥4
Coding with Python: A Simple And Straightforward Guide For Beginners To Learn Fast Programming With Python
Автор: Eugene Gates (2020)

Вы хотите выучить один из самых популярных языков программирования в мире, но расстроены при мысли о необходимости учиться с нуля? Данная книга позволит вам быстро и без проблем выучить современный и простой синтаксис языка Python, чтобы после вы могли заняться изучением какой-либо прикладной технологии.

Скачать книгу
👍10🔥1
Efficient MySQL Performance: Best Practices and Techniques
Автор: Daniel Nichter (2021)

Трудно объяснять производительность MySQL, не обращая внимания на ее сложность. Эта практическая книга заполняет пробелы других руководств, обучая разработчиков знаниям MySQL среднего уровня, выходящим за рамки фундаментальных знаний, при этом избегая глубокого внутреннего уровня, необходимого администраторам баз данных.

Во время чтения книги вы:
✔️Поймёте, почему время ответа на запрос - это путеводная звезда производительности MySQL;
✔️Узнаете, почему индексирование, а не оборудование или конфигурация MySQL, является ключом к производительности;
✔️Подробно изучите метрики запросов, включая агрегирование, отчетность и анализ;
✔️Изучите способы уменьшения времени ответа на запрос за счет оптимизации запросов;
✔️Разберётесь, как мониторить MySQL, и узнаете, как работают метрики.

Скачать книгу
👍13
Базы данных

1. Введение в базы данных. Базы данных.
2. Реляционная модель данных, ER диаграмма. Базы данных
3. Введение в SQL. Базы данных
4. SQL. Практическое занятие. Базы данных
5. SQL (Structure Query Language). Оператор Distinct. Базы данных
7. Транзакции. Базы данных
8. План выполнения запроса. Ограничения целостности. Базы данных
9. Таблицы. Триггеры. Процедуры. Базы данных
10. Масштабирование БД. Базы данных
11. Оптимизация запросов. Базы данных
12. Введение в NoSQL. Базы данных
13. Что такое ORM? Почему стоит использовать ORM? Базы данных

Полный playlist на youtube

#db

👉 @database_info
👍171
Forwarded from ITmozg
Алгоритмы и структуры данных

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

https://bookflow.ru/algoritmy-i-struktury-dannyh/

@itmozg
🔥13👍7
Forwarded from ITmozg
Введение в цепи Маркова

В первом разделе мы дадим основные определения, необходимые для понимания того, что такое цепи Маркова.

Во втором разделе мы обсудим особый случай марковских цепей в конечном пространстве состояний.

Затем, в третьем разделе мы обсудим некоторые элементарные свойства цепей Маркова и проиллюстрируем эти свойства множеством небольших примеров.

Наконец, в четвертом разделе мы установим связь с алгоритмом PageRank и рассмотрим на условном примере, как цепи Маркова могут быть использованы для ранжирования узлов графа.

https://bookflow.ru/vvedenie-v-tsepi-markova/

@itmozg
👍12🔥1
Forwarded from Python академия
Делаем ошибки более читаемыми

В Python есть удобный модуль pretty_errors, который делает стандартный вывод исключений и их traceback более удобным для чтения и красивым в целом.

Установить его можно через пакетный менеджер pip. А для того, чтобы он заработал, достаточно импортировать его в ваш код.

Как результат, вывод ошибок в вашей программе будет выглядеть более читаемым. Более того, разные части вывода будут помечаться разным цветом вместо монотонного серого цвета.

Также модуль можно модифицировать, указав параметры в конфиге. Подробнее можете почитать в документации модуля.

Подписывайтесь на канал 👉@pythonofff
👍12
Forwarded from BigData
🕸 Bag of Tricks for Training Deeper Graph Neural Networks: A Comprehensive Benchmark Study

Github: https://github.com/VITA-Group/Deep_GCN_Benchmarking

Paper: https://arxiv.org/abs/2108.10521v1
👉 @bigdata_1
👍5
Forwarded from ITmozg
Пишем сайт поиска работы на Python Django + код проекта

На этом портале по поиску работы могут зарегистрироваться как соискатели, так и компании. И тем, и другим предоставляются различные роли. Соискатель видит список доступных вакансий и может откликнуться на любую, которая соответствует его/ее квалификации. Аналогичным образом, компании могут добавлять новые вакансии и отбирать кандидатов, подавших заявку на эту работу, просматривая их резюме.

https://bookflow.ru/pishem-sajt-poiska-raboty-na-python-django/

@itmozg
👍12
Forwarded from Python академия
Бесконечность

Вообще float является крайне интересным типом данных и не перестает удивлять своими особенностями. Про значение Not a Number мы уже писали, а вот сегодня поговорим про infinity.

Строковые литералы 'inf' и 'infinity' можно конвертировать в float, и в результате получается значение бесконечности. Для отрицательной "бесконечности" нужно поставить знак минуса перед словом.

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

Подписывайтесь на канал 👉@pythonofff
👍14👎6👌2🥰1
Создание Telegram бота на PHP

#1: основные понятия для работы с API
#2: создание первого бота для Telegram
#3: примеры отправки сообщений с кнопками в Telegram
#4: отправка файлов и изображений в Telegram
#5: работа с хуками
#6: настройка бота через BotFather
#7: создание PHP класса для отправки запросов

https://www.youtube.com/playlist?list=PLX0b6DxYL7jCe49XnLFjeiLIgA7LJqD5T

👉 @php_lib
👍13👎2
Forwarded from Python академия
Редактируем видео

Пакет moviepy позволяет обрезать и склеивать видео, добавлять видеоэффекты, а также редактировать звук.

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

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

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

Подписывайтесь на канал 👉@pythonofff
👍14🎉1
Forwarded from ITmozg
Алгоритмы и структуры данных на Python с примерами кода + видео

Алгоритм Кнута-Морриса-Пратта (КМП-алгоритм)
Алгоритм Бойера-Мура-Хорспула
Алгоритм Дейкстры (Dijkstra’s algorithm)
Алгоритм Флойда (Floyd’s algorithm)
Алгоритм Форда-Фалкерсона
Алгоритм Краскала (Kruskal’s algorithm)
Алгоритм Прима (ближайшего соседа)
Сортировка выбором
Сортировка вставками
Сортировка пузырьком (метод всплывающего пузырька)
Слияние двух упорядоченных списков
Быстрая сортировка слиянием (merge sort)
Быстрая сортировка Хоара
Стек типа LIFO (Last-In-First-Out)
Делаем очередь (queue)

https://bookflow.ru/algoritmy-i-struktury-dannyh-na-python/

@itmozg
👍25
Порядок выполнения операций SQL

SQL не является традиционным языком программирования, на котором вы пишете последовательность инструкций в определенном порядке выполнения. Вместо этого SQL является «декларативным» языком, что означает, что, составляя SQL-запрос, вы указываете, какие данные ожидаете получить в результате запроса, но не указываете, как их получить.

https://bookflow.ru/poryadok-vypolneniya-operatsij-sql/

#SQL

👉 @database_info
👍10🔥3
Forwarded from ITmozg
Поисковая система Google умирает

Почему люди ищут именно на Reddit? Короткий ответ заключается в том, что результаты поиска Google явно ухудшаются. Длинный ответ — большая часть Интернета стала слишком неаутентичной, чтобы доверять ей.

https://bookflow.ru/poiskovaya-sistema-google-umiraet/

@itmozg
🤡37👍12😁9👎4🌚1
Правильный способ сравнения чисел с плавающей точкой в Python

В этой статье вы узнаете:
Почему числа с плавающей точкой являются неточными
Почему часто встречаются ошибки представления чисел с плавающей точкой
Как правильно сравнивать значения с плавающей точкой в Python
Как точно представлять числа с помощью типов Python Fraction и Decimal

https://bookflow.ru/pravilnyj-sposob-sravneniya-chisel-s-plavayushhej-tochkoj-v-python/

@BookPython
👍22