sábado, 12 de marzo de 2016

Reflections on Trusting Trust

Al momento de realizar algún proyecto que requiera de cierto tipo de trabajo relacionado con la programación, muchas veces, ya sea por la cercanía de la fecha límite o por alguna otra razón, la parte de programación no se revisa de manera detallada o con la precaución necesaria, por lo que pueden llegar a generarse diversos errores de varios tipos; éstos pueden ser, desde errores sencillos hasta errores que tengan que ver con la seguridad de la información.

En el discurso de Ken Thompson “Reflections of Trusting Trust”, de 1983, se muestra una visión de cómo los programadores y/o escritores de código realmente no revisan sus trabajos como debería, puesto que revisan la parte del código, pero dejan de lado la parte de la compilación, elemento muy importante al trabajar con programas, ya que muchas cosas maliciosas pueden ser introducidas mediante errores y detalles no verificados de la compilación.

Para demostrar de una mejor manera esta situación, Ken Thompson muestra y explica un ejemplo en el que toma un código que lee y, posteriormente, se imprime a sí mismo, pero con ciertos errores, en otras palabras, se dice que el código se recompila con algunas fallas incluidas, de manera intencional. En este ejemplo se ve como la acción se realiza con el lenguaje C, pero Thompson afirma que puede ser con cualquier otro lenguaje o sistema.

Si nos ponemos a pensar un poquito, si esta acción “maliciosa” la pudo hacer el propio autor del código, eso significa que las personas malvadas, hackers, o como quieran llamarles, que se encuentran allá afuera, también pueden realizar estas acciones y pueden llegar a causar bastante daño. Es por eso que siempre es recomendable, no solo confiar en nuestro código, sino que también se debe revisar su compilación y todos aquellos detalles que puedan darle acceso a todas esas personas cuyas intenciones no son del todo buenas.

REFERENCIAS:


·        Thompson, K. (1983). Reflections on trusting trust. ACM Turing Award Lectures, 1-3. Retrieved March 12, 2016, from http://webcem01.cem.itesm.mx:8005/s201611/tc2025/trusting_trust.pdf   

domingo, 6 de marzo de 2016

Code Rush



El documental Code Rush, nos relata cómo fueron las vidas de los integrantes de la compañía Netscape alrededor de 1998 en Silicon Valley. En esta proyección claramente se ve puede apreciar el proceso realizado para sacar el código de Mozilla para los usuarios antes de una fecha dada (31 de marzo de 1998 a las 10:00 horas).   ..

Los ingenieros de Netscape, realmente sufren un gran impacto en sus vidas con el lanzamiento del código de Mozilla, ¿y quién no?, puesto que lanzar un código tan importante y de tal magnitud e impacto no es tarea fácil. Muchos de nosotros, como programadores, entramos en pánico cuando nuestros programas muestran algún error o “bug”, por lo que el caos en el que se encontraban en Netscape ha de haber sido desgastante al saber que el código contenía muchos de estos errores. A esto, agreguemos que la fecha de entrega estaba muy próxima; es admirable el trabajo que hicieron estas personas.

A lo largo del documental, se muestra mucho contenido acerca del proceso técnico del proyecto; no obstante, en mi opinión, siento que muestran muy poco acerca de lo que hay detrás del trabajo, la vida personal de cada uno de los integrantes; ya que, no todo es felicidad y trabajo, pues varios de los ingenieros tienen una familia, una casa, una vida, cosas que tuvieron que dejar de lado a consecuencia de su trabajo. De acuerdo a los testimonios, muchos de ellos no llegaban a sus casas a dormir, o llegaban y no disfrutaban tiempo con sus esposas e hijos, todo giraba alrededor de su trabajo.

Si reflexionamos un poco, podemos darnos cuenta de que hoy en día existen muchos proyectos de software de los que hacemos uso y que cada cierto periodo de tiempo, salen nuevas versiones y actualizaciones, pero muchas veces no apreciamos lo que hay detrás de estos, solo vemos la parte que nos corresponde como usuarios, más no nos ponemos a pensar en los sucesos que ocurrieron para que dicho producto llegara a nuestras manos.

Yo creo que, aparte de mostrarnos el proceso del lanzamiento el código de Mozilla, este documental, de cierta forma, también nos enseña a apreciar más los productos que salen al mercado, puesto que no sabemos que sucedió durante su elaboración y que problemas hubo.

REFERENCIAS:

·        Winton, D. (Director). (2000). Code Rush [Motion picture]. Estados Unidos. Recuperado de https://www.youtube.com/watch?v=4Q7FTjhvZ7Y