fa
Feedback
DevBrain

DevBrain

رفتن به کانال در Telegram

Новости, статьи, книги и видео из мира разработки софта Автор @adilkhash Веду блог https://khashtamov.com/

نمایش بیشتر
3 419
مشترکین
اطلاعاتی وجود ندارد24 ساعت
اطلاعاتی وجود ندارد7 روز
اطلاعاتی وجود ندارد30 روز
آرشیو پست ها
​​Оффер для бэкенд-разработчиков уже в пути 🚨 30-31 июля Яндекс проводит Weekend Offer — мероприятие, на котором вы сможете получить оффер в Яндекс за два дня. У вас есть опыт коммерческой разработки от 3-х лет на Java / C++ / Python? Отлично! Регистрируйтесь на сайте, решайте задачи отборочного этапа и 30 июля участвуйте в онлайн-секциях — на них вам предложат несколько задач, в зависимости от вашего опыта. Если все пройдет хорошо, уже 31 июля вы получите оффер и сможете присоединиться к одной из команд Яндекса. Задачи предварительного этапа доступны до 23:59 27 июля, а материалы для подготовки вы сможете найти 👉здесь

Устали заливать медленный код серверами? Приходите на новый сезон онлайн-конференции для backend-разработчиков Podlodka Backend Crew! Стартуем 18 июля, тема сезона – "Делаем приложения быстрее"! Всю неделю будем пристально смотреть на производительность приложений. Будем учиться ⚡️Замерять и анализировать нагрузку ⚡️Оптимизировать узкие места, не переписывая сервис с нуля ⚡️Грамотно использовать многопоточность и эффективно утилизировать доступные ресурсы ⚡️Ускорять все, что тормозит! Будем разбираться фундментально, поэтому привязки к конкретному стеку и фреймворкам в программе не будет. Зато, например, будем разбираться с реактивным подходом и акторной моделью. Как всегда в Podlodka Crew все это на протяжении недели с необычными нескучными форматами сессий, и с живым комьюнити в Slack. Купить билеты и посмотреть расписание можно на сайте. Ждем на борту!

Django 4.0.6, 3.2.14 В последнем продакшен релизе Django появился весьма не приятный баг, который может привести к SQL Injection: https://www.djangoproject.com/weblog/2022/jul/04/security-releases/ Рекомендуется обновиться как можно быстрее.

Выходим на мета-уровень!🤯 11 июля начинается новый сезон Podlodka Soft Skills Crew, который называется "Научиться учиться"🤩 🎓В нашей жизни и так много обучения, а в айти и тем более – новые технологии, новые доменные области, новые процессы. Все это постоянно меняется. Поэтому критически важно осваивать новые знания эффективно и осмысленно. Поэтому в новом сезоне мы сконцентрируемся на выстраивании эффективного подхода к самообучению: ⭐️ Проанализируем свои потребности и цели в обучении ⭐️ Построим план по достижению этих целей ⭐️ Поймем принципы обучения на биологическом уровне ⭐️ Изучим и сравним инструменты обучения от книг и до сессий с ментором ⭐️ Научимся разбираться с мотивацией и находить силы ✨Бонус трек – в течение всей недели по утрам будут практические воркшопы по осознанности, рефлексии и самодиагностике! Если вы еще ни разу не были на Podlodka Crew, то самое время попробовать! Главные фичи: 💡Узкая тема. Разбираем теорию и практику конкретного подхода или технологии. 💡Удобное расписание: сессии идут 2 раза в день с понедельника по пятницу. 💡Море практики, реальных кейсов и нетворкинга без границ Купить билеты и посмотреть расписание можно на сайте конференции. Ждем вас на борту!

Python Web Conf 2022 Talks + Tutorials — https://bit.ly/3nrOChE

В доке Mozilla нашел html-тэг о котором ранее не знал — datalist: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist Этот тег выполняет функции select и input, но есть крутая фишечка — нативный автокомплит. А вы знали о теге <datalist>?

