Типичный программист
81.4K subscribers
2.64K photos
888 videos
8 files
7.44K links
Всё самое интересное по программированию

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
5 задач с собеседований для Python-разработчиков

Собрали одни из самых частых задач, которые встречаются на собеседованиях в том числе в Apple, Samsung, Oracle и IBM. Они относительно несложные и подойдут для junior и middle программистов.

Айда решать: https://tproger.ru/articles/5-zadach-s-sobesedovanij-ibm-dlya-python-razrabotchikov/

#задачки #собеседование #python
Ловите дорожную карту по Python, в которой собраны актуальные для изучения инструменты и технологии в 2023 году

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

Оригинал в высоком качестве, подсказки и полезные ссылки по обучению: https://tproger.ru/articles/roadmap-python-razrabotchika-2023

#шпаргалка #python
Главная проблема новичков в асинхронном программировании на Python

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

В статье вы узнаете про главную проблему асинхронного программирования на Python. И лучше разберётесь с async и await: https://tproger.ru/articles/glavnaya-problema-novichkov-v-asinhronnom-programmirovnaii-na-python

#python #асинхронность
Протоколы в Python: о них мало говорят, а зря

Когда новички изучают Python, очень много внимания обычно уделяется языковым конструкциям и концепциям, например рекурсиям или ООП.

Но есть куда более важные вещи, о которые лучше узнать как можно раньше. О них — в статье: https://tproger.ru/articles/o-nih-malo-govoryat-a-zrya-protokoly-v-python

#python #начинающим
Как ускорить код на Python?

В своей статье backend-разработчик из IT Kokoc Group рассказывает про 3 простых способа. А также сравнивает скорость выполнения программы при их использовании: https://tprg.ru/5caT

#python #библиотеки
httpx vs. requests vs. aiohttp: что лучше?

С библиотекой requests питонисты знакомятся в первый же год, ведь на взаимодействии программ с веб-приложениями держится очень многое. HTTP-запросы позволяют общаться с API всевозможных сервисов, автоматизировать сбор данных с веб-страниц и в целом дают всевозможным системам взаимодействовать на расстоянии.

Разобрали на примере, какая из библиотек справляется лучше и как асинхронность влияет на скорость исполнения массовых запросов: https://tproger.ru/articles/http-vs-requests-vs-aiohttp-kto-luchwe

#python #веб
Решаем задачу коммивояжёра как профи

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

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

В статье рассказали подробнее о том, что это такое. И реализовали на Python различные подходы к решению задачи коммивояжёра: https://tproger.ru/articles/metaevristicheskie-podhody-k-reweniyu-zadachi-kommivoyazhyora

#задачки #python
Мошенничество FTX: почему для мошеннических действий не стоит писать код на Python

FTX — онлайн-сервис обмена цифровых валют. В 2021 году компания имела более миллиона пользователей и объем торгов был третьим среди криптобирж. Уже в ноябре 2022 года компания подала заявление о банкротстве. Но в работе криптобиржи нашли много странных историй, похожих на мошеннические действия. До сих пор ведется расследование.

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

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

Например, этот фрагмент кода якобы демонстрирует данные с баланса страхового фонда, который колеблется, когда биржа добавляет фонды или изымает их для покрытия убытков.

Даже программисту-новичку будет понятно, что на самом деле разработчики просто обновляли сумму, прибавляя к ней объём торгов за день, умножая на случайное число и деля его на миллиард.

Если интересно посмотреть на другие фрагменты кода, указывающие на мошеннические действия, и почувствовать себя в роли следователя, эта статья для вас: https://habr.com/ru/articles/766960/

#безопасность #python #криптовалюта
Автор курсов по Python и Pandas получил вечный бан за рекламу торговли экзотическими животными — решение вынес бот

Ревен М. Лернер создает курсы по Python, выпускает книги с задачами по Python и Pandas. Python и Pandas действительно легко спутать в английском языке с видами редких животных. Хотя названия технологий основаны не на схожести с животными: Python — отсылка к британской комик-группе «Монти Пайтон», а Pandas — сокращение от «Python data analysis».

Лернер попытался разместить рекламу курсов Python и Pandas. Но система сочла её рекламой продажи экзотических животных и заблокировала аккаунт рекламодателя.

Аккаунт не помогло вернуть даже вмешательство человека. Решение о бане вынес бот, но обжаловать его можно было в течение 180 дней. Лернер не знал о бане и просто не успел обжаловать решение. Он экспериментировал с рекламой пару лет назад и просто забыл про свой кабинет.

Если тоже рекламируете курсы про IT на английском, держите несколько идей для рекламных объявлений: «LaTeX для новичков», «убить Python», «получить доступ к Cocaine».

#кек #ии #python
Как и обещали — вторая часть гайда по работе с Pandas

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

А бонусом внутри вы найдете список альтернативных инструментов для работы с большими данными.

#python #библиотеки
Модуль, пакет, библиотека, фреймворк: в чём разница?

Разобрали ключевые отличия фреймворка от библиотеки и другими типами импортируемых объектов в Python с применением диаграмм. Вкратце разницу обозначили на картинке. А подробнее рассказали в статье: https://tproger.ru/articles/modul-paket-biblioteka-frejmvork-razbiraemsya-v-raznice

#начинающим #python #библиотеки
А вы знали, что за ответы на StackOverflow награждают?

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

Недавно Мартина наградили почётным званием PSF Fellow за его огромный вклад в коммьюнити: https://pyfound.blogspot.com/2023/09/announcing-python-software-foundation.html

Гуглить и читать документацию тоже полезно, но вот это действительно та поддержка, которую ожидаешь от ребят со StackOverflow. Достойно уважения.

#python
Для многих новичков концепция ООП кажется несуразной и абсолютно непрактичной

Давайте разберемся, как она работает в Python на примере класса Heap. Для этого мы составили пошаговый план, наполненный теорией и практическими задачами.

#python #ооп #дляначинающих
Как использовать try — except и не испортить себе жизнь

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

Справиться с негативом помогает конструкция try — except. В Python это лишь способ обработать ошибку и не «обронить» программу. Но если использовать ее не там и не так, лучше не станет (или вовсе будет хуже).

Чтобы таких проблем не возникало, разобрали на примерах, когда и как отлавливать ошибки с помощью блока и рассказали, когда эту конструкцию лучше не задействовать: https://tproger.ru/articles/kak-ispolzovat-try-except-i-ne-isportit-sebe-zhizn

#python
Python станет быстрее?

Дело в том, что в альфа-версии 3.13.0a6 нашлось упоминание встроенного JIT-компилятора. Если вкратце, то это инструмент, который компилирует код Python в машинный код «на лету», во время выполнения программы. Это позволяет языку работать значительно быстрее.

Данная функция пока экспериментальная, но затестить можно уже сейчас. Для активации нужно добавить опцию --enable-experimental-jit при сборке CPython. 

Подробнее расписали тут.

#python
Большой чит-лист по Python: годный репозиторий с 35 тысячами звёзд

Шпаргалка покрывает большинство возможностей Python, поэтому её полезно держать при себе каждому питонисту.

Сохраните себе, чтобы не потерять: https://github.com/gto76/python-cheatsheet

#python
Небольшой чекап по знанию Python библиотек

Недавно мы рассказали о 30 самых полезных библиотеках Python для веб-разработки в 2024 году. Если ещё не читали, обязательно загляните!

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

#python
This media is not supported in your browser
VIEW IN TELEGRAM
Ловите залипательную инфографику о том, как исполняется код Python и Java

#python #java