Buscar

Aprender a programar


 
 Old 13 mar 2006, 16:51   #1 (permalink)  
Miembro activo
 
Avatar de vuelve usuario s-o-f-t-o-n-i-c
 
Registrado: enero 2005
Ubicación: EN TU OJOS
Mensajes: 2.080

Predeterminado Aprender a programar

Esta es, por supuesto, la habilidad fundamental del hacker. Si no conoces ningún lenguaje de programacion, recomiendo empezar con Python. Es limpio, bien documentado, y relativamente fácil para novatos. A pesar de ser un buen primer lenguaje, no es un juguete; es muy poderoso, flexible y se adapta bien a grandes proyectos. He escrito un detallado análisis de Python. Hay disponibles buenos tutoriales en el sitio web de Python.

Java es tambien un buen lenguaje para iniciarse en la programación. Es más difícil que Python, pero produce código más rápido que Python. Creo que es un buen segundo lenguaje para aprender.

Pero no creas que podrás ser un hacker, siquiera un programador, si solo conoces un único lenguaje —debes aprender cómo pensar en los problemas de programación de una manera general, independiente de cualquier lenguaje. Para ser un hacker de verdad, precisas llegar al punto en el cual aprendas un lenguaje nuevo en días, relacionando lo que está en el manual con lo que ya sabe de antes. Esto significa que debes aprender varios lenguajes muy diferentes entre sí.

Si deseas meterte seriamente en programación, tendrás que aprender C, la base de Unix. C++ es muy parecido a C; si conoces uno, aprender el otro no te resultará difícil. Sin embargo, ninguno de ellos es bueno para aprender a programar. Y hoy día, cuanto más puedas evitar programar en C, mas productivo serás.

C es muy eficiente, y trabaja bien con los recursos de las maquinas. Desafortunadamente, C obtiene su eficiencia a base de mucho manejo a bajo nivel de los recursos (como la memoria) a mano. Todo esa programación a bajo nivel es muy compleja y propensa a errores, y tendrás que dedicar gran cantidad de tiempo a la depuración de los programas. Con las máquinas de hoy, tan poderosas, esto ya no es tan necesario —es más inteligente usar un lenguaje que use el tiempo de máquina menos eficientemente, pero en cambio use tu tiempo más eficientemente. O sea, Python.

Otros lenguajes de particular importancia para los hackers son Perl y LISP. Perl vale la pena aprenderlo por razones prácticas: es amplísimamente usado por páginas web dinámicas y por sistemas de administración, así que incluso si nunca has escrito en Perl, deberías aprender a leerlo. Mucha gente usa Perl en la forma que yo sugiero usar Python, para evitar la programacion en C en trabajos que no requieran la eficiencia de C. Necesitarás ser capaz de entenderlo.

Vale la pena aprender LISP por una razón diferente — La profunda e iluminadora experiencia que obtendrás cuando finalmente lo logres te hará ser mejor programador el resto de tus días, incluso si no usas LISP mucho. (Puedes obtener fácilmente algo de primera experiencia con LISP escribiendo y modificando los modos de edición del editor Emacs.)

Lo mejor hoy día es aprender estos cinco (Python, Java, C/C++, Perl y LISP). Además de ser estos lenguajes los mas importantes en el hacking, representan muy diversas formas de aproximarse a la programación, y cada uno te educará de diferentes maneras.

No puedo dar instrucciones completas en este documento de cómo puedes aprender a programar —es una habilidad compleja. Pero puedo adelantarte que los libros y los cursos no servirán (muchos, tal vez la mayoría de los mejores hackers, son autodidactas). Puedes aprender las características de los lenguajes —partes de conocimiento— de libros, pero el verdadero conocimiento lo adquieres en la vida real aplicando lo que ya sabes. Lo que sí servirá es a) leer código y b) escribir código.

El aprendizaje de la programación es como aprender a escribir bien en lenguaje natural. La mejor manera de aprender es leer algo de las cosas escritas por los maestros del estilo, luego escribir algunas cosas tú mismo, leer mucho más, escribir un poco más... y repetir esto hasta que lo que escribes empieza a mostrar la clase de fuerza y economía que aprecias en tus modelos.

