• Trinchera Cultural

¡Hola Mundo! Quiero aprender a programar

Actualizado: 25 de feb de 2019


El presente artículo va dedicado a todos aquellos que os hayáis planteado alguna vez aprender a programar y que posiblemente os hayáis sentido algo perdidos en el intento. Intentaré desgranar las claves de este tema de una forma sincera, sin paños calientes, pensando en aquellos consejos y advertencias que hoy en día creo que me hubieran facilitado el camino.


¿Cómo puedo aprender a programar? Hace unos días, una persona de 16 años me hizo esta pregunta. Y fue así como empezó a rondarme la idea de escribir un artículo sobre ello. Y es que la pregunta, a priori sencilla, es más compleja de lo que parece...


NOTA: A lo largo del artículo se tocarán por encima algunos temas. Se trata de un texto muy introductorio, que iremos ampliando con sucesivas entregas.


Comencemos, pues:

PASO Nº 1

SEPARANDO EL GRANO DE LA PAJA


Es innegable que aprender a programar está de moda, pero también lo es que interesa que esté de moda, y mucho. Avanzamos hacia la cuarta revolución industrial, una sociedad altamente digitalizada que en poco tiempo precisará un elevado número de profesionales tecnológicos, mientras que a su vez presenciamos una caída en picado de las matriculaciones en las carreras STEM [1].


"La caída acumulada en el último decenio de las matrículas en las ramas de Ingeniería y Arquitectura, y en Ciencias, ha sido del 25%"

Muchos son los esfuerzos que se están invirtiendo en atraer a los jóvenes (y a los no tan jóvenes) hacia el área tecnológica. Lo que tradicionalmente era ese "lado oscuro", al cual muy poca gente quería pertenecer, una profesión carente de glamour, repleta de sociópatas que se pasan las tardes tecleando en el garaje de sus casas rodeados de restos de pizza, pasa a ser ahora lo cool, lo hipster, lo atractivo. Sin embargo, NADA DE ESTO ES CASUALIDAD.


Esta imagen no es muy alentadora para iniciarse en el mundo de la programación

En definitiva, de repente existe el temor de que esos futuros puestos como desarrolladores de software no puedan ser cubiertos y es entonces cuando se alinean los astros y salen a la palestra expertos, gurús, "visionarios multidisciplinares" y un sinfín de advenedizos que encuentran en esta nueva moda una manera de vender humo y confundir aún más al personal.

PASO Nº 2

TOC TOC, ¿ALGÚN INFORMÁTICO EN LA SALA?


Antes de empezar a vender las bondades de aprender a programar (que, por cierto, son muchas) es necesario que realicemos un ejercicio de sinceridad y pensemos: ¿por qué queremos aprender a programar?


- Porque me gusta jugar a videojuegos...

- Porque se me da bien la ofimática y el uso de internet...

- Porque no me veo hincando los codos y programar me parece una salida fácil y divertida..

- Porque está de moda..

- PORQUE ME GUSTA RESOLVER PROBLEMAS


Si has elegido la última opción ¡felicidades! Eres un candidato perfecto para iniciarte en el mundo de la programación. Pero en el caso de haber elegido alguna de las anteriores, deberás plantearte si realmente aprender a programar te llevará a lograr tus objetivos o, por el contrario, has de enfocar tu camino por otro lado.


NOTA: Existe una opción más, y es que te toque aprender porque no te queda otra por motivos de trabajo. En ese caso, no te preocupes, sigue leyendo y encontrarás información muy interesante para ti.

PASO Nº 3

¿QUÉ NECESITO?


Que no te vendan la moto. Programar, como cualquier otra disciplina, exige un esfuerzo y compromiso por nuestra parte. Con todo esto no quiero desanimarte, pero sí considero que es necesario aportar un enfoque realista y sincero. Pero te confesaré algo: programar puede llegar a ser una tarea extremadamente reconfortante y divertida.



Para aprender a programar necesitarás 5 cosas:


1. MUCHA PACIENCIA. No te voy a engañar, programar es una tarea sumamente analítica y a menudo requerirás de fuertes dosis de paciencia ante las diferentes vicisitudes que pueden darse a la hora de resolver un problema. Si eres de los que tiran la toalla en cuanto algo se atasca, siento decirte que no te sentirás muy cómodo en este mundillo.


2. INGLÉS. No es necesario que seas bilingüe, pero sí deberás ser solvente a la hora de tratar con textos en dicho idioma, o incluso en la expresión escrita. Documentación, libros, comunidades y foros de soporte online, etc.; lo más probable es que estén en inglés, con lo que no disponer de conocimientos de dicho idioma puede suponer una gran limitación.


