The organizers of
Moscow Python Conf entrusted
me to search for speakers and to draw up a conference program. And I usually make a program so that it would be interesting to go myself. Conference preparation is an interesting thing. When will you have the opportunity to interview other inter-developer developers? Our first hero is
Ivan Tsyganov from
Positive Technologies . At the conference, he will give a provocative report in which he will tell you why 100% test coverage is bad. Intrigue, of course, no one will reveal. But an experienced developer who speaks at conferences can ask a lot, right? For example, why does he speak at conferences at all and why he doesn’t lie quietly on the couch.
Meet this Ivan. He loves to perform. What for?- What did you do as a developer? What companies, tasks, programming languages and technologies? Where are you using Python now?In university years, I worked in the information and computer center of my native university. There I was faced with the development of all imaginable and not imaginable programming languages, with the administration of servers and PBX. After graduating from university, I went to Peter, where I got a job as a programmer at TimeWeb. There I learned what high loads are and learned how to solve complex problems when the world collapses around. One day, the technical director approached me and said that I would write in Python. I had no previous experience with this language.
')
I am currently working at Positive Technologies on a Max Patrol product. This is a very big and complex product. Its main task is to create an automated information asset inventory system. The system remotely collects information about existing network elements: hardware configuration, OS settings and network equipment applications, versions and basic application settings, database objects, user rights and privileges, and much more. In my work, I have to deal with dozens of types of devices. These are network devices of all breeds: Huawei, Cisco, D-Link, Juniper, and also * nix typewriters: AIX, HpUx, Solaris, and, of course, all kinds of Windows. Therefore, do not be bored. All platforms have some special features - both pleasant and not so.
In addition to work, I use Python wherever possible. Recently made a light alarm from the LED strip, the Chinese Wi-Fi controller and the script in Python. It was interesting to reverse the control protocol of this controller and then steer it from the script. Perhaps I will tell about it at one of the conferences.
- In your experience, what are the strengths and weaknesses of Python in relation to other mainstream programming languages in your area?- Python was great for fast prototyping. Quickly in Python we make a prototype of the product, we launch, and then we slowly rewrite the bottlenecks for something fast, if of course this is required.
As for work tasks, as I said, we have dozens of types of devices from which we need to collect information. Therefore, for us the speed of solving problems is more important than the speed of this solution.
- If you could go back in time when Guido created Python, and give him one piece of advice - what would you say?- Think carefully about the lines!
- What do you use to write and edit Python code?- PyCharm, of course! Sometimes even vim - when you need to fix something on a remote server via ssh.
- Let's play in Nostradamus. What do you think will happen to Python in a few years?- Python will take over the world and other languages will not be needed. We will program the spacecraft in Python 13 (jokes).
- What do you think about the transition from Python 2 to Python 3? Anything interesting that you personally encountered in practice?- I think it hurts. Teeth treat too painful, but necessary. Therefore, it is already time to gather all the will into a fist, cover the code with tests and move to Python 3. It is high time. In my practice, the transition from 2 to 3 passes as standard - as in all.
- What advice would you give to all new Python developers?- Python 3.
- In what programming language do you write at work other than Python? And outside of work?- In our team, we use exclusively Python 3. Outside of work, I play a little bit with Swift, JS, and lately I've been looking towards Haskell.
- Recommend a book that you have read over the last year: technical or not.- Charles Petzold “Code. The secret language of computer science. This is a very interesting book, its author tells how we moved from encoding information using Morse code to modern computers. Very easy to read, highly recommend.
- Many people think that it is best to start learning programming in Python. Your opinion?- Absolutely agree. Python has a very low entry threshold. But it is also a good idea to look in parallel towards languages with static typing.
From the interviewer
Before the conference, I plan to do some more interviews with the same set of questions. If you have tricky questions for the speakers, the answers to which it is interesting for Habrazhitelems to write - write in the comments. I accept applications for reports until mid-September (for a month to prepare a report). You can write to me in lichku, facebook or leave a request
on the conference website .