Antes era difícil encontrar código de buena calidad para leer, porque había pocos programas de cierta magnitud disponibles en código fuente de tal manera que los hackers noveles pudieran meterles mano. Esta situación ha cambiado drásticamente: software de fuente abierta, herramientas de programación libres y sistemas operativos libres (todo ello hecho por hackers) están ampliamente disponibles en la actualidad. Lo que me lleva elegantemente a nuestro siguiente tema...



Eso lo saque de un manual de hackers

CATALUNYA
Is Not Spain
o Non è La Spagna

Το Catalunya δεν είναι Ισπανία
copyright



Linux Registered User #454510


equisdé
vuelve usuario s-o-f-t-o-n-i-c is offline   Citar y responder
 
 Old 13 mar 2006, 20:29   #2 (permalink)  
Miembro activo
 
Avatar de Lunatik
 
Registrado: febrero 2005
Ubicación: en el piso
Mensajes: 140

Predeterminado Re: Aprender a programar

el año pasado tube una asigantura de programacion en C, la primera vez en mi vida que veia programación, y realmente es muy util y muy potente para cualquiera que controle un poco-bastante,jeje
Buen tema, es muy interesante esto de la programacion

Yo confio en mi Hundix, P4 3GH 768 MB RAM
Lunatik is offline   Citar y responder
 
 Old 14 mar 2006, 09:26   #3 (permalink)  
Miembro activo
 
Avatar de wizard full power
 
Registrado: julio 2004
Ubicación: K-Pax
Mensajes: 287

Predeterminado Re: Aprender a programar

Pues ese manual para aprender a ser programador (¿equiparado con el término "hacker"???) está del todo equivocado. Desconfía de la página de la que lo sacaste porque denota poca seriedad y profesionalidad.
Para ser programador (y no hacker), se ha de empezar sin codificar, esto es, aprendiendo a entender los caminos que un problema posee, sabiendo estructurarlo en pseudolenguaje, y -en definitiva- sabiendo aplicar la lógica. Cuando ya dominemos en buen grado la presteza y la locuacidad para aplicar nuestra mente sobre la búsqueda de la solución, entonces y solo entonces se debe a empezar a codificar. Y es recomendable hacerlo con un lenguaje estructurado (creo que esto ya se dijo anteriormente en otras ramas), dónde muchos programadores te recomendarán el C++.

Y por último, por favor, no más post sobre hackers y tonterías de esa índole. Un hacker no es alguien digno de ser elogiado, y sinceramente te digo que es más difícil crear una aplicación robusta de gestión con conexiones remotas (incluso a satélites), que crear un virus, que a fin de cuentas su único misterio reside en dar con una vulnerabilidad. Así que seamos realistas, y no pongamos en un altar a un pelele llamado hacker, sino a quien está sobre él, al programador.

Editado por wizard full power en 14 mar 2006 a las 16:38.

El dulce tierno de tu boca...
Un suspiro...
Tú... tu último llanto en mi hombro...
La maraña roja nos embadurnaba el cuerpo abatido,
la piel se nos tersó entre jirones afilados,
y tu lazo se desnudó ante mis pupilas de dolor.
wizard full power is offline   Citar y responder
 
 Old 14 mar 2006, 16:03   #4 (permalink)  
Moderador
 
Avatar de the_ma3x
 
Registrado: febrero 2005
Ubicación: México
Mensajes: 4.331

Predeterminado Re: Aprender a programar

Amén Wizard...

No hay más que agregar...

Saludines

Every wall is a door. Ralph Waldo Emerson
the_ma3x is offline   Citar y responder

« restaurar imagen disco | problemas con la secuencia de comandos »

Herramientas
Estilo


 

Tema Iniciado por Foro Respuestas Último mensaje
¿Como empezar a programar? Balthor Programación 53 09 nov 2011 20:06
Aprendr a programar en Basic wernerlucas12 Programación 8 04 ene 2006 21:21
quiero aprender algo de ingles antoniott Software 3 28 jun 2005 17:16
mejor programa para aprender ingles amdk Software 3 27 abr 2005 13:23
programa para aprender mecanografia gratuito crgijon Software 8 13 mar 2005 13:19



Buscar