El post que buscas se encuentra eliminado, pero este también te puede interesar

Cómo empezar a aprender programación

Cómo empezar a aprender programación


Cómo empezar a aprender programación: consejos y recursos para hacerlo de adulto


consejos


Si el otro día hablábamos de cómo introducir a los niños en el mundo de la programación, hoy vamos a plantear un artículo similar pero con un enfoque diferente. Como aprender programación en verano siendo adultos.

La programación, una vez más, como herramienta que ayuda a estructurar la mente, a plantear nuevas formas de solucionar problemas de la vida diaria o, por qué no, a enseñar a tu hijo/a a dar sus primeros pasos en este mundo. La programación también puede ser un excelente tema que aprender durante este verano, y hoy te vamos a dar algunas pistas y trucos para ponerte con ello.


No queremos que te conviertas en profesional

En primer lugar debemos hacer un pequeño disclaimer: no buscamos convertirnos en programadores profesionales, nunca, bajo ningún concepto. El que quiera encontrar su camino laboral como programador no encontrará aquí el post definitivo.

Hoy ahondaremos en cómo dar los primeros pasos en la programación como afición, aprovechando el punto divertido que tiene y las consecuencias de la fase de aprendizaje que son compartidas con las que ya mencionamos cuando hablábamos de la programación educativa. Se mejoran ciertas aptitudes tales como la resolución de problemas, el pensamiento lógico-matemático y, más en general, todo lo relacionado con el pensamiento computacional.


recursos


Puedes empezar igual que los niños

Nos referimos a los programas y la metodología. Scratch como herramienta principal y que te proporcionará una base sobre lo que es un algoritmo y la forma como "piensan" los ordenadores. Si no tienes conocimiento alguno sobre programación, debes empezar primero en los tutoriales de Code.org, para así aprender las nociones básicas.

Una vez las hayas obtenido Scratch es una muy buena segunda-opción, dada la variedad de programas y proyectos que nos permitirá crear. Aquí debemos activar nuestra mente para iniciar nuevas ideas que tengamos en la cabeza y, si es posible, añadir incrementos iterativos. Por ejemplo, a un simple Pong podemos añadirle marcadores, tiempos de duración de la partida, ranking, estadísticas, nuevos movimientos especiales, objetos de bonus... y será un Pong con esteroides, perfecto para aprender.


como empezar


Si ya dominas Scratch con cierta soltura podrás abandonar los lenguajes 'de juguete' y pisar a fondo hacia lenguajes más serios y formales, de tipo texto. Opciones como Python que es para muchos el gran entorno 'real' después de los lenguajes visuales y de colores, o Arduino, sobre el que hablaremos específicamente más adelante al ser una opción genial.

Arduino: buscando la utilidad 'real' con robótica

Estamos acostumbrados a programar frente a una pantalla, y a que los resultados de esta programación aparezcan en el terminal. Con Arduino las cosas cambian, y precisamente uno de sus grandes atractivos es poder sacar resultados 'reales' a partir de la programación en pantalla.

Crear robots con Arduino es algo más complejo que hacerlo con LEGO MindStorms (si tuviese que recomendar un kit de robótica que no estuviese relacionado con Arduino ese sería, sin duda, MindStorms), pero también mucho más económico y en el camino aprenderemos mucho más. En Arduino deberemos reiniciar nuestra cabeza y poner el contador a cero, ya que es un mundo separado que requerirá que nos informemos sobre el mundo de la electrónica, motores, sensores y posibilidades.




Arduino puede ser la mejor opción en la que pasar varios meses aprendiendo, tirando del hilo y evolucionando nuestras ideas. De un sencillo robot con ruedas podemos pasar a robots rastreadores, y luego a arañas. A medida que vayamos avanzando se irá abriendo el camino con el siguiente paso a realizar.

El horizonte, más lejano

Es algo obvio pero que muchas veces puede pasar inadvertido. Márcate metas, y estas metas deberán estar mucho más lejos que las que un niño/a se pone cuando aprende este campo.

Por ejemplo crear una impresora 3D con Arduino puede ser un interesante proyecto a largo plazo, y con él puedes tanto aprender cuestiones de hardware (componentes, drivers, compatibilidad) como software (toda la programación necesaria que rodea al hardware). Igualmente en Arduino hay robots extraordinariamente complejos:

