viernes, 25 de octubre de 2013

HACKER: Un antes y un despúes

Jefe de Policía: Espera un momento. ¿Estás diciéndome que este sujeto robó al banco 300 mil dólares, sin usar una sola arma, sin recurrir a la violencia y sin siquiera presentarse físicamente al banco y que además nadie supo del suceso hasta dos días después? ¿Eso me estás diciendo imberbe?

Asistente: Si, señor.

Jefe de Policía: ¡¿Y qué demonios es este tipo?! ¿Una especie de fantasma o un súper villano con poderes especiales?

Asistente: No, señor. Es un HACKER.
(Texto tomado del prólogo de “El sendero del Hacker” escrita por BlitzKrieg.)

Todavía recuerdo  aquellos años de adolescencia, siendo las 2 y pico de la madrugada cuando todavía permanecía frente al computador leyendo todo el contenido bajado desde el cyber caffe (No tenía internet en ese momento), tenía megas y megas de archivos en formatos .doc y .pdf donde leía la descripción y las hazañas de personas bajo el título de una sola palabra: HACKER.

Esta simple palabra compuesta por solo 5 letras, que juntas llevan en si mismas el valor del significa intrínseco que le atribuye poderes casi místicos, fueron el “gancho” para que me interesara enormemente el gran iceberg de la informática, leer acerca de Kevin Mitnick, Capitán Crunch, Steve Wozniak, Steve Jobs, entre otros, llenaban mi mente de toda la información posible para luego dejarla volar junto a la imaginación, lleno de entusiasmo, me ponía al trote de continuar leyendo e indagando, y como no, creo que ha sido el tema que a muchos también les trajo a este mundo. 

Estos grandes hackers informáticos creadores de las tecnologías que hoy en dia utilizamos, fueron siendo sustituidos por solo ejecutores que toma "la gran rueda inventada" y con el simple hecho de conocer lo que hacen, la implementan sin tener el conocimiento de la gran pregunta de todo genio: "¿Como lo hace?". 

En el sitio de Xombra, pueden encontrar un artículo que hace referencia a lo que era la época del Hacker de raíz, de aquel que nació en busca de las soluciones para los problemas más elementales, en esta publicación se realiza una comparativa de lo que era el Hacker que creaba soluciones al Script Kiddie que solo ejecuta de hoy en día.

Script Kiddies: los verdaderos hackers desaparecen

El título no apunta a los crackers que defacean sitios, y si no entendiste defacear o cracker no importa tampoco. Esto va más por el lado de la experiencia laboral y luego de charlar anoche con Arkhos sobre esto mismo me dieron ganas de pasarlo a un post.

La cuestión es así y lo pueden poner a prueba ustedes mismos, ¿cuantos de los que en este momento leen este post saben lo más mínimo sobre lo que implica que un post se lea en un monitor? es decir, ¿saben como funciona una PC? ¿un sistema operativo? ¿un programa? ¿una línea de código? toda esa cadena de información necesaria para entender el funcionamiento de tantas cosas juntas es MUCHA información, pero lo más básico de cada una ¿lo pueden comprender?

Tengo una visión distinta sobre la realidad de la tecnología que no me parece compatible con los teóricos de las nuevas generaciones, cuando se me dice que los "nativos digitales" comprenden todo distinto los veo más como burros que como seres avanzados que comprenden todo mejor: es mentira, no entienden como funcionan las cosas, sólo son usuarios finales de una capa externa de una abstracción tan lejana como incomprensible para ellos. Son Script Kiddies, no son hackers. De eso se trata este post, aunque seguramente la introducción no se entendió un cuerno.

Un hacker se mete en el código para entenderlo, un Script Kiddie copia, pega, modifica dos parámetros, ejecuta. La diferencia entre el primero y el segundo está en que uno comprende el porqué, el otro tan sólo ve el resultado, si falla busca otro código hecho por un hacker y repite el intento.

Algunos dirán "bah, pero esto es cosa de hackers, yo no hackeo sitios en mi día a día", no, errado, un hacker no es el que te vendieron en las películas, un hacker es alguien que hace que las cosas funcionen. Todos podríamos ser hackers, pongámosle otra palabra si quieren, a ver, cuando uno aprende a arreglar un motor del auto o al menos saber como se llama cada parte ya está haciendo un esfuerzo en comprender más allá de lo que necesita. 

Noten como la sociedad moderna nos va llevando cada vez más a no necesitarlo, pero no sólo eso, la industria quiere que no sepamos. En el caso del automóvil primero tenemos la obsolescencia programada, ya está todo hecho para durar 5 años, ¿por qué aquí todavía sabemos cambiar una bujía? porque hacemos que los autos nos duren más de 10. 

Si tirásemos el auto al quinto año (o antes) y nunca le reparamos nada (porque no se rompió) no tendríamos necesidad del taller mecánico. Por eso poco a poco los motores empezaron a venir "empaquetados" al punto de que no se puede meter mano en nada. 

