Overview
We participated in PyCon JP 2017 on September 8th and 9th, 2017. PyCon JP is a conference where Python users gather to exchange information and exchange information about Python and software using Python. The following is a participation memo (personal impression memo).
Impressions of this year
I got the impression that the density became denser throughout. I think the main reason is that the time for each session has been reduced from 45 minutes to 30 minutes. Since the question time is only about 3-5 minutes, I asked one or two people and finished, and maybe because the presentation would not fit in time unless I rushed, all the speakers spoke fast and the slides were flipping through very much. There were many cases where speedy announcements were made. Personally, I was impressed by the fact that the information density increased and I wasn't motivated by questions (although I was a little tired because I had to concentrate on listening).
2016 (45 minutes)

It was shortened in 2017 (30 minutes)!

3 Talks that were good personally
The sessions that I was happy to hear personally were as follows (in order of goodness)
Talks
Each Talks is posted as a video on Youtube. Below is the link and a brief (really simple) comment.
Industrial Test Automation with Asyncio (en)
- Is the presenter from Siemens (Germany)?
- Simultaneous processing of communication between multiple machines when building an automatic test environment by railway simulation is an issue.
- It's nice that a Python library called asyncio can be used for asynchronous processing (recommended)
Sequential communication:

asyncio (You can communicate at once!):

- Introduction of Python GUI library Kivy
- It seems that you can make various nice UIs if you can master it, but it seems that there is little information and I got the impression that it is a thorny road (for professionals?)
- Creating Apps in Kivy (foreign books) is recommended.
4 walls (I got the impression that it seems to be harsh to use)

- To deepen the understanding of the specifications in Python using the basic Python tool (len ()) as a theme.
- Adapter Pattern is used for the len function that returns the length of the object that is casually used
- Also an antithesis to the opinion that it is not a Python object-oriented language (I don't know much about it)


- Announcement that I wrote a motor control program with Python + RasPi and tried to make it operate easily
- He said he chose Python because tools such as MATLAB are expensive for a fee.
- I got the impression that Python + RasPi might be overwhelmed by real-time control like a drone, but I thought that the attitude to try it for the time being was wonderful.
Move the drone (motor) with a simple code

Geospatial data analysis and visualization in Python (en)
- Introduction of a method to efficiently display and analyze restaurant information throughout Japan by reflecting tabelog data on a map
- A library called geopandas is good for map data processing and folium for map display (I wanted to use this)
- I tried to use the zip code for the map division, but since the countryside such as Hokkaido is a rough division, I said that I created an algorithm to determine the division from the road information by myself (Use OpenStreetMap for road information) )
Animation showing increase / decrease in restaurant density in chronological order (example)

- Explanation of the position of C / C ++ language and Python as embedded languages.
- Claims that in the future there will be a trend to provide a library that wraps C code for each embedded hardware in Python (whether it is true or not). It is impossible to link various C codes only with C (development man-hours are dangerous). Let's do it in Python.
- I made a temperature sensor IoT and displayed it on the Web, but when I plotted the change every second, the temperature did not change much, isn't this IoT system actually meaningless? I heard that I noticed that the day before the announcement (laugh)
Example of building all temperature sensor IoT with only Python library (including own library) Temperature graph URL

- Explanation and position of FPGA, Introduction of FPGA language (Verilog HDL) code generation (high-level synthesis) library Polyphony in Python.
- FPGA vs RasPi can't beat FPGA (community size?).
- Recently popular Deep Learning was also tried with FPGA (the announcement time was only a little)
The wall felt by software engineers who want to use FPGA

How the Python library Polyphony works (automatically generate Verilog HDL)

- What is parallel / parallel processing? What is asynchronous I / O? An explanation of them and an introduction to the asynchronous I / O library asyncio.
- It was an easy-to-understand presentation that carefully summarized the parallel processing and asynchronous related issues that I was interested in (personally, it was the best presentation).
- Slide is up, so I definitely want to review it properly.
After hearing myself (parallel / parallel processing, asynchronous I / O)

- Introduction of environment construction method that can use Japanese morphological analysis API using NEologd dictionary on AWS Lambda
- NEologd has a size of about 900MB, but Lamda has a 512MB limit, and workarounds around that were introduced.
- I also learned that normalization and sanitization are important for practical Japanese processing. Dictionaries Wikipedia dictionaries may be used instead of NEologd?
Operation example (story making is taken in one tokenize)

Differences from government-affiliated monthly reports, keyword extraction examples (because similar sentences are published every year)