Obviamente antes de llegar a tener un robot araña que interprete nuestras órdenes de voz es necesario 'aprobar' todas las fases anteriores: los robots rastreadores pueden ser un primer paso interesante, para luego ir creciendo a partir de ellos.

Con la programación más tradicional ocurre algo parecido: un adulto puede llegar a crear programas más complejos que los realizados por un niño, pero igualmente deberá ir evolucionando de forma progresiva, y paso a paso. Empezar con las bases de un lenguaje e ir evolucionando, creando tu propio software. Un interesante enfoque es crear software de gestión para uso propio, como pueden ser agendas de contactos, recetarios, etc. Son relativamente sencillos de implementar, completos y tienen una utilidad clara y específica.

Una vez hayas obtenido una cierta base de programación puedes ir a por opciones cuyos resultados son mucho más atractivos que el código directo. Por ejemplo Unity es una herramienta gratuita para uso personal de la que existen decenas de tutoriales muy sencillos de seguir y cuyos resultados son geniales, permitiendo sacar partido al lado creativo además del lógico-matemático.




¿Ideas? ¿Libros? ¿Tutoriales?

Internet es un gran aliado para aprender a programar, tengas la edad que tengas. Por ejemplo, aquí tienes una recopilación de 125 proyectos de programación que puedes empezar a realizar, desde ejercicios básicos como invertir una cadena de caracteres, contar vocales, comprobar si una palabra es palíndromo; hasta cosas más complejas como sistemas de gestión, sistemas de descarga, gestores de Telnet, pizarras 'blancas'... y mucho más. También tienen por aquí 49 ideas de juegos para 'clonar' y, de paso, aprender programación.

Sobre programación existe mucha literatura. Cientos y cientos de libros y manuales, con editoriales especializadas como O'Reilly y sus imprescindibles Head First. Son manuales típicamente caros, pero habitualmente son herramientas esenciales si lo que buscamos es un libro físico. O'Reilly también tiene los Cookbooks que abarcan mucho más conocimiento, también divididos en lenguajes.

Los recursos gratuitos también pueden ser importantes, en muchas ocasiones mejores que cualquier libro físico aunque nos costará dar con la tecla adecuada. Hablamos de guías y tutoriales como por ejemplo Learn Python, los de Codecademy (Python, JavaScript, HTML+CSS, PHP, Ruby) o el excelente curso de Khan Academy sobre ciencias de la computación. También hay webs especializadas que ofrecen algunos cursos gratuitos y otros de pago, pero que merecen mucho la pena: CodeSchool (Ruby, iOS, HTML+CSS) es un imprescindible. Si quieres más alternativas, en Quora tienen un hilo con decenas de estas otras opciones.


aprender programacion


Si vamos a por algo más visual podemos optar por videotutoriales en Youtube, que pueden servir perfectamente en las primeras fases del aprendizaje. Tutoriales, vídeos y primeros pasos en un lenguaje o una tecnología que podremos seguir rápidamente; por ejemplo uno para Scratch, unos cuantos para Python o cómo construir tu primer robot en Arduino.

Al final, como casi todo, aprender a programar es una cuestión de práctica. De probar, fallar, reorientar, solucionar, aprender y repetir todo lo anterior. Y así indefinidamente.

Es fundamental ir marcándose metas para ir creciendo y evolucionando, y no quedarse anclado. Internet es un apoyo imprescindible, donde podremos encontrar prácticamente cualquier respuesta que busquemos. Google nos sacará de muchos apuros con una búsqueda correcta; si por ejemplo tenemos una duda sobre strings en Python podemos encontrar excelentes guías de forma rápida e indolora.

Por último, y aunque inicialmente habíamos planteado un aprendizaje individual, las comunidades de 'amigos' de la programación existen. Tanto en el mundo físico, con grupos que periódicamente ponen en marcha iniciativas como charlas o clases específicas sobre ciertos lenguajes o tecnologías, como por supuesto en el mundo digital.


Cómo empezar a aprender programación


En Internet encontramos foros, redes sociales, grupos de noticias, webs especializadas y de todo. Imprescindible la comunidad de StackOverflown para resolver dudas y problemas; si lo que quieres es empezar desde cero en Reddit encontramos el /r/learnprogramming) donde incluso tienen un Wiki muy completo con una sección de 'cómo empezar'. Como siempre, los comentarios están abiertos para que podáis añadir y recomendar cualquier comunidad que pueda servir de ayuda para aprender a programar.