Hoy en día en la mayoría de los autos nuevos hay una tapa que te impide acceder al motor, y en otros países donde se rompe si electrónicamente no se puede arreglar, se cambia por otro. Desaparece el "hacking" del auto (meter mano), se pasa al "script kiddie" (el taller que controla sólo electrónicamente) y terminamos sabiendo tan poco de eso que usamos que el hacking queda relegado a unos pocos que por hobbie arreglan autos antiguos. 

Bueno, en la industria del software pasa lo mismo y hasta peor. Pasa más que nada por la experiencia personal, si alguna vez tuviste que trabajar con programadores notás la diferencia entre generaciones de una forma muy sencilla, los "anticuados" son de entender el problema, los "nuevos" son de copypastear soluciones que googlearon. A mi me encanta el que googlea, pero si una vez googleado entiende que está copiando y usando es ideal. Pero no, no lo hacen. 

Copian, adaptan como pueden, sin entenderlo, te lo mandan como terminado. Miras el código y es una vergüenza ¿esto es programar? en la industria el hacker fue desapareciendo, la necesidad de más y más programadores hace que no sólo se paguen fortunas en algunos casos por los hackers, si no que sea imposible generar nuevos. Las carreras de sistemas no están orientadas a esto, educan script kiddies intencionalmente. 

La mayoría de los programadores JAVA que conozco son esto mismo, les inculcan patrones como si fuesen leyes, pero nunca se pusieron a pensar que el código estaba antes que el patrón, el patrón es tan sólo una guía, no una ley. 

Los de bases de datos ni hablar, nunca vieron el mundo real, en las facultades te dicen que hay que normalizar todo, en la realidad una base de datos perfectamente normalizada no puede manejar cantidades gigantes de datos, NO PUEDE, si no pregúntenle a todos los que se pasaron a bases planas para manejar datos de a millones, fíjense como funciona Twitter o Reddit que usan sistemas como Cassandra. 

Ahora un diseñador gráfico aprende a maquetar en HTML y se vende como generador de sites a full, mete un Wordpress, esa cáscara que hizo, la implementa a los codazos y se ve lindo, pero por dentro es un desastre (me tocó arreglar uno hace poco).

¡Nadie te programa algo a medida! o todos necesitan de un desconocido Framework porque no saben programar de cero nada, Google pasó de ser una referencia a su fuente de código, como si en vez de crear los ladrillos de la obra ellos mísmos deberían sí o sí depender de otro para hacerlos. No salen soluciones de ellos mísmos, sólo adaptan las existentes. Como si un guionista de cine tuviese que sí o sí depender de un libro y no pudiese crear algo propio... oh... un momento... ultimamente en Hollywood pasa eso La realidad está muy lejos de la escuela, cada día más, pero estos supuestos "nativos digitales" apenas conocen la capa superior. 

La informática fue sumando capas para hacerla más sencilla a los usuarios "básicos", esos que seguro nunca iban a aprender qué sucede dentro del motor porque no les es imprescindible, el problema es que de tantas capas intermedias los que supuestamente deberían saber quedaron en el mismo lugar de los que no iban a aprender un carajo. 

Estos "nativos" no tienen ganas de crear, no tienen ningún impulso para hacerlo, es más común que los veas navegando en la web que escribiendo código, a veces hasta son buenos para repetir mecánicamente, por ejemplo armando una clase, un prototipo, una estructura, pero no están sabiendo rellenarla, porque si hay "vagos-nenes-de-mamá" en el trabajo digital, son ellos, todo servido en bandeja, nada de laburo. 

Es como cuando te enseñan a sumar, restar, multiplicar, dividir, si aprendiste con calculadora estás jodido, y eso es lo que se les hace a los nenes hoy en día en la escuela... hoy en día, hace varias décadas. ¿calculadora en la primaria? tomate todo el tiempo del mundo en multiplicar, nadie te apura, no es necesario el resultado, es necesario el proceso para que entiendas el resultado. 

Esta idiotez institucionalizada a veces creo que proviene de algún plan macabro, en otra época la "Schule" del pueblo estaba separada de la élite, me refiero a Prusia, siglo XIX, así lograron educar a la masa, pero con el tiempo la masa se volvió instruida, los genios empezaron a aparecer en el pueblo y no en la élite.

Bueno, a veces con la tecnología y la educación en general creo que se está optando por una regresión, volvamos a mantenerlos bien brutitos, que sólo conozcan la capa superior pero no la gran cebolla que les daría el conocimiento para entenderlo todo. 

Es como si el mecánico te diga "ah, yo esa tapa no la abro, no se que hay adentro, yo conecto estos cablecitos y si me dicen que anda, anda bien" ¿y saben que? eso ya está sucediendo, tanto en el taller mecánico como en nuestro mundillo informático. Nadie se engrasa los dedos, menos los mal llamados "nativos digitales".

Fuente Original:
Fabio.com.ar

 


No hay comentarios:

Publicar un comentario