David Beazley
The Past, Present, and Future of my "Python Optional" Physics Experiment
In 1992, I was a Ph.D. student with a part-time internship in the Theoretical Physics Division at Los Alamos National Laboratory. That year also marked my start as one of the founding developers of a software project designed to push the limits of molecular dynamics simulation on massively parallel supercomputers such as the Connection Machine 5. Such systems were new and unproven. There were no rules about how to properly program them, but performance was everything. In fact, the project on which I worked was awarded part of the 1993 IEEE Gordon Bell Prize for high performance computing. Three years later, I discovered Python, ported it to run on massively parallel computers, and incorporated it into our project--much to the generally unamused surprise of others. In doing so, it revolutionized the way in which scientists were able to interact with our software. I also released an open-source tool (Swig) that allowed other scientists to do the same thing with their code. In this talk, I reflect upon the circumstances that led to Python becoming an integral part of this project. I also give some thoughts about the current state of scientific Python and explore some ideas concerning its possible future.
David Beazley is an independent computer scientist living in Chicago. From 1991-1997, he worked in the Theoretical Physics Division at Los Alamos National Laboratory where he helped pioneer the use of Python with massively parallel supercomputers. From 1998-2005, he was an assistant professor in the Department of Computer Science at the University of Chicago. In the Python world, he's best known as the author of the Python Essential Reference, 4th Ed. (Addison-Wesley) and the Python Cookbook, 3rd Ed (O'Reilly). He's also the creator of Swig, a well-known tool for extending Python with C/C++ code. Since 2007, he's been teaching advanced programming and computer science courses through his company Dabeaz, LLC.
Presentation David Beazley
Lambert Meertens
ABC vs. Python
It is well-known that ABC is the precursor of Python. As one of the designers of the ABC programming language I am often
asked, “So what parts of ABC can be found in Python?” In this talk I propose to examine this question.
Lambert Meertens is one of the designers of the ABC programming language, developed at CWI, where he worked from 1966 to 1998. He has held professorships at New York University, Delft University of Technology and Utrecht University, and was chair of IFIP Working Group 2.1 on Algorithmic Languages and Calculi from 1999 to 2009.
Presentation Lambert Meertens
Sape Mullender
Can Dictators be Good?
In July of last year, Guido van Rossum announced that he is stepping down as Benevolent Dictator For Life. One might wonder whether this applies to Guido's life or the Life of Python. This momentous step is cause for concern. We have seen many examples of excellent languages and systems falling prey to standardization and improvement.
In this talk I will present several examples of such systems in support of my conclusion that benevolent dictators, at least in the area of computer systems and languages are an asset and that they should be preserved.
Sape Mullender is Chief Cook and Bottle Washer in Cisco's CTAO, where he works on network security and high-performance mobile switching systems and an Emeritus Professor of Computer Science from the University of Twente in the Netherlands. Before that, he was Director of High-Performance Wireless Systems in Alcatel-Lucent's Bell Laboratories.
He has worked extensively in operating systems, multimedia systems and in wireless systems research. He is a principal designer of the Amoeba distributed system, he contributed to the Plan 9 and Inferno operating systems and he was one of the architects of Bell Labs' Base Station Router (BSR). He received his Ph.D. from the Vrije Universiteit in Amsterdam and was a faculty member there until 1983. From 1984 to 1990 he has been the head of the distributed systems and computer networks research group at CWI. From 1991 to 1998 he was a full professor in Twente. He worked at Bell Labs from 1998 to 2014.
He has published papers on file systems, high-performance RPC protocols, locating migratable objects in computer networks, and protection mechanisms he holds 25-plus patents, and has been involved in the organization of a series of advanced courses on distributed systems. During his career, he has written hundreds of lines of Python.
Presentation Sape Mullender
Steven Pemberton
Programmers are humans too
Imagine, hypothetically, that programmers are humans...despite all evidence to the contrary:
* They work at night, and sleep during the day;
* They only need 2 hours of sleep;
* They survive on a diet of pure caffeine and sugar;
* Many actually enjoy using the vi editor.
Also pretend, just for a moment, that their chief method of communicating with a computer was with programming languages. What should you do?
Designing notations, including programming languages, is not a purely technical exercise, especially since humans have to use them. Human-computer interaction metrics such as speed of use, error avoidance, and enjoyability can be applied just as well to notations as physical devices and computer programs.
Steven Pemberton is a researcher affiliated with CWI. His research is in interaction, and how the underlying software architecture can support users. He co-designed the ABC programming language that formed the basis for Python and was one of the first handful of people on the open internet in Europe, when the CWI set it up in 1988. Involved with the Web from the beginning, he organised two workshops at the first Web Conference in 1994. For the best part of a decade he chaired the W3C HTML working group, and has co-authored many web standards, including HTML, XHTML, CSS, XForms and RDFa. He now chairs the W3C XForms group, and was until recently a member of the ODF (Open Document Format) technical committee. More details at http://www.cwi.nl/~steven.
Presentation Steven Pemberton
Guido van Rossum
Python -- an experiment in language design by community
In 1990, Python started as a hobby project. I named it after Monty Python's Flying Circus, and often cut corners in the code to fit in my spare time and disk space. By 1994 Python's user community was pondering the question "If Guido was hit by a bus?" My response was to give the community an ever larger say in the evolution of the language, using my influence and reputation to moderate the process. The BDFL model allowed me to mentor community members and nudge the language and the community itself in directions that appeared beneficial to current and future users. This resulted in sometimes surprising developments. For example, a language feature initially designed as a protocol to iterate over array-like data structures evolved, via quite a few steps, into a coroutine API suitable for handling thousands of concurrent network connections. And a community that started out as a typical segment of the UNIX culture (i.e., largely white males) embraced diversity at conferences and meetups as well as online. Inevitably the governance structure changed as well, and in 2019 a Steering Council was elected to replace the obsolete BDFL role. Through all this, Python keeps surprising: It is one of the most popular teaching languages, is used by scientists to analyze massive amounts of data like the 2019 black hole photo, and is a popular choice for tech companies, from Google to Instagram to Dropbox. Python's future is bright!
Guido van Rossum is the creator of the Python programming language. He grew up in the Netherlands and studied at the University of Amsterdam, where he graduated with a Master's Degree in Mathematics and Computer Science. His first job after college was as a programmer at CWI, where he worked on the ABC language, the Amoeba distributed operating system, and a variety of multimedia projects. During this time he created Python as side project. He then moved to the United States to take a job at a non-profit research lab in Virginia, married a Texan, worked for several other startups, and moved to Silicon Valley. In 2005 he joined Google, where he obtained the rank of Senior Staff Engineer, and from 2013 to 2019 he worked for Dropbox as a Principal Engineer. Until 2018 he was Python's BDFL (Benevolent Dictator For Life), and he is still deeply involved in the Python community. Guido, his wife and their teenager live in Silicon Valley, where they love hiking, biking and birding.
Presentation Guido van Rossum