PyCon China 2019

MAY THE PYTHONIC BE WITH YOU
              

Introduction



At the Christmas of 1989, in order to pass the boring holiday, Guido van Rossum decided to find something to do. He chose to implement a programming language. This programming language is Python.

On October 16th, 2000, Python 2.0 was released.

On December 3rd, 2008, Python 3.0 was released.

Nowadays, Python has been widely used in service development, operation and maintenance, scientific calculation, theoretical simulation and many other computer fields. More and more people are falling in love with Python and giving back to the Python Community in their own way. Perhaps Guido himself did not realize that the language he created, would be used in so many fields. In a sense, the language he created has almost changed the computer world.

This year marks the 30th anniversary of Python's birth. We will hold PyCon China 2019 to celebrate the birthday of this great language. The main venue of the conference will be set up in Shanghai, and at the same time, we will also set up sub-venues in Beijing, Hangzhou, Shenzhen, Chengdu, Nanning and so on.

Whether you are an expert in server development, operation and maintenance, big data, artificial intelligence, or other fields, if you have any experience you want to share with Pythonists, welcome to sign up for our keynotes or lightning talks!

Shanghai Speakers



Luciano Ramalho

Luciano Ramalho

The author of Fluent Python
The Timeless Beauty of Python
Dave Glover

Dave Glover

Microsoft Developer Relations
Build a Python Internet of Things (IoT) Image Classification Solution and Integrate with Azure Serverless Functions
Pahud Hsieh

Pahud Hsieh

AWS - Specialist Solutions Architect, Serverless and Containers
From Modularization to Global Distribution, Python's Latest Features in Serverless Area that Cannot be Missed
Armin Ronacher

Armin Ronacher

Creator of the Flask, Jinja2, Werkzeug, Click, etc
Debug is the New Release: The Unexpected Benefits of Slow Languages
laike9m

laike9m

Google Software Engineer
New Ideas on Python Debug
Elizaveta Shashkova

Elizaveta Shashkova

Software Developer of the PyCharm IDE at JetBrains
Python Visual Debugger: From Internals to Daily Use
Jiayuan Zhang

Jiayuan Zhang

Backend Development Engineer of iQIYI
The Past and Future of GIL
Giampaolo Rodola

Giampaolo Rodola

Python Core - Developer
Speed Up File Transfers And File Copies In Python
thautwarm

thautwarm

University of Tsukua
Python Syntax Extension Framework Moshmosh And CPython-compatible JIT Implementation On It
Hsiaoming Yang

Hsiaoming Yang

Author of Typlog and Authlib
The dangerous Flask
Grey Li

Grey Li

Maintainer of Flask
Building Web API with Flask
Qiyu Li

Qiyu Li

Backend Architect and Leader of Backend Team of LeetCode China
GraphQL in Django
Xintao Lai

Xintao Lai

Ant Financial - Developmental Engineer
Django Migration Under the Hood
Rujia Zhang

Rujia Zhang

Senior Python Engineer in Ele.me
Learning RPC Protocol from thriftpy
Xuye Qin

Xuye Qin

Technical Expert in Alibaba
Mars: Concurrence and Distributed Accelerator for Numpy and Pandas
Xiaojie Zhang

Xiaojie Zhang

NVIDIA - Senior Deep Learning Architecture Engineer
Using Python to Train and Deploy Low-precision Model
藤井美娜

藤井美娜

Machine Learning Engineer/Data Scientist
GVA TECH Co., Ltd
The NLP Practical Sharing In Python - How to Implement Contract Risk Prediction Model
Shun Wang

Shun Wang

Google Consultant
The Deep Learning Practice of Python
Xin Liu A

Xin Liu A

Leader of Shannon Technology Algorithm Platform/Former CTO of NetEase Game
Python Machine Learning Performance Optimization: Take BERT Service as an Example, from 1 to 1000
Alex Zhao

Alex Zhao

Microsoft Data & AI Cloud Solution Architect.
Azure Machine Learning for Python
Dawei Wang

Dawei Wang

Data Mining Engineer, Ping An One Account, Big Data Research Institute
Python Machine Learning Base on Azure
Jian Zhao

Jian Zhao

Microsoft Experienced Architect
Python on Azure Function
Laiqiang Ding

Laiqiang Ding

Leader of Ali Cloud Service in Shanghai
Building of Open Source AIOps Data Center and the Role of Python
Zheng Liu

Zheng Liu

Elastic Community Evangelist / China DevOps Community Core Organizer
Hierarchically Build the Observability of the Application System
Yu Zhang

Yu Zhang

Test Architect, Python Programmer, Practitioner of SET and SRE
Quick Construction of DevOps System from zero - The Way To the Birth of A Small to B Team's DevOps System
Yang Liu

Yang Liu

Senior Manager of NetEase Games, Leader of Airtest Team
Building a Highly Stable and Scalable Automated Test Cluster Based on Python - Automation Test Practice Sharing in NetEase Games
Xin Liu B

Xin Liu B

Quantitative Trading Product Manager of Shanghai Pengbo Finance
Application of Python in the Field of Quantitative Investment
Jiahua Lu

Jiahua Lu

Senior Manager of Academic and Innovative Ecology in Xilinx Institute
When Python Meet FPGA -- the Experience and Feeling of PYNQ Open Source Project
Zhiyong Chen

Zhiyong Chen

Avnet - Senior Tech Marketing Manager
To be determined
Noah Chen

Noah Chen

Managing Member of Python Software Foundation
Connect to the World of Pyrhon's Community
Xiao Tan

Xiao Tan

Developer of Ant Fincial Inc.
Make A Renderer Within 500 Lines Python Codes
William Song

William Song

Zhijiang College of zjut
Human–Machine Interaction Based On OwlReady2
Jondy

Jondy

Dashingsoft
The Revolution of Byte Code
Zhaoqiang Chen

Zhaoqiang Chen

Shanghai Institute of Advanced Drugs, Chinese Academy of Sciences Senior Researcher
Using Sphinx To Make WEB Document
Zehua Wei

Zehua Wei

Shanghai Weiner Technology Co., Ltd.
Convert C/C++ Code Into Code That Python Can Call With One Click

Beijing Speakers



Heng Cui

Heng Cui

Alibaba - Technical Expert
Programming the DSL of RobotFramework Based On the IDE Of PyQt + QScintilla
Yi Wang

Yi Wang

Counselor in ThoughtWorks Data Intelligence Team
Using Python to Achieve Structured Information Extraction of Text Information
Lianghong Fei

Lianghong Fei

Amazon Web Services
Migrating Your Python Web App To Serverless In 30 Minutes
Hideyuki Ogawa

Hideyuki Ogawa

Changmu Founder & CEO
Interactive Data Visualization With Dash
Xiaoqing Zhang

Xiaoqing Zhang

Laiye Networktechnology co.LTD,Algorithm R&D Engineer
Python's Way To Intelligent QA
Xiangyu He

Xiangyu He

ByteDance - Efficiency Engineering Backend Engineer
Understanding Python’s AST
Yiyun

Yiyun

Python Developer
Type Checking Saves Careless Developers
Shaoxuan Huang

Shaoxuan Huang

Tsinghua University
Hello Graph Algorithm: Anti-fraud Application Introduction and Implementation
Lizhuo Guo

Lizhuo Guo

Beijing Microframe Digital Technology - Python Enthusiast
Python with the Visual Effects Industry

Hangzhou Speakers



Liangju Deng

Liangju Deng

MetaSOTA
Write Safer Code
Zhixiang Xu

Zhixiang Xu

Autonomic
Home Bot
Yixian Du

Yixian Du

Meideng Technology - Senior Engineer
New features and improvements of Python 3
Kaisheng He

Kaisheng He

Alibaba - R&D Engineer
Everyone loves DataFrame: Pandas' Way to Mars
Feng Li

Feng Li

Freelancer
Python for Linux Kernel Debugging
Xinyi Li

Xinyi Li

GuanData - Algorithmist
主题待定
Xintao Lai

Xintao Lai

Ant Financial - Developmental Engineer
How to Maintain Your Side Project
Hongke Zhang

Hongke Zhang

Dianwoda - Senior Developmental Engineer
Application of PySpark in Large Data/Machine Learning
Zhenying Xu

Zhenying Xu

Entrepreneurship
Application and Prospect of Python Deep Learning Technology in Medical Field
Binxin Wang

Binxin Wang

aliyun - Senior Developmental Engineer
Application of Asyncio in Cloud Service Automation Testing
Fusheng Xu

Fusheng Xu

SERVYOU GROUP - Algorithmic Engineer
Landing and Enlightenment of Intelligent Question Answering System

Shenzhen Speakers



Giampaolo Rodola

Giampaolo Rodola

Python Core - Developer
Speed up File Transfers and File Copies in Python
Zheng Liu

Zheng Liu

Elastic Community Evangelist / China DevOps Community Core Organizer
Interpretation Of the Core Foundation Of the Google SRE System
Zagfai