Repost from DataEng
Про таймауты и внешние API Хорошей практикой при работе с внешними сервисами я считаю явное указание таймаутов ожидания соединения и ответа от хоста. Такой подход поможет избежать проблем с "зависанием" соединения и, как следствие, блокировкой процесса (для блокирующих соединений). На моей памяти было 2 неприятных кейса. В далёком 2015 я использовал requests для работы с сервисом поиска и бронирования ЖД билетов в Казахстане, по-умолчанию в requests нет таймаута и ожидание может превратиться в бесконечность. Всё было хорошо до тех пор пока у внешнего сервиса не начались проблемы, и он перестал отвечать на запросы. Все worker-процессы ушли в бесконечное ожидание, и мой сервис перестал принимать новые соединения, сайт попросту сломался. Тогда мне потребовалось некоторое время, чтобы понять в чем проблема. Со второй проблемой я столкнулся неделю назад. Сейчас я разрабатываю веб-сервисы для автоматизации рекламных сетей, активно пользуюсь Facebook Ads. Для работы с маркетинговым сервисом Фейсбука существует библиотека facebook-python-business-sdk. Внимание! Под капотом она использует requests 😉 И у неё нет таймаута по умолчанию. Я наткнулся на те же грабли, когда ФБ стал подтормаживать. К слову, если вы как и я пользуетесь facebook-python-business-sdk, то таймаут можно установить через инициализацию API-класса: FacebookAdsApi.init(access_token=access_token, api_version='v13.0', timeout=settings.FACEBOOK_ADS_API_TIMEOUT) Не наступайте на грабли, ставьте таймауты 😉 Также по теме в ленте увидел пост про патчинг requests: https://adamj.eu/tech/2022/06/23/how-to-patch-requests-to-have-a-default-timeout/

Тут DigitalOcean завёз новый сервис FaaS, Function as a Service: https://do.co/3PBPcWS

Видосы с прошедшего PyCon US 2022 подъехали: https://bit.ly/3wF0qSV

30 мая стартует новый сезон конференции Techlead Crew. Тема недели — «Continuous Delivery» или подходы и инструменты непрерывной поставки кода. Будет интересно не только техлидам, но всем, кто хочет выкатывать релизы в продакшен часто, быстро, качественно и с минимальными рисками для бизнеса. За неделю сессий вы: 👉 Разберетесь в аббревиатурах CI\CD\QA\QC. 👉 Узнаете все про A\B тестирование и стратегии деплоймента. 👉 Научитесь собирать и тестировать нефункциональные требования на поставку вместе с экспертами из Bolt, AWS и Scentbird. 👉 Оцените перспективность микрофронтенд-технологий на круглом столе. 👉 Узнаете, как выстроены CD процессы, выкатка новых фич, A\B тестирование и проверка качества в компаниях мирового уровня. Если вы еще не разу не были на Podlodka Crew, то самое время попробовать! Главные фичи: ⭐️ Узкая тема. Разбираем теорию и практику конкретного подхода или технологии. ⭐️ Удобное расписание: сессии идут 2 раза в день с понедельника по пятницу. ⭐️ Море практики, реальных кейсов и нетворкинга без границ ➡️ Подробное расписание и билеты с хорошей скидкой уже на сайте! ⬅️ С нетерпением ждем на борту!

Релиз первой альфы Django 4.1 Вышла первая альфа-версия Django 4.1: https://www.djangoproject.com/weblog/2022/may/18/django-41-alpha-1-released/ Альфа-релиз подразумевает feature-freeze, а ближайшая бета-версия выйдет в конце июня. Финальный же релиз намечается на начало августа. Отмечу, что Django 4.1 это не LTS релиз, LTS-версией будет Django 4.2, которая выйдет в августе 2023 года. Что же примечательного в Django 4.1? 1. Class-based views стали асинхронными (ранее асинхронными были только функции, function-based views). 2. Появился асинхронный интерфейс для Django ORM, но отмечу что разработчики лишь скрыли под капотом вызовы запросов к базе через sync_to_async. Проще говоря, синхронные запросы к БД запускаются в отдельных потоках в рамках eventloop. У ORM-методов появились свои асинхронные аналоги с приставкой a: Примеры: - Book.objects.aget() - Book.objects.afirst() 3. Прекращение поддержки PostgreSQL ниже 11 версии. Django 4.1 поддерживает только PostgreSQL 11 и выше. 4. Запрет вызова logout через HTTP GET метод. Если у вас на сайте есть кнопка выхода, проверьте что вы это делаете через POST запрос (исправьте при необходимости). 5. Прекращается поддержка кэш-бэкенда для memcached Более подробную информацию о фичах и обратно несовместимых изменениях можно почитать на сайте: https://docs.djangoproject.com/en/dev/releases/4.1/ А вы используете Django в своих проектах/на работе?

