Proglib.academy | IT-курсы
3.67K subscribers
1.93K photos
55 videos
10 files
1.81K links
Онлайн-курсы для программистов от создателей «Библиотеки программиста».

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/9f60aed6

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
🔥 Как НЛМК отслеживает ковши с расплавленным чугуном — и зачем это нужно

Раньше ковши искали по рации. Сегодня — за ними следит цифровая система: знает, где каждый ковш, сколько в нём чугуна, куда он движется и не перегрелась ли футеровка.

В новом кейсе рассказываем:
— почему стандартные RFID-метки плавились и что сделали вместо
— как устроена цифровая модель предприятия
— что даёт это внедрение: меньше простоев, теплопотерь и аварий

👷‍♂️ Спойлер: теперь даже ковши «думают».

📌 Читать: https://proglib.io/sh/mXKzViUZen

Proglib Academy #буст
1👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🔹 How to: как работают генераторы в Python

Генераторы — мощный инструмент для итераций, особенно при работе с большими данными. В отличие от обычных функций, они вычисляют значения лениво, выдавая их по запросу и экономя память. Это делает код более эффективным и удобным для повторного использования.

➡️ Принцип работы
Вместо возврата всех значений сразу, генератор использует yield, который приостанавливает выполнение функции, сохраняя её состояние:
def simple_generator():
print("Первый yield")
yield 1
print("Второй yield")
yield 2

gen = simple_generator()
print(next(gen)) # Первый yield → 1
print(next(gen)) # Второй yield → 2


При вызове next() выполнение продолжается с места, где остановилось. Это позволяет работать с последовательностями, не загружая их полностью в память.

➡️ Пример: Фибоначчи на генераторах
def fibonacci_generator(limit):
a, b = 0, 1
while a < limit:
yield a
a, b = b, a + b


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

➡️ Генераторы vs. списки
Генераторы экономят память, так как не хранят все элементы в памяти:
import sys

def list_numbers(n):
return [i for i in range(n)]

def generator_numbers(n):
return (i for i in range(n))

print(sys.getsizeof(list_numbers(1000000))) # 8448728 байт
print(sys.getsizeof(generator_numbers(1000000))) # 208 байт


Разница очевидна: генератор занимает всего 208 байт, тогда как список — 8+ мегабайт!

➡️ Генераторные выражения
Аналогично списковым включениям, но работают лениво:
squares_list = [x * x for x in range(10)]  # Обычный список
squares_gen = (x * x for x in range(10)) # Генератор


➡️ Комбинирование генераторов
С помощью itertools генераторы можно объединять и фильтровать:
from itertools import chain, filterfalse

result = chain((x * x for x in range(10)), (y + 10 for y in range(5)))
odd_squares = filterfalse(lambda x: x % 2 == 0, (x * x for x in range(10)))



➡️ Когда использовать генераторы
— Обработка больших данных без перегрузки памяти
— Потоковая обработка (например, чтение файлов)
— Создание бесконечных последовательностей
— Оптимизация скорости и эффективности кода

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
🤖 Знаете, чем настоящий AI отличается от чат-бота?

Чат-бот просит перезагрузить роутер, а настоящий AI уже умеет читать ваши эмоции в чате, включать музыку под ваше настроение, контролировать погрузку руды с точностью Терминатора и даже находить на КТ-снимках то, чего не заметит человеческий глаз.

Современные компании для таких задач всё чаще используют Deep Learning — алгоритмы на основе нейросетей. Но чтобы попасть в эту лигу, нужен фундамент. И имя ему — Machine Learning.

Наш новый курс по ML — это не волшебная таблетка. Это честный и структурированный путь в мир Data Science. Мы дадим вам базу, с которой вы:

разберётесь, как мыслят машины (спойлер: матрицами!);

научитесь строить работающие модели, а не карточные домики;

получите трамплин для прыжка в Deep Learning.

Хватит смотреть, как другие запускают ракеты. Пора строить свой собственный космодром.

Начните с фундамента на нашем курсе по Machine Learning!
🫡 Microsoft уволила 200 сотрудников King

— Их заменил ИИ, который они же и обучали.

Как вам такой поворот?👇

Proglib Academy #развлекалово
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3😢1
🔥 Знакомьтесь, преподаватель нашего нового курса по ML — Мария Жарова.

В карточках рассказали, чем Мария занимается и какие советы даёт тем, кто хочет расти в IT и Data Science ☝️

А если вы уже поняли, что тянуть нечего, начните свой путь в ML правильно: с реальной практикой, поддержкой ментора и видимым результатом.

👉 Записывайтесь на курс
1🔥1
👍 Пиши код, чтобы он не тормозил

Алгоритмы — не «для олимпиадников». Это то, что делает твой код быстрым.
Не на 5%, а в 10–100 раз.

Вот что реально помогает:

— выбрал другой алгоритм — и лагов нет,
— думаешь про сложность — и не пишешь мусор,
— знаешь про Trie, префиксные суммы, LRU — и у тебя всё летает.

Не гадай, где узкое место. Мерь. Оптимизируй. Ускоряй.

➡️ Вот статья, после которой кодят с умом:
https://proglib.io/sh/BZ6EzqDbaW

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🙏1
🗒 Ты не ленивый, у тебя просто нет среды — создай её сам

1. Проблема не в мотивации. Проблема в хаосе. Нет среды = нет привычки = нет прогресса.

2. У тебя может быть даже Mac за 200к, но без чёткой системы ты всё равно будешь прокрастинировать.

3. Начни с малого:

– Выдели 30 минут в день на код.
– Веди журнал — что учил, что пробовал.
– Учи 1 тему → решай 2 задачи → пиши 1 комментарий к чужому коду.

4. Создай пространство, где ты — разработчик:

– даже если это Telegram-чат с собой;
– даже если ты пишешь код в Google Keep или бумажной тетрадке.
Ритуал важнее инструмента.

5. Среда — это не железо. Это:

время,
фокус,
повторяемость.

👇 Что вам мешает начать кодить?

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2