Zagfai

Programmer of Touchall
Start Making Money with Money by Using Python
Chao Xie

Chao Xie

Data Engineer of Gekko Lab
Boost the Scientific Computing with One Line of Code
Yi Huang

Yi Huang

Independent Developer
Frontend Development with Python
Jianhui Lu

Jianhui Lu

Microsoft MVP
Dance In the Cloud - Application of Python AI In Microsoft Cloud
Zhiyong Chen

Zhiyong Chen

Avnet - Senior Tech Marketing Manager
Accelerate Computing in Python Assisted by FPGA
Xi Ming

Xi Ming

Tencent, Continuous Integration Development Engineer
Pipenv and Package Management in Python
Feng Zhao

Feng Zhao

PhD student of Shenzhen Graduate School of Tsinghua University
Pack and Release Python C Extensions In Various Plateforms
Weikang Peng

Weikang Peng

Guangzhou Ai Faner Technology, Back-end Engineer
Automatically Generate Web UI For Python Function

Chengdu Speakers



藤井美娜

藤井美娜

Machine Learning Engineer/Data Scientist
GVA TECH Co., Ltd
The NLP Practical Sharing In Python - How to Implement Contract Risk Prediction Model
Xiaofeng Zhang

Xiaofeng Zhang

AWS Senior Solution Architect
Primary Application Analysis of Python and Cloud-AWS
thautwarm

thautwarm

University of Tsukua
Python Syntax Extension Framework Moshmosh And CPython-compatible JIT Implementation On It
Jonathan Lindstrom

Jonathan Lindstrom

Frontier Tech Team LLC
Soft Skills For Software Developers
Zhihang Liu

Zhihang Liu

Guangzhou Tianxian Network Technology CO., Ltd. Leader of Reverse Engine Team
The Static Typed Python
Grey Li

Grey Li

Maintainer of Flask
Building Web API with Flask
soda

soda

Individual Developer of Mitu, User of Rasberry Pi and nodemcu
Touching Physical World Using MicroPython
Xiang An

Xiang An

Dell EMC Storage Software Engineer
Speed up IoT Implementation with Python
Albert King

Albert King

Co-cultivate PhD of New South Wales University and Electronic Science and Technology University
When Knowledge Graph meet Python
Qiang Wu

Qiang Wu

XWFintech, Background Development Engineer
A Sharing of A Debugging Experience on SQLAlchemy Session
Qian Yan

Qian Yan

Senior Technical Adviser in ThoughtWorks
Python's Position in Block Chains
Zehua Wei

Zehua Wei

Shanghai Weiner Technology Co., Ltd.
Convert C/C++ Code Into Code That Python Can Call With One Click

Nanning Speakers



Yuan Jiang

Yuan Jiang

Quseit - R&D Engineer
Using Pytorch and Yolo to Analyse Human Flow
Yingzhang Huang

Yingzhang Huang

Hardware Geek, Personal Developer
Application of MicroPython in Hardware Development
Xiao Luo

Xiao Luo

Guangxi Branch Company of North Laser Research Institute Co., Ltd.
Head of Cloud Computing Infrastructure
Builds DevOps System based on Python
Zoom.Quiet

Zoom.Quiet

101.camp - Chief Evangelist Officer
How Should Senior Programmers Save Themselves?
Jizhi Shi

Jizhi Shi

Information Director of Guangxi Songyu Enterprise Investment Group
Python's Practice in Enterprise Independent Research and Development of Large-scale Management System
Wei Shen

Wei Shen

Executive Director of Huzhou Xunpu Information Technology Co., Ltd.
Python Technology Exchange
Zhang Wei

Zhang Wei

Project Manager, Quseit
Automated Build Project Management for Django Projects
KC

KC

Co-founder of Guangxi Oudu Science and Technology Co., Ltd.
Information Platform Framework of Odoo Based on Python

Agenda



08:40~09:20
The Timeless Beauty of Python

Slides 

I love to study the design of programming languages, and I’ve been coding in Python since 1998. Python is a masterpiece of design. This talk is about the parts of Python that I find are the most beautiful.

Luciano Ramalho
The author of Fluent Python
09:20~10:00
Build a Python Internet of Things (IoT) Image Classification Solution and Integrate with Azure Serverless Functions

Slides 

This is a fun session and you will learn how to create a Python Image Classification and Text to Speech solution for vision impaired people scanning fruit and vegetables at a shop checkout. Next, you will learn how to integrate the image classification solution with Python Azure Functions and connect to a real-time web dashboard.

From this session, you will learn how to build a beautiful Python based Internet of Things Image Classification solution using free of charge services from Azure and impress your friends and colleagues.

Dave Glover
Microsoft Developer Relations
10:00~10:40
From Modularization to Global Distribution, Python's Latest Features in Serverless Area that Cannot be Missed

Slides 

Since the release of AWS Lambda in 2014, the whole cloud native computing field and industry has accelerated into the serverless era. After nearly five years of iteration, what are the most advanced technologies of AWS serverless now?
In this session, we will understand the latest features of AWS serverless from a point of view of a Python developer, including Lambda Layer's better decomposition and encapsulation for your Python application, Custom Runtime to build a more flexible and rich architecture, and AWS SAR (Serverless Application Repository) to achieve global distribution of code and application, and at the last, we will show you how to make the latest AWS CDK environment from the perspective of Infrastructure Is Code, including infrastructure, local testing and roundly using Python to develop and write AWS Lambda application, become a contemporary serverless master who can fully use Python to achieve one-step development, testing and global deployment.

Pahud Hsieh
AWS - Specialist Solutions Architect, Serverless and Containers
10:40~11:20
Debug is the New Release: The Unexpected Benefits of Slow Languages

Slides 

Armin Ronacher
Creator of the Flask, Jinja2, Werkzeug, Click, etc
11:20~12:00
New Ideas on Python Debug

Slides 

Firstly review the existing tools and list the common Python program debug methods. The Traditional debug methods have many shortcomings, and some new libraries have inspired us recently. In fact, Python debug can be more intelligent. Intelligent debug refers to the user setting the target variable, and the debug tool automatically tracing the change process of the target variable according to the program execution process. Thereby we can eliminate the trouble of manually stepping through the tools such as pdb and PyCharm. Based on this idea, I will propose a new debug method and tool (also the project I have been working on recently).

laike9m
Google Software Engineer
13:00~13:40
Python Visual Debugger: From Internals to Daily Use

In this talk we’ll learn how Python debuggers work internally. We’ll learn which bottlenecks and limitations they have, and which improvements were implemented in this area in the past few years. During the talk we’ll consider not only local process debugging, but also remote cases and debugging of different types of files. After that we’ll learn useful techniques for daily use on the example of visual debugger in the PyCharm IDE.

Elizaveta Shashkova
Software Developer of the PyCharm IDE at JetBrains
13:40~14:20
The Past and Future of GIL

Slides 

What is GIL? Why CPython import GIL and what problem does it solve? Why Python is so slow? How to get rid of the restrictions of GIL? This speech will share every sides of GIL, including its history, principle analysis, how to avoid GIL in application layer and the future about GIL, will the PEP 554 Multiple Interpreters in the Stdlib solve problem of GIL?

Jiayuan Zhang
Backend Development Engineer of iQIYI
15:20~16:00
Python Syntax Extension Framework Moshmosh And CPython-compatible JIT Implementation On It

Pattern matching, we have been thinking for many years. JIT, we also have been thinking for many years. The current pattern matching library is far less than the language constructs built in other languages; the current JIT is too domain-specific, and limited to numerical calculations or out of the CPython interpreter. We use compilation knowledge to implement JIT implementations that optimize different and use case based on some significant projects (such as llvm, llvmlite); we also introduce how to extend semantics under the current Python syntax.

thautwarm
University of Tsukua
13:00~13:40
The dangerous Flask

Slides 

A talk about security in Flask (itsdangerous, JWT, JWS)

Hsiaoming Yang
Author of Typlog and Authlib
13:40~14:20
Building Web API with Flask

As a micro framework, Flask is very suitable for developing Web API. What is the merits and drawback of Flask comparing to Django REST Framework and APIStar? In order to simplify our work, we will use some tools to help us. What should we choose between several tools and extension like Flask-RESTful、Flask-RESTPlus、Flask-API、Webargs、Marshmallow? Although we usually use REST API to name our Web API, most of them are not "RESTful" enough. Therefore, which kind of Web API is the truly REST API? In this topic speech, we will discuss these questions and introduce how to write a fully functional Web API using Flask.

Grey Li
Maintainer of Flask
14:20~15:00
GraphQL in Django

Slides 

Comparing to the API with RESTful style, GraphQL has not been popular since its publication. Many developers still take a wait-and-see attitude. It has been nearly two years since LeetCode migrated all the ports to GraphQL, and our site, which has hundreds of thousands of lines of codes, nearly all of the ports are GraphQL now. This speech will introduce you how LeetCode use GraphQL to relieve development work and how we solve problems about using GraphQL.