​​Вы приняты Многие из вас уже учились в Школе Сильных Программистов — это ребята, которые сделали курсы «Асинхронная Архитектура» и «Стать Тимлидом». Теперь Федя с Марьяной запускают курс на максимально актуальную сейчас тему — как найти работу за рубежом. На курс позвали чувака, который уже 4 года нанимает инженеров в Мюнхене, и сам переехал в Германию из Красноярска в 2014 году. Обещают помочь с линкедин-профилем, провести мок-интервью и дать обратной связи от себя и других студентов. Обучение стартует 26 мая, продлится три недели и затронет весь цикл трудоустройства — от выбора компании до оценки адекватности оффера. Записаться → P.S. По промокоду devbrain10 скидка 10% до 18 мая.

Вышла первая бета python 3.11: https://www.python.org/downloads/release/python-3110b1/ Версия 3.11 несёт в себе большое количество новых фич. Скоро выпущу подробный пост с разбором каждой фичи. Помимо этого в рамках инициативы Faster Python заявляется, что версия 3.11 в среднем на 22% быстрее чем 3.10 😲😲

​​Месяц назад ребята из Delivery Club поделились первой частью эволюции собственной рекомендательной системы ресторанов. Подробнее в публикации на Хабре. На днях вышло продолжение. Из новой статьи вы узнаете, как отранжировать рестораны персонально для каждого пользователя, зачем нужна офлайновая ML-модель и почему обучение моделей «в лоб» не работает.

Возможны вы уже видели, но если нет, то вышел очень крутой профайлер памяти для Python от Bloomberg: https://github.com/bloomberg/memray У Юрия Селиванова в твиттере есть тред по этой теме: https://twitter.com/1st1/status/1516859294896906241

Крутой справочник по f-строкам в Python: https://fstring.help/

Хорошие новости. В AWS Lambda появились HTTPS URL, теперь можно вызывать Lambda по ссылке, минуя настройку через API Gateway: https://aws.amazon.com/ru/blogs/aws/announcing-aws-lambda-function-urls-built-in-https-endpoints-for-single-function-microservices/ Как ни странно, но в Яндекс.Облаке такая фича была изначально, это помогло мне развернуть телеграм-бота и не платить за него ни копейки.

21 апреля стартует курс по асинхронной архитектуре. Авторы — двое известных чуваков: Федя Борщёв и Антон Давыдов. Вы научитесь проектировать и разрабатывать сложные распределенные системы — с Kafka, CQRS и сложными транзакциями. Курс — крафтовый: это значит вы не платите гигантской компании, которая просто пригласила пару чуваков из компании с громким именем. Наоборот — ребята давно копили опыт и теперь решили поделиться. Это фундаментальный курс о проектировании больших систем — о форматах данных, отказоустойчивости, тестировании и даже разговорах с бизнесом. Будет полезен, если собираетесь иметь дело с любым серьёзным проектом, в котором больше одного репозитория. Даже если вы джун, который пилит монолит в маленьком стартапе, курс вам поможет: мышление проектировщика позволяет писать более понятный и изолированный код. Учимся 4 недели, по 2 урока в неделю. Будут домашки с разбором, так что на выходе, если не поленитесь — получите проект с асинхронной архитектурой в портфолио. Для подписчиков скидка 10% по промокоду devbrain. Действует до 10 апреля. Посмотреть программу и отзывы →

Вышла долгожданная для многих версия 1.18 языка Go: https://go.dev/blog/go1.18 Долгожданная потому что в ней появились обобщённые типы или дженерики.

В JS хотят добавить аннотацию типов: https://devblogs.microsoft.com/typescript/a-proposal-for-type-syntax-in-javascript/