3. PENSAMIENTO ANALÍTICO. Ten en cuenta una cosa: no es lo mismo programar que programar bien. Puede parecer una tontería, pero desde mi punto de vista, es muy positivo aprender a programar de una manera eficiente y ordenada desde el principio. Un programador "bien educado" tiene mayores probabilidades de éxito. Deberás aprender a manejarte con todo tipo de datos y problemas, ser capaz de entender la algoritmia y para cada caso existirá una aproximación diferente. Si te dan grimilla las matemáticas y eres de los que se le ponen los pelos como escarpias al ver una matriz, no te preocupes... que no es para tanto. Eso sí ¡ve poniéndote las pilas...!


4. CAPACIDAD AUTODIDACTA Y SENTIDO DE LA CURIOSIDAD. Tengas una formación reglada o no, todo desarrollador se caracteriza por ser muy autodidacta. Te enfrentarás con problemas que son nuevos y sobre los que no hay apenas documentación o soporte; esto es un escenario muy común. En ocasiones toca buscarse la vida y sacar a relucir ese espíritu curioso que todos llevamos dentro.


5. ORDENADOR Y CONEXIÓN A INTERNET. Como ves, he dejado este punto en último lugar. Que no te engañen, para aprender a programar no necesitas ningún superordenador, te vale con uno normalito (si es posible un portátil). Será con el tiempo cuando definas qué tipo de programación quieres hacer y qué recursos necesitas.

PASO Nº 5

¿QUÉ LENGUAJE ELEGIR?


Existen multitud de recurso gratuitos para aprender a programar a día de hoy.

Te daré una buena noticia: existen multitud de recursos gratuitos para aprender a programar a día de hoy. De verdad, la inversión económica es prácticamente nula.


La amplia oferta de recursos que actualmente están a nuestra disposición tiene, sin embargo, un aspecto negativo, y es que genera confusión a la hora de empezar a programar.

Existen multitud de lenguajes de programación, ¿cuál elegir?

PROGRAMACIÓN VISUAL VS PROGRAMACIÓN TEXTUAL


Java, C, HTML, Scratch, Logo, Ensamblador... Cada cual tiene sus pros y contras ¿Por cuál decantarte? Si algo define a un programador es su versatilidad y capacidad para el cambio. Es necesario apostar por la formación continua; las tecnologías avanzan rápidamente y quedan obsoletas a veces antes de lo previsto.


Scracth, el lenguaje de programación visual desarrollado por el Massachusetts Institute of Technology (MIT). Su interfaz es sencilla y amigable, orientada a los más pequeños.

De unos años para acá la programación ha llegado a los colegios e institutos para quedarse. Muchos apuestan por enseñar una programación completamente visual, que cuenta entre sus bondades con atractivas y amigables interfaces de usuario. Éste es el caso de Scratch, avalado por el prestigioso MIT, o de Alice (de la Carnegie Mellon) que pudiera ser un buen comienzo a la hora de realizar una primera aproximación al mundo de la programación, en el caso de los niños. El problema viene cuando esta primera experiencia se alarga demasiado, perdiendo así la perspectiva de hacer una programación realista y prometedora.


La "pantallita negra"... no es para tanto. DIVIDE Y VENCERÁS.

Existe el temor a la "pantallita negra" (así lo llamo yo), que parte muchas veces desde los propios docentes, los cuales en su gran mayoría han tenido que adaptarse a un ritmo vertiginoso a las materias de tecnología e informática que se imparten de manera obligatoria en los currículos oficiales. Sin embargo, en la enseñanza de la programación nunca ha de perderse el espíritu investigador, ni a dejar atrás el miedo a enfrentarse a lo desconocido. Los interfaces por lo general no suelen ser amigables y, honestamente, tampoco hay ninguna necesidad de que lo sean.


Por tanto, un itinerario muy recomendable sería:


1º. Una buena forma de empezar sería aprendiendo (mismamente sobre papel) algunos de los conceptos más básicos de la algoritmia, como puede ser un bucle, o una estructura condicional; tipos de datos básicos (listas, matrices, vectores) y algunos de los algoritmos más relevantes como el quicksort o el burbuja. Cuatro o cinco lecciones como máximo, dependiendo del nivel (se omitiría para niños pequeños).