Qiyu Li
Backend Architect and Leader of Backend Team of LeetCode China
15:20~16:00
Django Migration Under the Hood

Slides 

Django's powerful ORM almost shielded the complexity of SQL. We only need to write Python code and python manage.py makemigrations & migrate, then we can make the data persistent. But what's happened behind these two codes? Why they will fail to execute sometime? When should we execute these code? So in this speech I will talk about:
・ Principles of Django migrations
・ Problems may encounter when using Django migrations, and how to solve them based on principles
・ Practicles of implement Django migrations
・ Other ideas about migrations, how to do database structure versioning, DDL rollback if you make a migrations platform

Xintao Lai
Ant Financial - Developmental Engineer
16:00~16:40
Learning RPC Protocol from thriftpy

Slides 

As a RPC protocol, what are the advantages and disadvantages of thrift?
How are thriftpy and thriftpy2 implemented by pure Python layered to meet different requirements?
Micro-service is the trend of Internet in recent years, so long as we talk about micro-service, RPC protocol will always be involved. The thrift protocol which comes from Facebook and is being maintained by the Apache Foundation, is one of them.
In order to make better use of it, Ele.me reimplemented the thrift protocol using pure Python.
Understanding thriftpy in depth will not only help you better use it. You can also understand the necessary composition of an RPC protocol, and how Python projects support multiple communication protocols and transport protocols through a reasonably layered architecture.

Rujia Zhang
Senior Python Engineer in Ele.me
13:00~13:40
Mars: Concurrence and Distributed Accelerator for Numpy and Pandas

Slides 

