Всем привет! Состоялся релиз Django 4.0💥 https://www.djangoproject.com/weblog/2021/dec/07/django-40-released/
Ночное образовательное шоу IT Nights 3.0
10 декабря в прямом эфире спикеры из Facebook, Яндекса, JetBrains, VK, X5 Group поделятся опытом, обсудят будущее и вдохновят на новые проекты. А зрители смогут влиять на происходящее в кадре.
Запоминай:
• 10 декабря в 19:00
• it-nights.ru
• промокод: devbrain
Чего бы ты ни ждал — будет иначе 👀
10 декабря в прямом эфире спикеры из Facebook, Яндекса, JetBrains, VK, X5 Group поделятся опытом, обсудят будущее и вдохновят на новые проекты. А зрители смогут влиять на происходящее в кадре.
Запоминай:
• 10 декабря в 19:00
• it-nights.ru
• промокод: devbrain
Чего бы ты ни ждал — будет иначе 👀
Как точно не ошибиться в код ревью?
Разработчик из Delivery Club поделился своим мнением про хорошие и плохие практики код ревью с учётом человеческих особенностей. В статье узнаете:
– Зачем делать изменения небольшими кусочками и создавать pull request’ы по мере выполнения задач?
– Почему не стоит прогонять весь код через через одного человека?
– В чем профит линтеров и spell checker?
– Как правильная коммуникация помогает не допускать новых ошибок в коде?
Разработчик из Delivery Club поделился своим мнением про хорошие и плохие практики код ревью с учётом человеческих особенностей. В статье узнаете:
– Зачем делать изменения небольшими кусочками и создавать pull request’ы по мере выполнения задач?
– Почему не стоит прогонять весь код через через одного человека?
– В чем профит линтеров и spell checker?
– Как правильная коммуникация помогает не допускать новых ошибок в коде?
Хабр
Код ревью с учётом человеческих слабостей
Проверка кода (code review) — отличный инструмент для повышения качества кода, но он не учитывает один факт: отправляют и просматривают код люди, а они устают, теряют сосредоточенность, ленятся, да и...
гайд по Django Views: https://spookylukey.github.io/django-views-the-right-way/
Автор Chris Riccomini делится опытом написания технической книги: https://cnr.sh/essays/how-to-write-a-technical-book
cnr.sh
How to Write a Technical Book
I've been asked for advice
about writing a book several times since The Missing README came out in
August. This post is my attempt at an answer. If you've ever thought
about writing a book (or are j
about writing a book several times since The Missing README came out in
August. This post is my attempt at an answer. If you've ever thought
about writing a book (or are j
Forwarded from DataEng
Интересный движ намечается в январе 2022 года — Data Engineer Zoomcamp
Это 9 недельный курс в формате zoom-лекций и практических занятий по дата инжинирингу. Примечательно что он абсолютно бесплатный для всех, нужна лишь предварительная регистрация по ссылке.
У этой инициативы уже есть полупустой репозиторий на гитхабе: https://github.com/DataTalksClub/data-engineering-zoomcamp, там же можно ознакомиться подробнее с предстоящими темами для изучения.
Старт намечен на 17 января 2022 года
Это 9 недельный курс в формате zoom-лекций и практических занятий по дата инжинирингу. Примечательно что он абсолютно бесплатный для всех, нужна лишь предварительная регистрация по ссылке.
У этой инициативы уже есть полупустой репозиторий на гитхабе: https://github.com/DataTalksClub/data-engineering-zoomcamp, там же можно ознакомиться подробнее с предстоящими темами для изучения.
Старт намечен на 17 января 2022 года
Airtable
Airtable | Everyone's app platform
Airtable is a low-code platform for building collaborative apps. Customize your workflow, collaborate, and achieve ambitious outcomes. Get started for free.
Если вы не знаете чем заняться на выходных, то прямо сейчас можно посмотреть бесплатно все курсы по VueJS на платформе Vue Mastery: https://www.vuemastery.com/free-weekend/
Vue Mastery
Free Weekend May 10-12 2024
Join me to watch all of @VueMastery’s courses free through May 10-12
Серия статей про System Design для мобильных разработчиков: https://proandroiddev.com/a-simple-framework-for-mobile-system-design-interviews-89f6f4134b84
Medium
A Simple Framework For Mobile System Design Interviews
The list of posts in this series:
Курс про Go: https://youtu.be/yyUHQIec83I
YouTube
Golang Tutorial for Beginners | Full Go Course
Full Golang Tutorial to learn the Go Programming Language while building a simple CLI application
In this full Golang course you will learn about one of the youngest programming languages that is becoming more and more popular in the cloud engineering world…
In this full Golang course you will learn about one of the youngest programming languages that is becoming more and more popular in the cloud engineering world…
Вчера освежал знания по сборщику мусора в Питоне и наткнулся на отличный доклад на тему: https://www.youtube.com/watch?v=CLW5Lyc1FN8
YouTube
Pablo Galindo Salgado - Time to take out the rubbish: garbage collector - PyCon 2019
"Speaker: Pablo Galindo Salgado
One of the reasons why programming in Python is very straightforward and simple is that we do not have to worry about the lifetime of our objects. That is, once it ceases to be necessary, a variable disappears from the memory…
One of the reasons why programming in Python is very straightforward and simple is that we do not have to worry about the lifetime of our objects. That is, once it ceases to be necessary, a variable disappears from the memory…
Бесплатная книга про шаблоны проектирования веб-приложений на JavaScript и React: https://www.patterns.dev/
www.patterns.dev
Learn JavaScript design and performance patterns for building more powerful web applications.
Видео про работу AWS Lambda от AWS инженера: https://www.youtube.com/watch?v=OOGV81YbuEo
YouTube
HOW LAMBDA WORKS - COLD STARTS? FIRECRACKER? CONTAINER SUPPORT?
Let's look under the hood of AWS Lambda and learn how Lambda works. Marc Brooker - Senior Principal Engineer at AWS and one of the persons behind the AWS Lambda platforms unveils the magic behind AWS Lambda. He shares with us how the platform changed over…
Для любителей алгоритмов и BigO-нотации. Попался на глаза доклад из старых закладок от небезызвестного Ned Batchelder (автор coverage.py): https://www.youtube.com/watch?v=duvZ-2UK0fc
В блоге у него также есть пост по мотивам этого видео: https://nedbatchelder.com/text/bigo.html
В блоге у него также есть пост по мотивам этого видео: https://nedbatchelder.com/text/bigo.html
YouTube
Ned Batchelder - Big-O: How Code Slows as Data Grows - PyCon 2018
Speaker: Ned Batchelder
Big-O is a computer science technique for analyzing how code performs as data gets larger. It's a very handy tool for the working programmer, but it's often shrouded in off-putting mathematics.
In this talk, I'll teach you what…
Big-O is a computer science technique for analyzing how code performs as data gets larger. It's a very handy tool for the working programmer, but it's often shrouded in off-putting mathematics.
In this talk, I'll teach you what…
👍3
Наткнулся на интересную статью с диаграммами про алгоритм кодирования кодов Юникод-символов в байты: https://sethmlarson.dev/blog/utf-8
sethmlarson.dev
How does UTF-8 turn “😂” into “F09F9882”?
If you're anything like me, you love emojis! Emojis appear like an image on the screen, but they aren't an image like a PNG or JPEG. What do emojis look like to computers?
0x820x820x980...
0x820x820x980...
В python 3.11 в модуль asyncio завезли TaskGroup: https://bit.ly/3sNbVVe
Если кратко, то это замена для функции gather, которая запускает сразу несколько корутин. Стандартная функция gather непредсказуема и нужно помнить, что при отмене одной корутины из списка, другие не будут автоматически отменены. Мне приходилось дополнительно писать обёртку, которая обрабатывала возможные ошибки от асинхронных функций и делала явную отмену gather.
С приходом TaskGroup появляется некая атомарность у группы корутин, и соответственно более удобная и наглядная обработка ошибок.
Код взят из исходников EdgeDB: https://github.com/edgedb/edgedb/blob/master/edb/common/taskgroup.py
Если кратко, то это замена для функции gather, которая запускает сразу несколько корутин. Стандартная функция gather непредсказуема и нужно помнить, что при отмене одной корутины из списка, другие не будут автоматически отменены. Мне приходилось дополнительно писать обёртку, которая обрабатывала возможные ошибки от асинхронных функций и делала явную отмену gather.
С приходом TaskGroup появляется некая атомарность у группы корутин, и соответственно более удобная и наглядная обработка ошибок.
Код взят из исходников EdgeDB: https://github.com/edgedb/edgedb/blob/master/edb/common/taskgroup.py
GitHub
bpo-46752: Introduce task groups in asyncio by gvanrossum · Pull Request #31270 · python/cpython
This is EdgeDB's TaskGroup class, adapted for Python 3.11.
In the individual commits you can see how I evolved this from the version in EdgeDB.
Here's a to-do list:
Figure out why in test...
In the individual commits you can see how I evolved this from the version in EdgeDB.
Here's a to-do list:
Figure out why in test...
Намедни попалась на глаза статья про "затыки" в производительности асинхронных фреймворков на примере FastAPI: https://aivarsk.com/2022/01/21/fastapi-concurrency/
По мотивам этой статьи написал свою заметку с замечаниями о производительности asyncio и как работать в условиях CPU-intensive кода.
По мотивам этой статьи написал свою заметку с замечаниями о производительности asyncio и как работать в условиях CPU-intensive кода.
Aivars Kalvāns
FastAPI and cooperative multi-threading
Cal Paterson wrote a great article comparing and describing synchronous and asynchronous Python frameworks and explaining why asynchronous frameworks go a bit wobbly under load. This is a story of how we experienced wobbliness in a recent project.
👍6🔥1👏1
Генерация клиентов для вашего API-сервиса на FastAPI: https://fastapi.tiangolo.com/advanced/generate-clients/
Эта фича стала доступна в версии 0.75.0
Эта фича стала доступна в версии 0.75.0
Tiangolo
Generating SDKs - FastAPI
FastAPI framework, high performance, easy to learn, fast to code, ready for production
👍7
Чтобы получить кратный прирост производительности вашего FastAPI приложения достаточно перевести его на PyPy. Как? Читайте в статье: https://tonybaloney.github.io/posts/pypy-in-production.html
У автора получилось увеличить производительность в 4 раза!
У автора получилось увеличить производительность в 4 раза!
tonybaloney.github.io
PyPy in Production
Deploying a real-world Python application with PyPy
👍6