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

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

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

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
🎯 Команда дня: `@overload` в Python

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

Пример:
from typing import Literal, overload

@overload
def transform(data: str, mode: Literal["split"]) -> list[str]: ...
@overload
def transform(data: str, mode: Literal["upper"]) -> str: ...

def transform(data: str, mode: Literal["split", "upper"]) -> list[str] | str:
return data.split() if mode == "split" else data.upper()


transform(..., "split")list[str]
transform(..., "upper")str
— Типизация подскажет ошибку, если вы вызовете append() у строки или .lower() у списка

Другой кейс — когда нужен только один аргумент из двух:
@overload
def get_user(id: int = ..., username: None = None) -> User: ...
@overload
def get_user(id: None = None, username: str = ...) -> User: ...

def get_user(id: int | None = None, username: str | None = None) -> User: ...


Так можно добиться:
get_user(id=1)
get_user(username="John")
🙅‍♂️ get_user(id=1, username="John") — не соответствует ни одной сигнатуре

Бонус: Literal позволяет ограничить значения аргументов строками:
def set_color(color: Literal["red", "blue", "green"]) -> None: ...


▶️Попытка передать yellow вызовет ошибку ещё до выполнения кода.

▶️ @overload и Literal — мощные инструменты статической проверки, особенно в больших проектах, где важна точная типизация.

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Что выведет код?

🔥 — [1, 2, 3, 4, 5, 6]
🙏 — (1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6)
🌚 — Error
😢 — None

Proglib Academy #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚10🔥1🙏1
🤑 Чатжпт, учи меня полностью

Всю неделю сижу в режиме обучения от ChatGPT — читаю, спрашиваю, проверяю, снова читаю.

А вы как проводили свою неделю обучения?
Что нового узнали, чему научились, что залипло в голове?

Proglib Academy #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🌟 Птица как флешка

Энтузиаст научил скворца запоминать и воспроизводить png-файл в виде звукового сигнала

Есть тут, кто хочет передавать данные в скворцах? 🙂

Proglib Academy #развлекалово
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2👏2🔥1
🤫 Как продвинуть резюме на hh

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

➡️ Подробнее в статье

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2😁2
✍️ Шпаргалка: как генерировать текст с LLM

Генерация текста — это не просто «угадай следующее слово».
Модель оценивает вероятности, а дальше всё зависит от стратегии:

➡️ Greedy Search — всегда берёт самое вероятное слово. Быстро, но скучно.

➡️ Sampling — случайный выбор по вероятностям. 🔥 High temp — креативно, ❄️ low temp — логично, но сухо.

➡️ Beam Search — оставляет несколько лучших вариантов, ищет среди них.

➡️ Contrastive Search — балансирует смысл и разнообразие, избегает повтора.

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
1
😐 Айти-аудитория меняется быстрее, чем Python получает обновления.

Если в 2012 все грызли техничку и мясо, то теперь — «3 признака, что вас скоро сократят».
И да, 2020-й был годом великого «вката». Мы ещё не оправились.

А вы на каком этапе? Только вкат или уже ищете третьего работодателя сразу? 👇

Proglib Academy #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👾1
🍴 Фриланс, pet-проекты и Kaggle — это тоже опыт. Но многие до сих пор так не думают.

Если вы собирали ML-пайплайны «на коленке», писали ботов и скорили таблички ради интереса — поздравляю, вы уже работали дата-сайентистом. Просто без бейджика и офиса.

Главное — правильно подать это в резюме.

➡️ Как именно — разобрали в статье

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Зачем вообще понимать, как работает ML?

Сейчас многие просто запускают модельку в sklearn — и радуются точности 0.92.

Вроде всё работает… но почему?
А когда сломается — что делать?


Машинное обучение — это система, которую можно понять.

Если знаешь, что делает градиентный спуск, зачем нужен бустинг и как дерево принимает решения — ты не просто «запускаешь», ты управляешь моделью.

👉 Мы сделали курс, чтобы в это было реально въехать:

— без сложных формул;
— с интуитивными объяснениями;
— от простого к сложному.

Если хочешь перейти от «гуглю код» к «понимаю, как это работает» — ты по адресу!

Стартуем в сентябре — бронируй место на курсе уже сейчас
👍1🔥1
🌟 Сидел в самолёте, и собрал стартап

Это кодинг в 2025ом году

Сколько процентов своего кода вы уже пишете через нейросети? 👇

Proglib Academy #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
🗣 Промпт дня: техническое интервью по Python

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

Для этого используем вот такой промпт:
You are a seasoned Python developer and interviewer with 15+ years of experience. Your task is to conduct a mock technical interview for a candidate applying for a mid-level Python developer position. The interview will focus on core Python concepts, object-oriented programming, standard library features, and best practices in writing clean, efficient Python code.

Your approach will be to ask one question at a time, wait for the candidate's response, provide constructive feedback on their answer (highlighting strengths and areas for improvement), and then proceed to the next question. The goal is to simulate a real-world interview experience and help the candidate identify areas where they need to improve their knowledge.

Here's the format you will follow for each question:

Question:
$interview_question

[Pause for Candidate's Response]

Feedback:
Strengths: $positive_feedback_on_answer
Areas for Improvement: $constructive_criticism_and_suggestions

Next Question:
$next_interview_question

Begin the mock interview


Proglib Academy
#оффер_мечты
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ Фриланс, пет-проекты и side-проекты — это тоже опыт

Если у вас нет строк в трудовой книжке, это ещё не повод убирать проекты из резюме.Рассказываем, как грамотно оформить неформальный опыт и показать его как карьерный плюс.

🔰В карточках — основные принципы и ошибки, в статье — больше примеров и конкретных советов.

😶 Статья

Proglib Academy #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
1