Best Speeches of Mr. Hettinger. Part 2
Last week we've published an article about a great man and an awesome professional - Mr. Raymond Hettinger (if you haven't read it yet, it would be better to start there). That article received a very positive feedback and many readers commented on CheckiO and Reddit pointing out other interesting speeches of this person. So, this article is a continuation of the previous one dedicated to those speeches.
1. "Being a Core Developer in Python"
Let me tell you about the two noteworthy and amusing incidents that happened to Mr. Hettinger and are directly related to his work on Python.
In 2001 he wrote the matfunc.py module to work with vectors, matrices and other mathematical objects. It was the first serious thing that he did as a core Python developer.
During the following 2 years he didn't receive any feedback and had no idea how many people, if any, are using his development. And then one day he received an email from CERN (The European Organization for Nuclear Research) where he was asked to add some features to this very module. As Mr. Hettinger said himself, he simply couldn't believe his eyes when he read this letter and realized that the very first module he has written was being used in such a serious sphere as nuclear testing.
And the second incident occurred on one day when Mr. Hettinger was in Shanghai. He's a big fan of traveling on public transport in order to watch people of a different culture in their everyday life. That time he decided to take a ride on the Shanghai train, which Mr. Hettinger assumed would take him to another district of this huge city. But something went wrong and the train drove in the opposite direction - out of the city.
Anyone in that situation would be at a loss - a foreign country, an unfamiliar language and the train taking you away from civilization.
By some crazy extraordinary chance in the same train car was sitting a young Chinese man reading the "Python cookbook". So, what Mr. Hettinger did? He came up to the guy, opened his book on chapter 18 and pointed to his name in the text saying: "That's me". Naturally, the young man helped him to reach the city center and taught a couple of characters along the way - 聞人 (famous person).
And just like that work on Python helped Mr. Hettinger not to get lost in China and find a good friend.
If you'd like to learn more interesting and fun facts about the life of the core Python developer, or you yourself want to to join the development team and make the world a better place - you can find the additional details in this video.
2. Modern Dictionaries
As Mr. Hettinger says - everything can be represented in the form of a dictionary (at least conditionally). It's quite convenient to work with the popular formats as JSON and XML, converting them into dictionaries. No wonder that with each new version of Python, the programming language developers are trying to improve the structure of dictionaries and enhance their work.
In this video Mr. Hettinger talks about the positive changes in the Python 3.6 dictionaries in comparison with Python 3.5 and the earlier versions of the language (up to Python 2).
If you prefer to take advantage of the cutting-edge technology and not get stuck in the past - this video is just for you.
If you want to practice working with Python dictionaries - here is a couple of good tasks - "The flat dictionary", "What is wrong with this family?" (you can start solving without registration). Have fun!
3. Python's Class Development Toolkit
People are very unpredictable. Sometimes they can find so unobvious ways of using something that the consequences of such use will be unpredictable at best but easily repairable, and in the worst case scenario you'll have to deal with the disruptive or the extremely negative aftermath.
Same happens in programming. When you create a certain class - you roughly imagine how people will use your groundwork. But returning to the previous paragraph, it's understandable that there will always be situations when "something went wrong".
In this video Mr. Hettinger shares the secrets of how a developer can learn to take into account the possible unobvious ways to use his code, and based on this knowledge to adjust his code in advance (before the release), and also to make changes after the release relying on the feedback received from the users.
An excellent task with which you can test your skills in OOP (object-oriented programming) is "Building Base".
4. Keynote on Concurrency
Nobody likes waiting especially for a long time. All people prefer for their wishes to be fulfilled as quickly as possible. Programmers, testers and ordinary program users are no exception. That's why, such things as multithreading, concurrency and asynchronous programming are becoming more and more popular in many spheres and programming languages.
In this video Mr. Hettinger will tell you how these things work in Python.
In this article we've gathered new interesting and useful speeches of Mr. Raymond Hettinger which we hope will help you to better understand such a wonderful language as Python.
What do you think about these types of articles on CheckiO? If you liked reading about the central figure of this and the previous articles then maybe you'd be willing to suggest the review on which speaker you what to read the next time?
Welcome to CheckiO - games for coders where you can improve your codings skills.
The main idea behind these games is to give you the opportunity to learn by exchanging experience with the rest of the community. Every day we are trying to find interesting solutions for you to help you become a better coder.Join the Game