Этот пост является частью серии, посвященной спикерам конференции PyBay2018, которая пройдет в конце этого месяца в Сан-Франциско. Это отличная возможность учиться и общаться с заинтересованным и разнообразным сообществом разработчиков Python. Надеемся, вы к нам присоединитесь!

О чем вы собираетесь говорить на PyBay2018 и почему вы рады этому выступлению?

Название моего доклада: «Совместное переключение контекста в облаке, или как сделать мультитенантный микросервис». По сути, я говорю о процессе перехода от локальной библиотеки Python для естественного языка к полностью мультитенантной. клиентская версия, размещенная в облаке и доступная через API. Мы пытаемся демистифицировать библиотеки сопрограмм как подход к этой задаче (в частности, gevent). В конце концов, мы знали, что столкнемся с переносом нашего продукта в облачный сервис, но нужно с чего-то начинать! Надеюсь, мы сможем упростить понимание этого процесса для тех, кто может столкнуться с той же проблемой.

Как вы пришли к программированию и Python?

Я начал программировать, когда мне было около 11 лет (примерно в 1993 году) с BASIC, а затем с Visual Basic. Я открыл для себя Linux примерно 3 года спустя и примерно тогда же начал писать сценарии. Я начал играть с Python несколько лет спустя (в то время я учился в колледже), и это была одна из первых версий языка 2.0. Какое-то время я работал над небольшими проектами в различных рабочих средах. Одним из них был чат-сервер, использующий Python Twisted примерно в 2008 году. Сейчас, в моей нынешней компании, я пишу Python на постоянной основе с 2013 года.

Какая функция Python вам нравится больше всего?

Он так хорошо устраняет разрыв между различными парадигмами программирования. Он имеет аспекты объектно-ориентированного, функционального, процедурного и метапрограммирования в одной и той же языковой системе. Грамматика остается чистой, пока можно использовать все эти аспекты языка. Python обеспечивает чистоту кода за счет использования пробелов, что упрощает передачу кода между членами [] Agile-команды.

Какая ваша любимая библиотека Python (базовая или сторонняя) и почему?

gevent (библиотека, которую мы используем в докладе :) ). Совместная многопоточность/задачность всегда интересовала меня со времен учебы в колледже. Он сводится к основам многозадачности до того, как идеи упреждающего действия взяли верх. Меня всегда интересовали операционные системы и то, как они работают. Однако, прежде чем изучать многопоточность и вытеснение (основы многозадачности), мы сначала узнаем о кооперативной многозадачности (концепция с конца 1950-х до начала 1960-х!). Как оказалось, у этой концепции все еще есть современное применение. Теперь у Python есть несколько библиотек сопрограмм (включая asyncio, которая теперь включена в Python 3), и у каждой из них есть интересные программные конструкции и подходы.

Что вы можете делать, когда не пишете код?

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

Подпишитесь, чтобы не пропустить интервью со спикерами PyBay2018! Если вы еще этого не сделали, обязательно получите пропуск и запишитесь также на некоторые семинары.