consejos

Comentarios Destacados

XeviousBR +7
Soy un programador de 30 años y sé más de 20 lenguajes de programación aprendidos en la mayoría de manera autodidacta.
Me he dado clase de programación y estoy ahora asistir a la universidad en la zona.
Creo que el principal para aprender a programar es pensar como un programador.
Por esto, mientras yo estaba enseñando las primeras clases que estaba dando instrucciones a los estudiantes para que piensen en detalle acerca de cómo hacer algo que por lo general siempre lo hacen.
Por ejemplo, cómo hacer un café con leche.
¿Cómo explican un robot cómo hacerlo.
Si, después de que los estudiantes me hablan algunos pasos que pensaban que sería el sufuciente para un robot para hacer la tarea.
Me explicó que cada detalle tenía que ser diseñado, incluso el más pequeño.
Y les di más tareas mentales hasta que pudieran pensar en la cantidad de datos necesarios.
A partir de este punto que ya estaban pensando en cómo los desarrolladores pesar de no haber escrito una sola línea.
Pero era más fácil este punto.
Me he dado cuenta de amigos que decidieron aprender a programar o incluso compañeros de universidad, recibieron instrucciones sobre cómo proceder, cómo ejecutar los comandos en el idioma, pero carecen de la forma de pensar como un programador.
Y esto significa que costaría aprender, a menudo se perdieron, sin saber cómo empezar.
Así que ese es mi consejo, antes de aprender un idioma que es pensar como un programador.
octavio110 +1
WEnas,..... Entiendo lo que tratas de decir, pero me pregunto o te pregunto a ti si existen libros que te ayuden/estimulen la forma de pensar como un programador sin la necesidad de tener que agarrar o practicar en un programa directamente (PHP-Java-CC++-etcs), repito la pregunta; que texto/bibliografía recomiendas o sugieres que lo lean?
goberman100
Realmente Gracias !
XeviousBR -1
@octavio110 Sí, pero en este caso, entonces se aprende sistemas de análisis.

8 comentarios - Cómo empezar a aprender programación

tucuh
Yo quiero programar una web y llenarme de guita igual que herni
SoyDarkDamBanneD +2
herni no programo nada , compro y se lleno de guita
XeviousBR +7
Soy un programador de 30 años y sé más de 20 lenguajes de programación aprendidos en la mayoría de manera autodidacta.
Me he dado clase de programación y estoy ahora asistir a la universidad en la zona.
Creo que el principal para aprender a programar es pensar como un programador.
Por esto, mientras yo estaba enseñando las primeras clases que estaba dando instrucciones a los estudiantes para que piensen en detalle acerca de cómo hacer algo que por lo general siempre lo hacen.
Por ejemplo, cómo hacer un café con leche.
¿Cómo explican un robot cómo hacerlo.
Si, después de que los estudiantes me hablan algunos pasos que pensaban que sería el sufuciente para un robot para hacer la tarea.
Me explicó que cada detalle tenía que ser diseñado, incluso el más pequeño.
Y les di más tareas mentales hasta que pudieran pensar en la cantidad de datos necesarios.
A partir de este punto que ya estaban pensando en cómo los desarrolladores pesar de no haber escrito una sola línea.
Pero era más fácil este punto.
Me he dado cuenta de amigos que decidieron aprender a programar o incluso compañeros de universidad, recibieron instrucciones sobre cómo proceder, cómo ejecutar los comandos en el idioma, pero carecen de la forma de pensar como un programador.
Y esto significa que costaría aprender, a menudo se perdieron, sin saber cómo empezar.
Así que ese es mi consejo, antes de aprender un idioma que es pensar como un programador.
octavio110 +1
WEnas,..... Entiendo lo que tratas de decir, pero me pregunto o te pregunto a ti si existen libros que te ayuden/estimulen la forma de pensar como un programador sin la necesidad de tener que agarrar o practicar en un programa directamente (PHP-Java-CC++-etcs), repito la pregunta; que texto/bibliografía recomiendas o sugieres que lo lean?
goberman100
Realmente Gracias !
XeviousBR -1
@octavio110 Sí, pero en este caso, entonces se aprende sistemas de análisis.