В этой статье мы предлагаем читателю совершить с нами в меру увлекательное путешествие в недра asyncio, чтобы разобраться, как в ней реализовано асинхронное выполнение кода. Мы оседлаем коллбэки и промчимся по циклу событий сквозь пару ключевых абстракций прямо в корутину. Если на вашей карте питона еще нет этих достопримечательностей, добро пожаловать под кат.
Мои контакты
понедельник, 27 мая 2019 г.
понедельник, 29 апреля 2019 г.
Как новичку устроиться на работу в сфере IT?
В Antida software мы стремимся создать условия для развития сотрудников в рамках компании. А ещё мы помогаем тем, кто только начинает карьеру.
В 2018 году для этого мы сделали первый шаг: провели Antida Frontend School. Через год вместе с Международным Институтом Дизайна и Сервиса мы запустили проект по подготовке разработчиков с нуля — курс по программированию на Python.
Сегодня мы хотим поднять тему поиска первой работы, ведь с ней сталкивался каждый. Для этого мы попросили рассказать своих сотрудников, как они нашли свою первую работу, и дать совет тем, кто сейчас ищет своё место под солнцем
Профессиональным опытом поделились наши разработчики. Наши ребята вдохновляют, убедитесь сами!
В 2018 году для этого мы сделали первый шаг: провели Antida Frontend School. Через год вместе с Международным Институтом Дизайна и Сервиса мы запустили проект по подготовке разработчиков с нуля — курс по программированию на Python.
Сегодня мы хотим поднять тему поиска первой работы, ведь с ней сталкивался каждый. Для этого мы попросили рассказать своих сотрудников, как они нашли свою первую работу, и дать совет тем, кто сейчас ищет своё место под солнцем
Профессиональным опытом поделились наши разработчики. Наши ребята вдохновляют, убедитесь сами!
четверг, 14 февраля 2019 г.
Организация асинхронной работы с РСУБД на языке Python
Нет времени ждать! Нет времени ждать блокирующие I/O операции, поэтому практически каждый backend-разработчик рано или поздно задумывается об использовании асинхронного веб-фреймворка.
На данный момент у Python-разработчика существует достаточно большой выбор фреймворков с различными реализациями event loop’а: от Twisted, больше похожего на сетевую библиотеку, до http клиента и сервера для asyncio aiohttp (>6500 звезд на GitHub), Flask-like фреймворка sanic (>11000 звезд на GitHub) и http клиента и сервера Tornado (>17000 звезд на GitHub).
Редкий веб-сервер обходится без работы с хранилищами данных. И здесь приверженцев реляционных СУБД поджидает неприятный сюрприз: SQLAlchemy ORM, самая популярная ORM для Python, не поддерживает асинхронную работу. Рассмотрим пути решения возникшей задачи удобной работы с РСУБД без использования самой популярной Python-ORM.
На данный момент у Python-разработчика существует достаточно большой выбор фреймворков с различными реализациями event loop’а: от Twisted, больше похожего на сетевую библиотеку, до http клиента и сервера для asyncio aiohttp (>6500 звезд на GitHub), Flask-like фреймворка sanic (>11000 звезд на GitHub) и http клиента и сервера Tornado (>17000 звезд на GitHub).
Редкий веб-сервер обходится без работы с хранилищами данных. И здесь приверженцев реляционных СУБД поджидает неприятный сюрприз: SQLAlchemy ORM, самая популярная ORM для Python, не поддерживает асинхронную работу. Рассмотрим пути решения возникшей задачи удобной работы с РСУБД без использования самой популярной Python-ORM.
четверг, 24 января 2019 г.
Как мы делали Antida Frontend School
Вопрос “Как спроектировать курс и программу обучения?” совсем не тривиальный. Даже учитывая многочисленность подобных курсов, всегда есть особенности, из-за которых нельзя просто так взять и скопировать. Мы хотим поделиться опытом, как мы разрабатывали учебную программы для frontend-школы, какие цели преследовали и что у нас в итоге получилось.
пятница, 26 октября 2018 г.
Настройка Amazon IoT Button
У нас в компании есть проект, связанный с облачными кнопками от Amazon, — Amazon IoT Button. Процесс настройки этих кнопок не самый простой, поэтому мы решили написать инструкцию, чтобы сэкономить время всем, кто начинает работу с этим устройством.
Задача: настроить кнопку таким образом, чтобы при нажатии в облаке запускалась произвольная lambda-функция.
Кнопка работает следующим образом. По нажатию она включается, подключается к Wi-Fi и отправляет запрос в облако Amazon, где находится обработчик нажатия в виде Amazon Lambda. Батарейки хватает примерно на 2000 нажатий.
Задача: настроить кнопку таким образом, чтобы при нажатии в облаке запускалась произвольная lambda-функция.
Кнопка работает следующим образом. По нажатию она включается, подключается к Wi-Fi и отправляет запрос в облако Amazon, где находится обработчик нажатия в виде Amazon Lambda. Батарейки хватает примерно на 2000 нажатий.
вторник, 4 сентября 2018 г.
Трансформация из Junior в Middle для Python-разработчиков
Статья из внутренней базы знаний нашей компании.
Мы подразумеваем, что разработчик грейда Junior владеет навыками программирования на Python (в идеале — Python 3), базово знает Django/Flask или что-то подобное и умеет работать с базой данных и системной контроля версий (мы используем Git). Таким образом, он может разработать простое веб-приложение на этом стеке.
Для перехода в грейд Middle разработчик должен освоить следующий список инструментов/технологий/навыков.
вторник, 24 октября 2017 г.
Подписаться на:
Сообщения (Atom)