ivan lópez on Sun, 22 Feb 2004 22:43:38 +0100 (CET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
[nettime-lat] entrevista a larry wall |
estimada gente nettime-lat, les mando una entrevista que hice por teléfono una mañana de la semana pasada con larry wall. larry había venido al df a dar la conferencia plenaria del congreso de software libre consol (www.consol.org.mx). la conferencia fue, como era de esperarse, un ensayo cómico (chequen por ejemplo www.perl.com/pub/a/2003/07/16/soto2003.html), a pesar de en el fondo haber sido sólo un reporte técnico sobre el desarrollo de perl 6. y bueno, para los que no lo conozcan, larry wall es el programador y lingüista que diseñó el factotumesco lenguaje de programación perl. muchos saludos, ivan ################################### ################################### iv. leí que te consideras un "artista cultural". ¿cómo describirías el trabajo cultural que gente como tú o un programador lleva a cabo? lw. estoy acostumbrado a responder preguntas técnicas así que tendré que reflexionar un poco la respuesta. mmh. los programadores generalmente intentan cambiar la cultura proporcionándole a la gente tecnología que le permita hacer lo que quiera. frecuentemente hasta se dan cuenta de que tienen que darles a los usuarios de software maneras de compartir entre sí. pero es bastante estéril que los usuarios sólo compartan entre sí en un plano meramente tecnológico. eso no crea un entusiasmo por compartir. alguien disfruta compartiendo sólo cuando se ha dado cuenta de que lo está haciendo con gente real. iv. ¿cómo podemos generar ese entusiasmo? lw. bueno, yo intento estimular a la gente con mi propio ejemplo. si doy una plática técnica, hago el esfuerzo de que esta sea interesante también a otros niveles. invito a la gente a formar comunidades. comunidades en las que puedan conocerse los unos a los otros. de esa manera compartir tecnológicamente es algo que surge de manera natural. pero es importante que sean también capaces de interactuar en un plano social. algo que a la gente le gusta hacer en compañía de otras personas es divertirse. por tanto fomento la idea de que en la comunidad perl está bien reír, contar chistes, burlarte de ti mismo o escribir un programa extravagante meramente porque es divertido hacerlo. la gente hace todo eso y el lenguaje en sí está diseñado para fomentar su creatividad. nunca decimos: "tienes que hacer las cosas de esta y sólo de esta manera". intentamos darle a la gente suficiente libertad de expresión; al grado que se pueden hasta escribir poemas en perl. iv. ¿qué piensas de la gente que escribe poemas en perl? lw. yo empecé. yo escribí el primer poema perl. iv. ¿qué dice? lw. el primer poema perl fue un haiku y ya ni siquiera corre: print STDOUT q Just another Perl hacker, unless $spring se escribió con una forma de quote que usaba una nueva línea para declarar el quote. de hecho es algo que sólo corre en perl temprano. yo rompí mi propio poema. en el fondo es la idea de que un lenguaje es algo a lo que una cultura le da distintos usos. y que sólo uno de ellos es decirle a la computadora qué hacer. un programa también lo puedes usar para comunicarte con otros programadores. aún cuando estás hablando con la computadora, puedes optimizar tu programa de muchas maneras. puedes optimizar su velocidad, su concisión, su estilo, su mantenimiento o el tiempo que te tardas en escribirlo. hay factores externos al lenguaje en sí, razones por las que podrías preferir que tu programa apuntara en una u otra dirección. y, como lingüista, pienso que un lenguaje debe tener esa capacidad de adaptación. iv. ¿cómo se ve la comunidad perl comparada con las comunidades de otros lenguajes? lw. indudablemente estamos en un extremo del espectro. en inglés tenemos una expresión, no sé si la tengan en español: "to raise the bar". es una metáfora, me imagino que de salto de altura. se refiere a lo que sucede cuando aumentas la altura de la barra. cuando logras hacer eso, tú y todos los demás tendrán que saltar aún más alto. en la comunidad perl intentamos hacer eso. queremos que en la comunidad perl y en la otras comunidades, la gente por un lado pueda divertirse aún más haciendo lo que hace, y por otro, le sea aún más fácil compartir. en el fondo es intentar sacar a las ciencias de la computación de un lugar en el que sólo las entienden los matemáticos y lograr que gente ordinaria pueda utilizarlas útilmente. iv. ¿para qué se ha usado perl? lw. se ha usado para todo tipo de cosas. inicialmente perl se diseñó para procesar strings y para "pegar con resistol" aplicaciones e interfaces que en principio no hubieran sido ideadas como para "ser pegadas". para eso es lo que el "resistol" es bueno. por eso perl se ha usado mucho en la red. porque la red es un combinación de, por ejemplo, procesar strings y pegar el resultado a bases de datos backend. perl también se ha vuelto una plataforma en la que se han desarrollado miles de módulos para hacer casi todo lo que se te ocurra. estos módulos son de código abierto así que la gente los re-usa, otra vez, para todo tipo de cosas. como el análisis matemático o, más recientemente y de una manera interesante y vasta, para la bioinformática. desde el principio, perl se diseñó con la idea en mente de que no tuviera límites arbitrarios. a perl no le importa qué largos son tus strings. no tienes que decirle: "mi string va a ser de este y sólo de este tamaño". en muchos de los lenguajes antiguos, tenías que hacer eso. de hecho, actualmente muchos de los problemas de seguridad se deben a los límites arbitrarios. declaras un buffer de cierto tamaño y alguien manda un string que lo sobrepasa. en lenguajes como c, es muy fácil que este bug aparezca en tu código. en perl, sin embargo, es casi imposible. si intentas hacer un string más largo, perl hace lo correcto y simplemente lo hace más largo. yo no esperaba que se usara perl en la red. de hecho lo diseñé para generación de reportes y para administración de sistemas. pero también sabía que una buena herramienta podría ser usada en cosas que a su autor jamás se le hubieran ocurrido. trate de diseñar perl de manera que otras personas pudieran usarlo no sólo como yo lo usaría. es una estrategia que parece haber funcionado muy bien hasta ahora y vamos a intentar hacer más de lo mismo en el futuro. iv. personalmente siento que, fuera de la comunidad de programadores, se recibe el software libre con demasiado optimismo. ¿qué piensas al respecto? lw. depende de dónde estés. creo que en gran parte del mundo, el código abierto va a funcionar muy bien. sin embargo creo que, qué raro, no le va rendir tantos beneficios a los estados unidos. iv. ¿por qué? lw. porque el gobierno de los estados unidos, más que otros gobiernos, escucha sobre todo a sus corporaciones. y a la mayoría de las corporaciones, el código abierto no les interesa mucho que digamos. al menos por ahora. quizá en el futuro se interesen. eso sería estupendo. de hecho hay algunas que ya se interesan. ibm y hp, por ejemplo, apoyan bastante al código abierto. sin embargo, hay compañías que luchan contra el código abierto y a las que les gustaría que simplemente desapareciera. si pudieran convencer al gobierno de aprobar leyes en su contra, lo harían. insisto, esto no va a ser muy fácil en los estados unidos. pienso que es fuera donde se va a avanzar más rápido en este frente. por eso me gusta venir a lugares como méxico, sudamérica, europa, japón... a hablar de código abierto y ver el entusiasmo. me motiva. iv. creo que son todas las preguntas. no sé si quieras añadir algo. lw. sólo una petición general para tus lectores: las computadores empezaron siendo una rama de las matemáticas. pero de veras tenemos que hacer de ellas una rama de las humanidades. de esa manera, todo mundo podrá empezar a utilizar las computadoras útilmente. _________________________________________________________________ MSN Fotos: la forma más fácil de compartir e imprimir fotos. http://photos.msn.es/support/worldwide.aspx _______________________________________________ Nettime-lat mailing list Nettime-lat@nettime.org http://amsterdam.nettime.org/cgi-bin/mailman/listinfo/nettime-lat