Mars is already open its source code in November 2018(https://github.com/mars-project/mars). Currently, Mars can automatically parallelize and distribute more than 70% of numpy common interfaces and is now implementing the automatic parallelization of pandas interfaces. So, how does Mars do these? What problems did Mars encounter in the evolution process? What is the performance of Mars? What lessons can people who are concerned about system design get from the development of Mars? In this speech, you will get the answers.

Xuye Qin
Technical Expert in Alibaba
13:40~14:20
Using Python to Train and Deploy Low-precision Model

Slides 

With the continuous improvement of deep learning technology, in order to fasten the operating speed and save the memory usage of deep learning model deployment, using low-precision float (Semi-precision or fixed-point integer) to train deep learning models is gradually being applied in practice. This speech mainly uses the Python front-end of TensorFlow, introduces how to use Python to build low-precision models, apply the models to training, and further derive the models into a format that TensorRT can use and run, then finally complete the deployment of the models. I hope it will be helpful to your work of training and deploying deep learning model.

Xiaojie Zhang
NVIDIA - Senior Deep Learning Architecture Engineer
14:20~15:00
The NLP Practical Sharing In Python - How to Implement Contract Risk Prediction Model

This speech will introduce the theory and practical application of natural language processing in Python, especially the multi-language challenge and legal text processing. I'll try to give the audience a new perspective and inspiration in 30 minutes. The content is divided into 3 segments:
1.Introduction of Python NLP
Introduction of Python as NLP theoretical basis and utility tools.
2.NLP in several languages
NLP tool for other languages, different points of Chinese and Japanese practicals, precautions of NLP in multi-languages.
3.Practical sharing of Python contract risk prediction model
Through the analysis of the model construction process, including result comparisons and article semantic analysis of EDA, Cosine Similarity, BLUE, ROUGE and some other similar algorithms, enhance the ability of the audience to process the legal texts.
We cannot split human and language, NLP is able to process all the phenomenon of languages. I hope you can gain some points and try to use Python NLP in your field.

藤井美娜
Machine Learning Engineer/Data Scientist
GVA TECH Co., Ltd
15:20~16:00
The Deep Learning Practice of Python

Slides 

Last year, I was honored to share the theme of Cloud TPU. I learned that most of the audience was not involved in the field of deep learning. In order to help you get started quickly and keep abreast of the lastest developments in the industry, I prepared a number of practical cases, from mnist('hello word' in deep learning) to CIFAR10, and from ImageNet to BERT/xlnet. I will share the best practice along with the common problems.

Shun Wang
Google Consultant
16:00~16:40
Python Machine Learning Performance Optimization: Take BERT Service as an Example, from 1 to 1000

Slides 

Speaking of Python, the most important problem is the performance problem. But in reality, whether Youtube or NetEase, Python is used to support hundreds of millions of DAU. Python is also undoubtedly the first language in the field of machine learning in recent years. So, how to make good use of profiler to precisely locate the performance bottleneck? How to use various black technologies to squeeze the performance limits of languages and machines? I believe that these are the problems that we are more concerned about. In this speech, I will share the best practice of Shannon Technology in the development of Python deep learning service, and taking the BERT-based service as an example, show you how to improve QRS from 1 to 1000.

Xin Liu A
Leader of Shannon Technology Algorithm Platform/Former CTO of NetEase Game
13:40~14:20
Azure Machine Learning for Python

Enhance AI development productivity and support automated machine learning. It can quickly determine the optimal algorithm, characteristics and parameters, and create Pipelines to automate the whole life cycle of AI development.
Overall support for open source frameworks, technologies and tools: TensorFlow, CNTK, Caffe2, Keras, MxNET, PyTorch, Scikit-learn, Jupyter notebook, VS Code…
Flexible model management and deployment mode. It can be easily deployed on Azure, on premises and IoT edge by using the latest container technologies and framworks.

Alex Zhao
Microsoft Data & AI Cloud Solution Architect.
14:20~15:00
Python Machine Learning Base on Azure

Slides 

Nowadays, machine learning is a very hot research field. Python's easy-to-learn and open source active features make it suitable for machine learning programming. Azure provides SDK and services to data science practitioners, for rapidly preparing data, training and deploying machine learning models to increase productivity and reduce costs.

Dawei Wang
Data Mining Engineer, Ping An One Account, Big Data Research Institute
15:20~16:00
Python on Azure Function

Slides 

This topic will introduce you the current Azure Function, and Python ecology in Azure. As the same time, I will also use examples to show you how to use Azure Function + Python to solve the problems that customers may meet.

Jian Zhao
Microsoft Experienced Architect
13:00~13:40
Building of Open Source AIOps Data Center and the Role of Python

Slides 

According to the report by Gartner, AIOps will be widely used soon ( about 5 to 10 years), and it will use several Ops platform (like Dev、IT、Net、Sec). In this speech, I'll introduce you about the core features of AIOps, difficult point of it (Data acquisition, data center, intelligent algorithm, automation and etc.) and how to select an open-source program of your project and introduce how Python works in it. This speech will include open-source program Kafka、ELK、K8S、Prometheus、Grafana、Graphite、Ansible、Airflow、Flink、TensorFlow、OpenTelemetry and etc.

Laiqiang Ding
Leader of Ali Cloud Service in Shanghai
13:40~14:20
Hierarchically Build the Observability of the Application System

Slides 

In the cloud computing environment, technologies such as microservices and containers have once again increased the complexity of the operating state of the application system. Observability has gradually become an unavoidable problem for software engineers. Logs, indicators, and APM are three important sides of observability. You need to integrate all three aspects into a unified data back-end, so you can search, correlation, indexing, and analysis, and at the same time, use machine learning to reduce the difficulty and cost of manual system troubleshooting analysis. This presentation will also showcase the ways and effects of observability through the Elastic Stack technology stack.

Zheng Liu
Elastic Community Evangelist / China DevOps Community Core Organizer
14:20~15:00
Quick Construction of DevOps System from zero - The Way To the Birth of A Small to B Team's DevOps System

Slides 

Over the past year, I built a minimalist DevOps system based on Python and other open source softwares at a start-up to B company. I will share some thoughts and practices emerged in this process.

Yu Zhang
Test Architect, Python Programmer, Practitioner of SET and SRE
15:20~16:00
Building a Highly Stable and Scalable Automated Test Cluster Based on Python - Automation Test Practice Sharing in NetEase Games

An excellent automated test system can not only help companies optimize the development process, improve product quality, but also can greatly improve test efficiency and save manpower.
Two years ago, in order to solve the problem of automated game testing and improve the efficiency of automated scripting, we opened up Airtest (https://github.com/AirtestProject/Airtest). So far, this framework has helped nearly 40,000 developers and testers all over the world build automated test processes, and also has helped thousands of companies improve product quality and test efficiency.
But Airtest is only a part of our complete ecology. This sharing will be our first time to share the complete practice inside NetEase Games from the perspective of product design and technical architecture, from the underlying test framework to large-scale test cluster construction, from cloud platforms that support global real machine testing to enterprise-level automation solutions.

Yang Liu
Senior Manager of NetEase Games, Leader of Airtest Team
16:00~16:40
Application of Python in the Field of Quantitative Investment

Slides 

Quantitative investment in China has developed rapidly in recent years. However, the quantitative investment tools based on C++ set too many thresholds for the majority of small and medium-sized investors. With the advent of Python, more and more investors can enter the field of quantitative investment because of its flexible, understandable, efficient and convenient features. I will introduce Python's application in data processing, strategy research, transaction execution, risk management and other aspects of quantitative investment, involing futures, opitons, ETF and other financial products suitable for quantitative trading.

Xin Liu B
Quantitative Trading Product Manager of Shanghai Pengbo Finance
13:00~13:40
When Python Meet FPGA -- the Experience and Feeling of PYNQ Open Source Project

Slides 

PYNQ project is an open source project which starts by Xilinx institute in order to mix Python ecosystem and FPGA hardware programming. This is the world's first try to mix Python and Domain Specific Architecture. Software developers can apply the parallel computing and flexible configuration features of PYNQ to end devices through Python programming, which is suitable for accelerating a wide range of applications. And hardware developers (chip design) can quickly get Python support through the PYNQ framework to accelerate their data analysis, display, etc. Hundreds of hardware-accelerated Overlays have been provided in the PYNQ open source community, including artificial intelligence reasoning, machine vision, video transcoding, data compression, industrial Internet of Things, etc. The report will introduce the practice of using the framework for open source frameworks such as ROS, Ray, OpenCV, analyze the impact of Python language on FPGA devices during programming application development, performance results, etc., and will also introduce the road map for subsequent development of the project.

Jiahua Lu
Senior Manager of Academic and Innovative Ecology in Xilinx Institute
13:40~14:20
To be determined

Slides 

Zhiyong Chen
Avnet - Senior Tech Marketing Manager
16:40 ~ 17:20 闪电演讲
Connect to the World of Pyrhon's Community

Slides 

Noah Chen
Managing Member of Python Software Foundation
16:40 ~ 17:20 闪电演讲
Make A Renderer Within 500 Lines Python Codes

Slides 

Graphics is an interesting subject, so using elegant Python code to implement algorithm is also a lovely diversion. In this speech, I'll share some funny things in the process of using Python to implement a simple software renderer.

Xiao Tan
Developer of Ant Fincial Inc.
16:40 ~ 17:20 闪电演讲
Human–Machine Interaction Based On OwlReady2

Slides 

OWL is a description language for the management of ontological knowledge, and OwlReady2 is its Python interface, that encapsulates the reasoning engine HermiT and Pellet, and can make reasoning based on description logics (DLs). Using Python's dynamic programming function, a human-machine dialogue system with reasoning ability is realized. In order to use natural language, a grammar parsing module is also built. The system can pass the testing of simple dialogue task.

William Song
Zhijiang College of zjut
16:40 ~ 17:20 闪电演讲
The Revolution of Byte Code

Slides 

Since Python3.6, a new instruction system, "Word Instruction" is introduced, it's called the Revolution of Byte Code. In this talk, I would like to show:
* The map between Python script/class/function and Byte Code
* The detailed steps of Python core function PyEval_EvalFrameEx executing the Byte Code of one function
* What changed by the Revolution of Byte Code, and the main benefits we got from it.

Jondy
Dashingsoft
16:40 ~ 17:20 闪电演讲
Using Sphinx To Make WEB Document

Sphinx is a tool which allows developers to write their document in plain text and output several formats like PDF, HTML, etc. Sphinx is written in Python and its original design aim is to help to make Python document. And many projects are using sphinx to write their document, for example, matplotlib, scrapy... Sphinx will highlight Python code in default, but it still supports other programming languages like C and Ruby. Comparing to MarkDown, it is a bit more complicated but with higher flexibility, and can make a more beautiful document. It also supports customize grammar. In my point of view, markdown is a piece of paper and sphinx is a book. If you want to record many things, why not try sphinx?

Zhaoqiang Chen
Shanghai Institute of Advanced Drugs, Chinese Academy of Sciences Senior Researcher
16:40 ~ 17:20 闪电演讲
Convert C/C++ Code Into Code That Python Can Call With One Click

Slides 

With the application of Python more and more widely, more and more developers tend to use Python to develop new code.
In many areas, developers used other languages rather than Python in the early days. In Python, overwriting all the code is a big headache. But what if you only need one command to make Python use old language code?
This subject(c2py) provides a solution for C/C++: in most cases, only one or two commands are needed to generate pyd that Python can call directly(or source code for pyd). And it can also automatically generate the type information(pyi file) of all generated Python objects.
Currently, C++ objects that can automatically encapsulated include enum,class/struct/union, function, namespace, typedef/using, #define(only partially recognizable constants), vareables.
Project Address: https://github.com/nanoric/c2py

Zehua Wei
Shanghai Weiner Technology Co., Ltd.
16:40 ~ 17:20 闪电演讲
Fighting Among Python Virtual Environment and Dependency Management Tools

Slides 

Fighting Among Python Virtual Environment and Dependency Management Tools
Introduction: Most of us will face multiple difficulties in Python virtual environment and dependency. At first, you may use virtualenv + requirements.txt and probably with virtualenvwrapper; Then, more new things appear. Pipenv claims itself as a new generation of Python project environment and dependency management tools. It wants to replace those things mentioned above, but it seems that it doesn't do well. After that, more competitors come out. Poetry is the best one between them, it is able to manage dependency as Pipenv. What is more, it can even let you not to write setup.py. Is this the end of the story? Of course not, PEP 582, which still in draft stage, is on the sidelines, trying to end all this chaos...

Grey Li
Maintainer of Flask
9:00 ~ 12:00
Pythonic Objects: idiomatic OOP in Python (presented at PyCon US 2019)

DESCRIPTION
Objects and classes are part of Python since version 1 -- not an afterthought. But all languages implement and support OOP in different ways. "Classic" patterns that make sense elsewhere may not be as useful in Python, and Python provides unique solutions to some familiar problems.
This tutorial is about modern, idiomatic OOP in Python 3.7. Most of the discussion will be relevant to previous versions all the way to Python 2.7, but newer features will be highlighted.
AUDIENCE
This tutorial is for practicing Python developers. Participants are expected to know Python on the level of the official Python Tutorial, to have some practical experience with the language, and to know essential Object Oriented Programming concepts — even if most of their experience with OOP has been with other languages such as Java, C#, C++, PHP, or Ruby.

Luciano Ramalho
The author of Fluent Python
14:00 ~ 17:00
Plate Spinning: Modern Concurrency in Python

DESCRIPTION
In the last few years Python gained new ways of coding concurrent computations such as the concurrent.futures package added in version 3.3 and, the asyncio package in 3.4, and the async/await keywords in 3.5 -- introducing new constructs like `async dev`, `async for` and`async with.
In this tutorial we will see examples of all of these features, along with a discussion of fundamental concurrency concepts and issues in the Python runtime, with solutions to problems of I/O-bound and CPU-bound concurrency.
AUDIENCE
This tutorial is for practicing Python developers. Participants are expected to know Python on the level of the official Python Tutorial, to have some practical experience with the language. Experience with threads in Python or other languages is helpful, but not required.

Luciano Ramalho
The author of Fluent Python
9:00 ~ 12:00
Python Web Development: Lesson One

Introduce:
This is a tutorial about web development for Python developers. The target audience should have already learned Python basic syntax, but no need to have web development experience. In this tutorial , I will make a systematical combing and introduction for all the related concepts involved in Python web development stack, incluing HTTP protocol, frontend basics, popular Python web frameworks and other tools. A hands-on coding section is also included in this tutorial. I will start from building development environment, which is the most troublesome part, and then teach you how to develop a simple web application step by step.
After this tutorial, participants will have a global view of the whole Python web development stack and master the basic web development knowledge. At the same time, this tutorial can also help participants to have a clear understanding of the next learning path.
Schedule:
Part 1 Basic Concepts
・ Python web development technology stack
・ HTTP protocol (request and response, URL etc.)
・ The basic of frontend developmnet (HTML, CSS, JavaScript, AJAX etc.)
・ Comparison of Python web frameworks (Flask, Django etc.)
・ Comparison between traditional web applications and web APIs
・ A brief introduction of testing, deployment, continuous integration etc.
Part 2 Coding Time
・ Buliding development environment
・ Running and debugging web application
・ Writing HTML templates
・ Adding web form support
・ Adding database support
Part 3 Q&A
・ Introduce of common learning mistakes and recommended learning path
・ Answering any questions about the code or other relevant topics
Level :Beginner
Audience:
・ Frontend, DevOps, Testing or any Engineers who want to learn web development
・ Programming enthusiasts who want to build website
・ Web development or Python beginners
・ Master basic Python syntax and basic command line knowledge
・ A laptop with Python and web browser installed

Grey Li
Maintainer of Flask
9:00 ~ 12:00
Python Big Data Analysis And Visualization

DESCRIPTION
Python has a very rich set of tools for big data processing. This course focuses on how to analyze and visualize 50 million scale-level data. On-site students will practice the complete process of big data analysis in the form of actual combat, which from data conditioning, analysis, interactive visualization to final display. Also, on-site students will master how to effectively perform data conditioning (filling, filtering, transforming, enriching, etc.), and how to perform regular statistics, time series analysis, and predictive comparison with algorithms, and how to do interactive analysis and visual display of results. This course will cover a variety of popular Python toolsets, including but not limited to Numpy, Pandas, SeaBorn, Jupyter, Dash, Pyecharts, etc.
AUDIENCE
People who need to do data development, analysis or operations. Can be a general development, IT / business operations staff or data analysis role personnel; need to have a basic programming foundation (not necessarily Python), and understand the general concept of data analysis.

Laiqiang Ding
Leader of Ali Cloud Service in Shanghai
14:00 ~ 17:00
Use Python and Elastic Search to Visualize Massive Data Crawling and Analysis

DESCRIPTION
Python is a great tool for crawling. This topic will show you how to use Python to write crawlers to crawl massive amounts of data and combine ElasticSearch for massive (tens of billions of scale) data analysis and visualization. On-site students will practice massive data crawling in the form of actual combat, analyze the complete link of visualization, and also master how to effectively do concurrent data crawling (concurrency, request, coding, JS operation, etc.), how ElasticSearch and Kibana do massive data regular query, statistics, visualization, etc., and how to analyze the massive scale data. This topic covers a variety of popular Python and ELK aggregations, including but not limited to requests, requests-html, scrapy, selenum/webdriver, execjs, elasticsearch, kibana, etc.
AUDIENCE
People who need to do data development, analysis or operations. Can be general development, IT/business operations staff, or data analysis engineers; need to have a basic Python programming foundation and understand the general concepts of data analysis.

Laiqiang Ding
Leader of Ali Cloud Service in Shanghai
14:00 ~ 17:00
Creat A Python Open Source Project From Scratch

DESCRIPTION
This is a tutorial for beginners of Python. The audience needs to understand the basic syntax of Python and understand object-oriented programming. This tutorial is especially useful for people who want to do something personal, but don't know what to do or how to do.
After the tutorial, participants will be familiar with the Python package structure. Learn how to write setup.py, how to create a command line program, and how to publish your own Python library.
This tutorial will use an example to analyze the birth, creation, release, improvement, and perfection of a project.
SCHEDULE
1. Analyze requirements. The author uses Python to create an e-book generation tool as an example to analyze what to do, why to do the project, and how to implement it.
2. Preparatory work. Understand the format of the e-book, and how to analyze the format of the e-book, and what kinds of methods is available.
3. Create project and look for a third-party library that you need to use. Here we will use requests, beautifulsoup, Jinja. We will analyze why these libraries are used and why they are found.
4. Familiar with third-party libraries. Understand the basic usage of these dependencies.
5. Write the project. Creating a book as an example at first, then writing the basic functions. The participants will learn about this: HTTP requests (requests), web page parsing (beautifulsoup), template engine (Jinja).
6. Improve the project. Analyze different web page structures and improve the packaging of your own code, in order to facilitate extension later.
7. Publish the project. Complete the editing of the command line, understand the packaging of Python, write the setup.py, and learn about various publishing tools.
8. Improve the project. Learning how to expand the project, how to write test cases, and how to build a plug-in system.
This tutorial uses a practical example to teach you how to create a Python project from scratch, and this tutorial is suitable for Python beginners and people who interested in e-Books.
Level:Beginner

Hsiaoming Yang
Author of Typlog and Authlib
14:00 ~ 17:00
Python Debugging: Pro Tips and Not-So-Obvious Tricks

Let’s dive into methods for debugging remote python in environments such as CircuitPython, Raspberry Pi, Docker containers, remote Linux Servers, and Jupyter Notebooks.
Abstract
If you are anything like me, when you started with Python 'print' was the debugger of choice. But you likely found that was slow, tedious, and didn't cut it for more complex problems.
You’ll learn how to sync code to devices, attach debuggers, and step through your code. And existing (or newly forged) Jupyter fans will learn tips to debug your notebooks.
This fun session covers a range of scenarios and empowers you to supercharge your debugging techniques!
Bring your laptop
This is a hands-on tutorial, you need to bring your own laptop (Linux, macOS, or Windows 10)
Please install "Visual Studio Code Insiders Edition" (https://code.visualstudio.com/insiders/) - It is free and Open Source.
Tutorial Content
PyCon Debugging Tutorial: https://github.com/gloveboxes/PyCon-Hands-on-Lab

Dave Glover
Microsoft Developer Relations
09:30~10:10
Programming the DSL of RobotFramework Based On the IDE Of PyQt + QScintilla

RobotFramework is an open-source testing framework based on Python automation for automated testing for continuous integration. RobotFramework is written in a custom scripting language (DSL) but often requires automated test engineers to remember a large number of function names and rules, which is not very convenient to debug. This topic shares a script development tool based on QScintilla+PyQt5 for RobotFramework. It supports syntax highlighting, auto-completion, custom icons, etc. Through this sharing, listeners can learn how to write syntax highlighting, auto-completion, error prompts etc. based on QScintilla, and you can customize the IDE for the DSL field.

Heng Cui
Alibaba - Technical Expert
11:00 ~ 11:40
Using Python to Achieve Structured Information Extraction of Text Information

Extracting information from nature text and forming structured data can help us understand text and assist decision-making. This topic will share the process of structured information extraction using Python, and introduce some technical practices and engineering experience basing on a case of structured data extraction.

Yi Wang
Counselor in ThoughtWorks Data Intelligence Team
11:40 ~ 12:20
Migrating Your Python Web App To Serverless In 30 Minutes

This session will talk about the process of migrating an existing Flask application to AWS Lambda. We will analyze the existing application, decompose it into individual microservices, adapt authentication, frontend, tests, and data model, and finally deploy it to the Cloud. Throughout this step-by-step process, you will learn the benefits of serverless and how it will change the way you think of scalability, availability, security, infrastructure management, and cost optimization.

Lianghong Fei
Amazon Web Services
13:30~14:10
Interactive Data Visualization With Dash

I will talk about how data exploration, data monitoring and data sharing can be done efficiently using Python's data analysis web framework Dash. Especially in data sharing
・ Ability to share more data than ever.
・ To improve the understanding of data by top management and customers, and to reflect their opinions in data analysis.
・ Can accelerate business development.
I will give a presentation with Dash application.

Hideyuki Ogawa
Changmu Founder & CEO
14:10~14:50
Python's Way To Intelligent QA

・ Language comparison: Python's advantages in rapid programming and open source tool library
・ Python's Intelligent QA practice and fast interation of strategy
・ Performance bottlenecks and solutions
・ Expectations: the language itself supports more collaborations, high concurrency, muti-core, etc.

Xiaoqing Zhang
Laiye Networktechnology co.LTD,Algorithm R&D Engineer
15:10~15:50
Understanding Python’s AST

Python 中的 AST(Abstract Syntax Tree)是把文本形式源代码转化成具有抽象语法结构的树状表达式。灵活运用 AST 可以在编译成 bytecode 前对源代码二次修改,以达到某些特殊的功能。也可以根据修改后的 AST 对代码进行转义或者二次生成任何具有语法的文本。

Xiangyu He
ByteDance - Efficiency Engineering Backend Engineer
16:30~17:00 闪电演讲
Hello Graph Algorithm: Anti-fraud Application Introduction and Implementation

Based on graph analysis and semi-supervised learning to detect financial anti-fraud, use Python to interact with Neo4j system to store, display and analyze customer transaction graphs.
The content contains:
(1) The introduction of the graph algorithm and the timing of the application (the use of contexts at home and abroad, such as, LinkedIn, paper research, for example, using the Label Propagation method to detect transaction fraud),
(2) Graph algorithm tools available,
(3) Graph algorithm community and resources sharing, etc. (neo4j Chinese community, paper with codes, twiML@AI).
Finally, there will be a simple implementation. After the data is cleaned up on the Python side, we write the nodes, edges, relationship attributes and weights into the graph database, and calculate the importance and visualization of the characters through different defined central degrees, then we can better understand the nature of the graph algorithm.

Shaoxuan Huang
Tsinghua University
16:30~17:00 闪电演讲
Python with the Visual Effects Industry

I will introduce applications and cases of Python in the visual effects industry, including the features of the visual effects industry, the introduce of visual production process, how to transform the pretty cool visual effects shots from creative imagination into the effects that the audience want to see, the gap between domestic visual effects companies and foreign visual effects companies and the application of Python in visual effects production. By sharing this topic, I hope to make more programmers know visual effects technology and join visual effects industry to let the big screen show more wonderful pictures.

Lizhuo Guo
Beijing Microframe Digital Technology - Python Enthusiast
09:45 ~ 10:30
Write Safer Code

站在开发者的角度,在工作中大家最关注的是业务功能是否实现,业务逻辑是否正确,高级别的一些同学的会关注可扩展性等架构层面的问题。然而,大家都有共同特点:在完成工作(编写代码)时,几乎都是正向思维,会假定用户是按产品设计的流程操作的。
例如写用户余额减扣的代码,也只会写 if user.balance >= product.price, 紧接着一句 user.balance -= product.price。实际上这样的语句存在很大的安全隐患。
应用开发者们一般很少去思考自己所编写的代码可能存在的瑕疵和安全漏洞,就算其中有部分同学具有较强的安全意识,对如何编写安全的代码也只是停留在:内存访问别越界,别用 eval 函数,入参要做非法字符校验。
本演讲主题将分享给大家的是,在利用 Python 编写程序的过程中,有哪些不经意的“正常写法”可能存在安全隐患以及改进做法,使代码变得更安全,并介绍两个用于 Python 代码审查的工具。

Liangju Deng
MetaSOTA
10:30 ~ 11:15
Home Bot

通过 Python 和 Telegram 搭建一个家用机器人,并介绍一些相关的功能和生态环境。

Zhixiang Xu
Autonomic
11:15 ~ 12:00
New features and improvements of Python 3

随着 Python2.x 的停止维护时间(2020年1月1日)越来越近,各大流行 Python 包(Flask,Django,Ipython)也终止了 Python2 版本的支持。遗留项目切换到 Python3 的计划也要提上日程。本次主题演讲主要介绍 Python3 各个版本的新特性,改进,背后的原因,和从 Python2 代码迁移过来时需要注意的点。

Yixian Du
Meideng Technology - Senior Engineer
13:30 ~ 14:15
Everyone loves DataFrame: Pandas' Way to Mars

Pandas 作为最受数据科学家欢迎的分析库,提供了超多的接口来进行数据处理和分析。然而,在很多具体任务过程中,会遇到性能不尽如人意,但又不知如何优化的情况。本次演讲会介绍 Pandas 的常见优化策略,以及 Pandas 背后的实现原理。最后在常见优化手段都不起作用时,可以使用 Mars DataFrame 来并行和分布式加速计算。

Kaisheng He
Alibaba - R&D Engineer
14:15 ~ 15:00
Python for Linux Kernel Debugging

1) BCC(BPF Compiler Collection, 利用扩展的伯克利包过滤器 eBPF 来高效地跟踪内
核和操作应用程序的工具箱)的 Python 前端解析
2) 深入分析 LISA(Linux Integrated System Analysis, 基于 Python 的 Linux 内核交互
式分析和自动化测试利器)项目
3) 脚本化内核调试器 drgn 简介
4) 在开源 ARM 平台(如树莓派4等)上实践 BCC 和 drgn,以及 LISA 项目的扩展设计
议题涉及的主要技术链接:
https://en.wikipedia.org/wiki/Berkeley_Packet_Filter
https://github.com/iovisor/bcc
https://github.com/ARM-software/lisa
https://github.com/osandov/drgn
https://www.raspberrypi.org/products/raspberry-pi-4-model-b/

Feng Li
Freelancer
15:00 ~ 15:45
主题待定

主题待定

Xinyi Li
GuanData - Algorithmist
16:00 ~ 16:10 闪电演讲
Best Practices for Developing Python Projects Using VS Code

从个人经历出发,介绍本人在使用 VS Code 进行 Python 项目开发的经验教训以及总结出来的一些最佳实践。内容包括:
1. Python 开发环境的配置(Windows, Mac OS, Linux, Container);
2. 介绍说明使用 VS Code 进行 Python 开发的常用插件和必要配置,包括 Python,Visual Studio IntelliCode,GitLens,Git Graph,gitignore Generator,Live Share,Settings Sync,Project Manager 等个人经常使用的 VS Code 插件;
3. 创建一个示例Flask项目并实现一个短链生成器,并结合之前介绍的插件充分展示VS Code开发Python项目的编码,调试,测试阶段的实践。

Yixian Du
Meideng Technology - Senior Engineer
16:10 ~ 16:20 闪电演讲
How to Maintain Your Side Project

Side Project 可以让你实践自己的想法,拓展自己的技术广度,检验自己的能力。在 Side Project 中你必须独立解决问题,这里面有很多挑战,但是乐趣更多!做自己的 Side Project,不用担心老板,同事,可以按照自己的想法做事。这个演讲分享做 Side Project 的一些经验,包括如何找到自己的 Side Project,如何知道可行不可行,如何维护它们等等。

Xintao Lai
Ant Financial - Developmental Engineer
16:20 ~ 16:30 闪电演讲
Application of PySpark in Large Data/Machine Learning

什么是 PySpark?
为什么选择 PySpark?
使用 PySpark 进行大数据处理?
使用 PySpark 进行机器学习?
本快速演讲主题将分享给大家的是,在利用 PySpark 在大数据处理和机器学习方向的应用,并介绍使用过程中的一些经验总结,优点以及不足的地方。

Hongke Zhang
Dianwoda - Senior Developmental Engineer
16:30 ~ 16:40 闪电演讲
Application and Prospect of Python Deep Learning Technology in Medical Field

结合当前主流深度学习框架流行趋势及实际业务情况说明选择 Keras 作为部门深度学习主要框架的原因。随后进行 Keras 的简单介绍,介绍如何使用 Keras 模块进行序贯式及函数式编程来搭建神经网络的过程及实施过程。最后结合公司研发的产品介绍人工智能技术在医学及公共卫生领域的一些应用方向,前景与挑战。

Zhenying Xu
Entrepreneurship
16:40 ~ 16:50 闪电演讲
Application of Asyncio in Cloud Service Automation Testing

随着 DevOps 理念的普及,云服务的开发人员也是测试人员,在快速迭代的过程中保证测试质量和效率变得尤为重要。那么如何设计出一个通用、好用、高效与可靠的云服务测试框架?如何利用好 asyncio 的异步特性?希望通过本次分享,能为大家带来启发。

Binxin Wang
aliyun - Senior Developmental Engineer
16:50 ~ 17:00 闪电演讲
Landing and Enlightenment of Intelligent Question Answering System

对于特定领域的智能问答系统,通过对整个过程的数据处理,对抗样本的干扰,多个模型的融合等,基于 Tensorflow 框架,es 检索数据库等工具,建立了有精准答案和推荐的智能问答系统,当然,也有考虑过一些基于 wide&deep 的推荐思路,最后很好地对单一领域的问答给出较好的结果和客户的满意度。

Fusheng Xu
SERVYOU GROUP - Algorithmic Engineer
09:40~10:20
Interpretation Of the Core Foundation Of the Google SRE System

The bursting increase of SRE position shows the great value and vitality of the operation and maintenance system originated from Google. It is a common routine, but you should at least be familiar with core principles such as SLO, monitoring, alarming, trivial reduction and simplification. This speech will also talk about how to transfer them to practical tricks that you can use in your group, including a process specified by the SLO for a typical application system.

Zheng Liu
Elastic Community Evangelist / China DevOps Community Core Organizer
10:40~11:20
Start Making Money with Money by Using Python

Financing is a national topic. There are conservative Yu'E Bao, steady stock futures, radical virtual currency and 100 times leveraged foreign exchange speculation. After experiencing various financial management methods, I decide to share the low-risk investment method of using Python in radical investment projects: Quantitative trading of virtual currency in grid trading. We will start from scratch, briefly discuss the principles and methods of grid trading, and describe how to call API interfaces of relevant exchanges, obtain information about investment targets, record transactions, test and run programs correctly through Python, and give the audience a basic concept of quantitative trading, and derives the point of view that programming is fun from making money with programs.

Zagfai
Programmer of Touchall
11:20~12:00
Boost the Scientific Computing with One Line of Code

・ What is modin? What's the difference between modin and pandas? How to start using modin?
・ Speed: modin V.S. pandas
・ Low-level principles: How to make full use the power of multi-core to parallel the scientific computing?
・ The limitation and community's ambition of modin.

Chao Xie
Data Engineer of Gekko Lab
13:30~14:10
Frontend Development with Python

Introduce an open source Python mobile frontend development framework. This framework is base on OpenGLES and can run on iOS/Android/Desktop. It's core is written in C++, and provides Python binding. It can be used to develop games and applications. This speech will also talk about related ecology in frontend field.

Yi Huang
Independent Developer
14:10~14:50
Dance In the Cloud - Application of Python AI In Microsoft Cloud

Microsoft has great support for Python from development tools to cloud solutions. The combination of Microsoft Azure Machine Learing Service and Python will catalyze the AI application development. Visual Studio Code also has a good Python extension. It can support AI application development from sever side to cloud side, This course will use Visual Studio Code and Microsoft Azure Machine to construct a modern AI application scenarios based on Python from training, tuning to cloud deployment of model, and using Azure DevOps to complete development managment of CI/CD.
A. Introduction of Visual Studio Code Python Components
1. Python program debugging @Visual Studio Code
2. Visual Studio Code run Jupyer
3. Flask + Docker@Visual Studio Code
B. Python@Azure
1. Microsoft Cloud support of Python
2.Rapidly deploy a Flask + Docker application to Azure
3.Use Azure DevOps to manage Flask development
C. Azure Machine Learning
1. Introduction of Azure Machine Learning Service
2. Example:Training and tuning Python model under Azure Machine Learning Serivce
3. Example: Using Azure Machine Learning Service to rapidly publish a Serverless applicaiton
D. Demonstration

Jianhui Lu
Microsoft MVP
15:10~15:50
Accelerate Computing in Python Assisted by FPGA

This lecture will introduce the idea of parallel computing and accelerating computing based on FPGA. At the same time, base on Python programming framework PYNQ (Python Productivity for Zynq) of Xilinx ARM SOC, I will tell you in detail the PYNQ development environment and development tool chain based on Ultra96 development board of Avnet, as well as the reference design and related demonstration based on PYNQ framework, including the application of computer vision and artificial intelligence. Finally, I will introduce a series of technology exchange activities planned by Avnet in cooperation with Python community, aiming at promoting the wide application of Python programming in embedded platforms, and promoting the landing of products in the fields of computer vision, artificial intelligence and edge computing.

Zhiyong Chen
Avnet - Senior Tech Marketing Manager
15:50~16:30
Pipenv and Package Management in Python

Dependency management is never an easy stuff in Python. Is it enough to only use pip + requirements.txt? Why we need a special tool to manage package and dependencies? This speech will start from basic principle, talk about the aim of pip, virtualenv, pipenv, and will also describe the pain points and solutions in dependency management. For extension, we will talk about the tools beside Pipenv and what problem do they solve in Python package management.

Xi Ming
Tencent, Continuous Integration Development Engineer
16:30~17:00 闪电演讲
Pack and Release Python C Extensions In Various Plateforms

・ How to build a Python package, how to do Python extension with C, C++, and Fortran.
・ How expansion compile wheel on different operating systems, how to compile binary packages target to manylinux for Linux operating system, how to solve the dependency on windows, how to release the package to pypi.org with the help of CI.

Feng Zhao
PhD student of Shenzhen Graduate School of Tsinghua University
16:30~17:00 闪电演讲
Automatically Generate Web UI For Python Function

There is often a need to write short Python scripts(usually just a function) for myself or other colleagues, it's may be a little bit difficult for those who are not familiar with Python to use them. After a period of time, they will accumulate more fragmentary scripts, which are difficult to manage and inconvenient to use. We can obtain function signature information by using Python 3 Annotations feature, to automatically generate Web UI for common types of parameters. Placing fragmentary functions in a single Python file, and the program parsing the specified scripts files to automatically generate Web UI, it can be used directly by clicking on the input parameters without knowing Python, which greatly reduces the difficulty of use and facilitates centralized management.

Weikang Peng
Guangzhou Ai Faner Technology, Back-end Engineer
09:20~10:00
The NLP Practical Sharing In Python - How to Implement Contract Risk Prediction Model

This speech will introduce the theory and practical application of natural language processing in Python, especially the multi-language challenge and legal text processing. I'll try to give the audience a new perspective and inspiration in 30 minutes. The content is divided into 3 segments:
1.Introduction of Python NLP
Introduction of Python as NLP theoretical basis and utility tools.
2.NLP in several languages
NLP tool for other languages, different points of Chinese and Japanese practicals, precautions of NLP in multi-languages.
3.Practical sharing of Python contract risk prediction model
Through the analysis of the model construction process, including result comparisons and article semantic analysis of EDA, Cosine Similarity, BLUE, ROUGE and some other similar algorithms, enhance the ability of the audience to process the legal texts.
We cannot split human and language, NLP is able to process all the phenomenon of languages. I hope you can gain some points and try to use Python NLP in your field.

藤井美娜
Machine Learning Engineer/Data Scientist
GVA TECH Co., Ltd
10:00 ~10:40
Primary Application Analysis of Python and Cloud-AWS

Python 自诞生以来一直有“胶水语言”的美誉,如今互联网开发进入了云时代,Python 同样是云的“胶水”。这次分享了领先的云平台 AWS 的 Python 应用,充分展示 Python 语言优雅简洁的魅力。通过结合云平台的 Python,几行代码实现云端应用程序,几行代码管理海量基础设施,几行代码连接 IoT 平台,几行代码调用高级人工智能,甚至,你想象过吗,几行代码实现一个卫星地面接收站。

Xiaofeng Zhang
AWS Senior Solution Architect
10:40 ~ 11:20
Python Syntax Extension Framework Moshmosh And CPython-compatible JIT Implementation On It

Pattern matching, we have been thinking for many years. JIT, we also have been thinking for many years. The current pattern matching library is far less than the language constructs built in other languages; the current JIT is too domain-specific, and limited to numerical calculations or out of the CPython interpreter. We use compilation knowledge to implement JIT implementations that optimize different and use case based on some significant projects (such as llvm, llvmlite); we also introduce how to extend semantics under the current Python syntax.

thautwarm
University of Tsukua
11:20~12:00
Soft Skills For Software Developers

Great code is just one part of a great career in information technology. Over the last three decades I’ve been privileged to work on a wide variety of teams and have benefited from the wisdom of great colleagues, friends and mentors along the way. To encourage you in your own careers, I’ll share some lessons I’ve learned about the other challenges we face as developers: What’s the right answer to “How long will it take”? Should I build a solution, download open-source or buy one? What does my boss want from me? What do my teammates need? How do I get along with other departments?

Jonathan Lindstrom
Frontier Tech Team LLC
13:00~13:40
The Static Typed Python

Unlike promote static type annotation from a practical point of view, this talk will discuss the necessity of Python typing from a typological point of view, the essence of the difference between static language and equivalent dynamic language, and will promote the progressive type system and universal type derivation.

Zhihang Liu
Guangzhou Tianxian Network Technology CO., Ltd. Leader of Reverse Engine Team
13:40~14:20
Building Web API with Flask

As a micro framework, Flask is very suitable for developing Web API. What is the merits and drawback of Flask comparing to Django REST Framework and APIStar? In order to simplify our work, we will use some tools to help us. What should we choose between several tools and extension like Flask-RESTful、Flask-RESTPlus、Flask-API、Webargs、Marshmallow? Although we usually use REST API to name our Web API, most of them are not "RESTful" enough. Therefore, which kind of Web API is the truly REST API? In this topic speech, we will discuss these questions and introduce how to write a fully functional Web API using Flask.

Grey Li
Maintainer of Flask
14:20 ~ 15:00
Touching Physical World Using MicroPython

1. To introduce the ecosystem and the using scenarios of MicroPython.
2. To share personal experience of studying MicroPython
3. Display a project about electrocardiogram that detect heart pulse and show it on oled ( Bring the development board to the meeting )
4. Show a project about getting temperature and humidity and upload it to server using micropython, will show the website.
5. MicroPython studying resources sharing

soda
Individual Developer of Mitu, User of Rasberry Pi and nodemcu
15:20 ~ 16:00
Speed up IoT Implementation with Python

A typical IoT system consists of several models, such as MCU, embed Linux, server, etc. It usually involves lots of programming languages and technical fields. The traditional developing method and the isolation of plenty of technical fields decreased the efficiency of IoT projects implementation.
This topic will introduce a hands-on IoT project to show the technical details from the device layer to the cloud layer. The hands-on IoT project consists of the MCU end device, embed Linux gateway and server software, almost all the components are developed by only one programming language which is Python. With the help of simplicity and abundant libraries of Python, it’s easy for engineers to construct IoT products quickly and smoothly.

Xiang An
Dell EMC Storage Software Engineer
16:00 ~ 16:40
When Knowledge Graph meet Python

知识图谱(KG)是 AI 应用不可或缺的基础资源,近年来受到了各行各业的广泛关注,无论是研究院所、企业、还是开发者个人,都对这项技术有着极大的认知与使用需求。而 Python 作为一门简洁、高效、功能强大的编程语言,对于构建大规模 KG 有着领先的优势。
基于上述,本次分享将围绕以下三个方面进行展开:
一是介绍数据驱动的 KG 构建方法;
二是介绍在 Python 生态中已开发的、面向图数据管理与分析的工具包;
三是以上述一、二中所提到的方法与工具为基础,面向知网学术数据与多媒体新闻文本数据,构建两套完整的知识图谱系统,并详细阐述其中重要的设计思路、算法模型、质量验证标准、可视化展现,以及系统部署。

Albert King
Co-cultivate PhD of New South Wales University and Electronic Science and Technology University
16:40 ~ 17:10 闪电演讲
A Sharing of A Debugging Experience on SQLAlchemy Session

When the concurrency of the company's system comes up, there are always some data in the database that have not been modified successfully. When the relevant code is used independently, concurrent execution actually finds this problem. Step by step to find the problem, after eliminating the problem of database lock, I focused on the session of SQLAlchemy. Finally, I found that every time I save data, I get a new session, which is the problem after testing.

Qiang Wu
XWFintech, Background Development Engineer
16:40 ~ 17:10 闪电演讲
Python's Position in Block Chains

Python is widely used in Web development, numerical computing and hot AI fields, and has made a lot of achievements, which benefit from its strong base libraries and community contribution. But in Block Chains, the use frequency of Python is quite different from that of Go, C++, JavaScript, Java and other languages, even compared with some minority languages like Rust. So what's the problem? How can Python emit light and heat in Block Chains? I hope you can reflect on this issue together with my speech.

Qian Yan
Senior Technical Adviser in ThoughtWorks
16:40 ~ 17:10 闪电演讲
Convert C/C++ Code Into Code That Python Can Call With One Click

With the application of Python more and more widely, more and more developers tend to use Python to develop new code.
In many areas, developers used other languages rather than Python in the early days. In Python, overwriting all the code is a big headache. But what if you only need one command to make Python use old language code?
This subject(c2py) provides a solution for C/C++: in most cases, only one or two commands are needed to generate pyd that Python can call directly(or source code for pyd). And it can also automatically generate the type information(pyi file) of all generated Python objects.
Currently, C++ objects that can automatically encapsulated include enum,class/struct/union, function, namespace, typedef/using, #define(only partially recognizable constants), vareables.
Project Address: https://github.com/nanoric/c2py

Zehua Wei
Shanghai Weiner Technology Co., Ltd.
13:30~14:00
Using Pytorch and Yolo to Analyse Human Flow

随着硬件的不断升级和数据的暴增,使得深度神经网络的训练成为可能。从最早的卷积神经网络 LeNet,后到 AlexNet 的出现,让人们意识到了神经网络的强大,Deep Learning 便开始了爆炸式增长,各种模型层出不穷,性能也愈加强大,也逐渐应用到实践当中。本次演讲将使用 Pytorch 框架和 Yolo 模型对视频进行分析,实现人流量的统计分析,希望能给大家带来一点启示。

Yuan Jiang
Quseit - R&D Engineer
14:10~14:40
Application of MicroPython in Hardware Development

介绍 MicroPython 的发展史、在硬件开发中的应用;MicroPython的开发环境,主流编辑器和 Mu 开发环境,开发环境的使用;MicroPython 涉及的相关开发板,STM32、ESP8266 等,不同开发板之间的硬件差异,开发板上的基本硬件功能使用,通用 IO口、彩灯控制、传感器使用;物联网硬件和云平台的互联互通、数据存储、数据分析;如何实现 Python 语言的全栈开发; MicroPython 和 Python 开发的异同,如何避免开发误区。

Yingzhang Huang
Hardware Geek, Personal Developer
14:50~15:20
Builds DevOps System based on Python

In the past few years, I have been engaged in work related to operation and maintenance development. The topic starts from the most basic self-build machine room of physical machine, involving asset management, release system, and monitoring system. All of these build on Flask for backend development, of which main tasks are secondary development based on open-source software and to construct automatic Ops system fast. The topic ranges from infrastructure to how to construct the DevOps system, and how to quickly implement CI/CD in Kubernetes environment now.

Xiao Luo
Guangxi Branch Company of North Laser Research Institute Co., Ltd.
Head of Cloud Computing Infrastructure
15:40~16:10
How Should Senior Programmers Save Themselves?

根据亲身经历回顾/分享中国大陆环境中程序猿的成长模式, 以及可能的另外途径;
论及:
0: 究竟什么是 Pythonic
1: 为什么中国企业反感35+程序猿?
2: 技术社区和程序猿应该的关系是什么?
3: 个人职业发展的被重启或隐重启

Zoom.Quiet
101.camp - Chief Evangelist Officer
16:20~16:50
Python's Practice in Enterprise Independent Research and Development of Large-scale Management System

松宇集团近年来着力推进信息化建设,在初期,选择了以 SAP 为核心的企业套装管理软件,随着深入使用,发现并没有完全满足松宇信息化的建设战略,遂决定采用自主研发的方式实现信息化平台的改造升级。在新的架构中,采用了以 FastAPI 框架为核心的后台技术体系。我会介绍一下项目的规划思路、整体架构、初步成果,以及为何选择 Python 和 FastAPI 作为核心技术栈。

Jizhi Shi
Information Director of Guangxi Songyu Enterprise Investment Group
17:00~17:15 闪电演讲
Python Technology Exchange

这是一个开放式主题。会通过一些 PYTHON 的应用场景,展开一系列可讨论的主题,大家就自己感兴趣的内容,进行讨论。

Wei Shen
Executive Director of Huzhou Xunpu Information Technology Co., Ltd.
17:15~17:30 闪电演讲
Automated Build Project Management for Django Projects

With the continuous development of Internet technology, improving efficiency has become the core means for enterprises to enhance market competitiveness, and automation is an effective way to improve efficiency and productivity.
Automated tools could automate simple and repetitive tasks. These tools compute how to achieve the goals by performing tasks in the correct, specific order and running each task. This presentation will share how to quickly implement Django builds using automated tools. I hope it could bring some help to everybody in area of continuous build.

Zhang Wei
Project Manager, Quseit
17:30~17:45 闪电演讲
Information Platform Framework of Odoo Based on Python

Odoo 的发展史以及全球社区开放的应用模块介绍;
基于 Python 的 Odoo 架构技术优势(物联网接入、模块扩展、报表扩展、数据库扩展);
基于 Python 的 Odoo 架构应用优势(国内外电商平台接口、物流接口、社交平台接口等);
基于 Python 的平台信息化建设(行业案例)。

KC
Co-founder of Guangxi Oudu Science and Technology Co., Ltd.

Sponsors



Organizer

After the establishment of CPyUG in 2002, lots of Python fans set up a new group called PyChina in 2014 to advertise and develop Python. PyChina will encourage online and offline activities from all over China, especially PyCon.
Diamond

The Python Software Foundation (PSF) is a 501(c)(3) non-profit corporation that holds the intellectual property rights behind the Python programming language.
Productive, Hybrid, Intelligent and Trusted. Azure is an ever-expanding set of cloud computing services to help your organization meet its business challenges. With Azure, your business or organization has the freedom to build, manage, and deploy applications on a massive, global network using your preferred tools and frameworks.
Platinum

AWS
For 13 years, Amazon Web Services has been the world’s most comprehensive and broadly adopted cloud platform. Millions of customers—including the fastest-growing startups, largest enterprises, and leading government agencies—trust AWS to power their infrastructure, become more agile, and lower costs.
Gold

Elastic is a search company. As the creators of the Elastic Stack (Elasticsearch, Kibana, Beats, and Logstash), Elastic builds self-managed and SaaS offerings that make data usable in real time and at scale for search, logging, security, and analytic use cases.
From idea to design and from prototype to production, Avnet supports customers at each stage of a product’s lifecycle. A comprehensive portfolio of design and supply chain services make Avnet the guide for innovators who set the pace for technical change. For nearly a century, Avnet has helped its customers and suppliers around the world realize the possibilities of technological transformation.
Silver

JetBrains creates professional software development tools for coding in Kotlin, Python, Java, and more languages, as well as advanced team collaboration tools.
Xinyi Technology is an IT company specializing in futures-related fields. Since 2006, we have provided a range of futures-related software and services to more than 130 futures companies and millions of end users across the country. Tianqin Quantification Software under Xinyi Technology provides complete Python Quantization Program Framework and data, transaction supoort free of charge.
Crypto.com is a pioneering payments and Blockchain platform with a mission to accelerate the world’s transition to Blockchain payment. We challenge banks and empower our customers with greater financial freedom through our consumer financial services. Our key products, the Crypto.com App, MCO Visa Card, and Crypto.com Chain, echoes our vision to put Digital Currency in Every Wallet. Founded in 2016, Crypto.com is headquartered in Hong Kong with a 200+ strong team.
Book

Beijing Turing Culture Development Co., Ltd. always takes the planning and publishing of high-quality science and technology books as its core business. Its brand, Turing education is one of the high-end brands in the field of computer related books in China. Turing Community is a comprehensive service platform created by Turing, which integrates book content production, translator service, e-book sales, and technical exchanges.
Partners

NetEase Youdao Company was founded in 2006. It is a technology-driven educational technology company. It dedicates to make language communication and learning easier and more efficient, and have created a series of popular learning tools which are popular with users, including Youdao Dictionary, Youdao Cloud Note, Youdao Translation Officer and Youdao Excellent Courses. In 2018, Youdao simultaneous Interpretation was launched to provide accurate, reliable and professional machine simultaneous interpreting services for various conferences.
360 Technical Committee ( Abbreviation: TC ) was found in 2012. It is a virtual organization and consist of experts from every fields in 360. It is the highest management organization in the company's technical field.
Southwest Jiaotong University is a school that opened electronics and information majors earlier in China. It started three majors in computing technology, automation and radio technology in the early 1960s. In 1981, the computer and application majors obtained the first batch of master's degrees in China.
Community partners