2º. Seguidamente podría pasarse por un primer contacto con un lenguaje visual (Scratch, Alice) para realizar algunos proyectos sencillos que generan resultados rápidos.


3º. Y finalmente, tras haberse familiarizado con el entorno, pasar a un lenguaje textual. Recomendar un lenguaje concreto es algo complejo; hay muchos y cada desarrollador suele tener uno preferido. Mi recomendación personal sería no basarse en las modas sino escoger un lenguaje fuertemente tipado, porque de lo que se trata es de educar al futuro programador, inculcarle hábitos. Un lenguaje tipado es más restrictivo, te obliga a escribir el código de una manera determinada. Por ejemplo, un ordenador podría interpretar "como stas" (no tipado) y "¿Cómo estás?" (muy tipado) de la misma manera. Dos lenguajes podrían ser:


- Ada: Ada (su nombre es en honor a Ada Lovelace, considerada la primera programadora de la historia). Fue diseñado por el Departamento de Defensa de los Estados Unidos y es usado en entornos en los que se prioriza la seguridad y la fiabilidad (industria aeronáutica, areoespacial o gestión del tráfico aéreo, entre otros).


- Python: Este lenguaje se ha vuelto a poner de moda debido a su potencial en todos los temas relacionados con análisis masivo de datos y la inteligencia artificial. Python sería sin duda mi primera opción, ya que de este lenguaje existen multitud de recursos a nuestra disposición, por tanto se hace muy fácil su aprendizaje.

Lenguaje de programación Python, mi recomendación para empezar a programar.

Lo importante es aprender los fundamentos de la programación, cambiar de lenguaje después es sencillo.

PASO Nº 5

VALE, YA LO TENGO TODO ¿POR DÓNDE EMPIEZO?


No sabes cuánto me alegra verte tan preparado. Para iniciarse en el mundo de la programación puedes optar por la vía tradicional, es decir, acudir a alguna formación reglada (formación profesional, ingeniería informática, etc), que te darán una formación en función del tipo y nivel de programación que quieras llevar a cabo.


Sin embargo, si te has decantado por la opción autodidacta o bien quieres complementar conocimientos, existen otras vías que en los últimos años han adquirido mucho interés: los cursos online o MOOCs (Massive Open Online Course). También hay alternativas, como canales youtube muy instructivos o la última, que es además mi preferida, las plataformas online.


Como es imposible abarcar todo, y la oferta es tan amplia, mi selección sería la siguiente. Los cursos a continuación relacionados son TOTALMENTE GRATUITOS.


En castellano:


- Python para niños. Canal de Jesús Conde. Youtube. Muy recomendable.

- Aprendiendo a programar con Python. Universidad Católica de Chile.

- Una introducción a la programación. Universida de Uruguay.


En inglés:

- Programming for everybody. Getting started with Python. Universidad de Michigan.

- Programming with Python. Codecademy.

- Computer Science Basics. Codecademy.


Codecademy sigue un método de gamificación. Su potencial reside en que es totalmente interactivo, desde el principio empiezas a programar aumentando poco a poco el nivel, de manera que cada lección es una prueba totalmente supervisada. Otro de sus puntos fuertes es que no es necesario instalar nada; basta con abrir el navegador web.


En cuanto a la opción presencial, existen muchas comunidades de apoyo en los que se imparten talleres de programación partiendo desde cero. Un ejemplo sería las PyLadies, una organización que impulsa la figura de la mujer en el mundo de la informática.


Estos han sido los 5 puntos imprescindibles a tener en cuenta para empezar a programar desde cero. Esperamos que con ellos ahora tengáis una perspectiva más amplia de lo que es aprender los fundamentos de la programación, así como de los recursos que tenéis a vuestra disposición. Si queréis aportar alguna sugerencia, idea u opinión, no dudéis en contactarnos en contacto@trincheracultural.com.


¡Hasta la próxima!

Trinchera Cultural.

FUENTES:


[1] "España, sin ingenieros para la cuarta revolución industrial"

A. CARRA/P. CERVILLA

ABC SOCIEDAD.

www.abc.es/sociedad/abci-educacion-espana-sin-ingenieros-para-cuarta-revolucion-industrial-201604250803_noticia_amp.html?__twitter_impression=true

121 vistas
LOGO_TRINCHERACULTURAL

¡Síguenos en nuestras redes sociales!

  • Twitter Social Icon
  • Icono social Instagram
  • Facebook icono social
  • Icono social de YouTube
  • ivoox
  • issuu

2018. Creative Commons Trinchera Cultural.