Guido van Rossum dimite: ¿que sigue para Python?

El inventor de Python, Guido van Rossum, conmocionó al mundo de Python el 12 de julio cuando renunció como el llamado BDFL (dictador benevolente de por vida) del lenguaje. En ese momento, citó la acritud sobre una propuesta reciente de mejora de Python para la capacidad de expresiones del lenguaje como motivo de su salida.

Pero van Rossum, quien inventó Python en 1990, sigue confiando en que el lenguaje continuará bien sin su liderazgo. Van Rossum, ingeniero principal de Dropbox en su trabajo diario, habló sobre su decisión de seguir adelante con el editor de Large Paul Krill.

: ¿Por qué dimitió como BDFL?

van Rossum: La parte de por vida siempre fue una broma, por supuesto, como ciertamente también lo fue la parte de la dictadura. He estado jugando con la idea de la jubilación probablemente durante la mayor parte de una década. He tenido algunos problemas de salud, algunos de los cuales pensé que se veían agravados por la amenaza continua de ser siempre la persona más responsable en la comunidad de Python y tener que decirle a la gente cómo hacer las cosas y permanecer callados y ser razonables y explicar los filosofía de la lengua por enésima vez.

La gota que colmó el vaso fue una propuesta de mejora de Python muy polémica, donde después de que la acepté, la gente acudió a las redes sociales como Twitter y dijo cosas que realmente me lastimaron personalmente. Y algunas de las personas que dijeron cosas hirientes eran en realidad desarrolladores centrales de Python, así que sentí que ya no contaba con la confianza del equipo de desarrolladores centrales de Python.

: Esa propuesta fue PEP (Python Enhancement Proposal) 572. ¿Puede hablar sobre los beneficios de esa propuesta y por qué fue tan controvertida?

van Rossum: La propuesta trata sobre una nueva sintaxis que permite que las asignaciones ocurran como parte de la evaluación de la expresión. Es, en general, una pequeña adición al lenguaje. Permite que las personas, cuando sientan la necesidad, pongan asignaciones en medio de una expresión. Hay muchos otros idiomas que tienen eso como una característica menor. Estoy familiarizado con C y C ++. Hasta donde yo sé, Java y JavaScript también lo admiten. Es una pieza de sintaxis bastante específica, pero en ciertas situaciones puede hacer que el código sea más fácil de escribir y también más fácil de leer al eliminar la redundancia.

Mucha gente sintió que sabía cuál era la filosofía de diseño de Python y que esta propuesta no seguía los principios de diseño de Python. Otro problema con la propuesta fue algo autoinfligido por los autores de la propuesta. Las primeras versiones tuvieron serios problemas. Entonces, esos problemas se convirtieron en la razón para que la gente, incluso gente que simpatizaba con la idea básica, votara en contra de esta versión particular de la propuesta. Es un cambio sintáctico menor. No tiene nada de radical. 

: ¿En qué versión de Python estará esta función?

van Rossum: Estará en Python 3.8, [que saldrá] en un año y medio.

: ¿Habrá otro BDFL? ¿Cuál será el modelo de gobernanza para Python en el futuro?

van Rossum: Desafortunadamente, no puedo decirle eso porque le di al grupo principal de desarrolladores (unas 100 o 200 personas que han comprometido derechos o en el pasado reciente tenían derechos comprometidos) la tarea de averiguar cuál será el nuevo modelo de gobernanza y qué personas estará a cargo. E inmediatamente comenzaron a abordar ese problema mientras abordan cualquier otro problema en el mundo de Python, que es con una larga discusión en la que las diferentes partes no pueden llegar a un acuerdo de inmediato.

La única buena noticia que tengo en este momento es que acordaron, creo que estuvieron de acuerdo, en un calendario para llegar a una conclusión aquí. La fecha límite para esas propuestas es el 1 de octubre de 2018. Luego, creo, para el 1 de noviembre de 2018, están comprometidos a haber seleccionado una propuesta para una estructura de gobierno. Luego, para el 1 de enero de 2019, están comprometidos a haber elegido o designado o como dice su documento de gobierno, a las personas que estarán a cargo.

Si una de las propuestas es que va a haber un solo BDFL, esa propuesta debería estar redactada en detalle, como cómo se selecciona el BDFL y cuánto tiempo permanece la persona a cargo y cómo se le puede acusar y todo que, para el 1 de octubre, tal vez para el 1 de enero, se nombre a una persona real.

: ¿Quiénes son algunas de las personas involucradas en el desarrollo de Python?

van Rossum: Hay varios desarrolladores centrales que son más vocales que otros. Uno de los tipos más agradables con una trayectoria muy larga es Brett Cannon. Otra persona que ha sido un mentor para mí es un tipo llamado Tim Peters. También es el autor de "The Zen of Python", que es un conjunto informal de pautas para el desarrollo de Python. Barry Warsaw también es uno de los desarrolladores principales.

: ¿Cuál será su participación en el proyecto en el futuro? 

van Rossum: Asumiré el papel de colaborador habitual o desarrollador central habitual. De vez en cuando escribiré algún código y revisaré el código. Trataré de centrarme en asesorar a los desarrolladores principales, especialmente a los nuevos desarrolladores principales, especialmente a mujeres y minorías porque la diversidad en el grupo de desarrolladores principales es uno de mis objetivos.

: ¿Le preocupa que su partida como BDFL pueda asustar a algunos devotos de Python?

van Rossum: No lo creo. Python tiene una comunidad muy saludable. El equipo central tiene una dinámica muy sana. No me habría resignado si hubiera pensado que no superarían esto y serían capaces de guiar el idioma hacia adelante en las próximas décadas. Yo diría que este es un pequeño contratiempo a pesar de las apariencias, y esperamos lanzamientos futuros muy exitosos y una evolución gradual adecuada del proceso de desarrollo.

: ¿Cómo ha evolucionado el proceso de desarrollo de Python en los últimos años? ¿Cómo ve su evolución en el futuro?

van Rossum: El lenguaje obviamente cambia. Agregamos algunas características nuevas al idioma, agregamos algunas características nuevas a la biblioteca. Lo más importante que ha cambiado es probablemente la popularidad del idioma. Hasta hace quizás cinco años, Python se sentía como un jugador bastante secundario.

Desde entonces, probablemente debido principalmente a la increíble popularidad de la ciencia de datos y Python como la herramienta principal para eso, la presión sobre los desarrolladores centrales para tomar decisiones perfectas podría haber aumentado, pero la forma en que se hacen las cosas en general, la forma en que desarrollamos y la forma en que publicamos el idioma ha sido muy estable.

Tenemos administradores de versiones. Los lanzamientos tienen una diferencia de aproximadamente un año y medio para los lanzamientos importantes. Para las versiones de corrección de errores, se realizan entre unos meses y quizás tres cuartos de año a medida que surge la necesidad.

Tenemos el proceso de propuestas de mejora de Python muy estable. Quizás la forma en que las PEP se convierten en puntos de mayor desacuerdo ha cambiado un poco con el aumento de las noticias en las redes sociales, pero en general, aparte de cambiar de Mercurial a Git hace unos años, ha sido un proceso muy estable y no hay nada particularmente malo en ello. eso.