En 1969, Neil Armstrong y Buzz Aldrin hicieron historia en el proyecto Apolo 11. Llegaron a la Luna tras una dura carrera espacial de once años. Cuando pensamos en que el hombre pisó la luna, parece que hoy día solo les recordamos a ellos... pero solemos olvidarnos que detrás existía un equipo enorme de personas, entre las cuales habían ingenieros, controladores, astrofísicos, científicos… y también programadores.

Hace unos años se hizo viral una foto en blanco y negro de una chica al lado de una pila de libros que llega hasta su cabeza. Se trata de Margaret Hamilton, una de las programadoras del Apolo 11, al lado del código de todo el proyecto. Gracias a ese código, hoy podemos contar la hazaña.

empieza a programar: codigo apolo 11
La foto en cuestión. ¡No es exageración decir que la pila de código le llegaba a la cabeza! Créditos: Massachusetts Institute of Technology

Los programadores a menudo estaban en la sombra y se llevaban poco crédito de los méritos adquiridos, tales como este. Hoy en día afortunadamente esto está cambiando y cada vez se llevan más reconocimiento. ¡Muchos programadores han cambiado el mundo para bien!

Si estás aquí es porque estás considerando aprender esta habilidad. La programación es muy relevante en cualquier curriculum, especialmente en los sectores más técnicos del mundo profesional. Solo fíjate en los objetos de tu vida cotidiana. Los semáforos de tu ciudad, las cámaras de seguridad, los carteles en las estaciones de tren, los coches… Si tiene una pantalla, hay un buen 95% de probabilidades de que en ese objeto haya algo de programación involucrada.

La programación resuelve miles de problemas complejos y sencillos día tras día, ahorrando tiempo y recursos a muchísimas instituciones a lo largo del mundo. ¡Incluso es el modelo de negocio de muchas empresas!

Como programador freelance desde hace casi 5 años, voy a contarte todo lo referente sobre cómo empezar a programar: cómo lo hice yo y otras vías, a dónde puedes llegar, tipos de programadores, y que deberías aprender en función de tus objetivos.

Programando también aprenderás a pensar de forma lógica y a estructurar tu cabeza para ser más eficiente en tu día a día. ¡Empezamos!

Los/las mejores profesores/as de Programación que están disponibles
Pedro
5
5 (12 opiniones)
Pedro
12€
/h
Gift icon
¡1a clase gratis!
Adrian
5
5 (18 opiniones)
Adrian
15€
/h
Gift icon
¡1a clase gratis!
José ignacio
5
5 (45 opiniones)
José ignacio
25€
/h
Gift icon
¡1a clase gratis!
Alberto
4,9
4,9 (13 opiniones)
Alberto
35€
/h
Gift icon
¡1a clase gratis!
Pablo
4,9
4,9 (15 opiniones)
Pablo
25€
/h
Gift icon
¡1a clase gratis!
Carlos
4,9
4,9 (13 opiniones)
Carlos
25€
/h
Gift icon
¡1a clase gratis!
Alfredo
5
5 (18 opiniones)
Alfredo
30€
/h
Gift icon
¡1a clase gratis!
Daniel
4,9
4,9 (14 opiniones)
Daniel
25€
/h
Gift icon
¡1a clase gratis!
Pedro
5
5 (12 opiniones)
Pedro
12€
/h
Gift icon
¡1a clase gratis!
Adrian
5
5 (18 opiniones)
Adrian
15€
/h
Gift icon
¡1a clase gratis!
José ignacio
5
5 (45 opiniones)
José ignacio
25€
/h
Gift icon
¡1a clase gratis!
Alberto
4,9
4,9 (13 opiniones)
Alberto
35€
/h
Gift icon
¡1a clase gratis!
Pablo
4,9
4,9 (15 opiniones)
Pablo
25€
/h
Gift icon
¡1a clase gratis!
Carlos
4,9
4,9 (13 opiniones)
Carlos
25€
/h
Gift icon
¡1a clase gratis!
Alfredo
5
5 (18 opiniones)
Alfredo
30€
/h
Gift icon
¡1a clase gratis!
Daniel
4,9
4,9 (14 opiniones)
Daniel
25€
/h
Gift icon
¡1a clase gratis!
Vamos

El recorrido para llegar a ser programador

"La formación en informática no puede convertir a nadie en experto programador, de la misma forma que estudiar pinceles y pigmentos puede hacer a alguien un experto pintor"

Eric Raymond

Mucha gente piensa que para ser programador se requiere una carrera universitaria. ¡Esto es un error! Yo distingo dos formas principales de aprender a programar:

Programador autodidacta

Empezar a programar (dependiendo del lenguaje) puede ser tan fácil como coger YouTube y seguir un tutorial desde cero. ¡Et voilá, ya eres programador! Este es el camino que seguí yo, aunque no exactamente así.

aprender a programar gratis

Muchísimas personas, ya sea por trabajo o por hobby, empiezan de esta forma. Buscan recursos por su cuenta, se informan (¡como tú que estás aquí!), y empiezan a andar el camino solos. A menudo se suele empezar con una búsqueda en Google de: "lenguajes de programación más requeridos en el mundo laboral" o "lenguajes de programación mejor pagados en 2021". Esta última es un error a mi parecer, ya que creo que deberías guiarte por lo que te guste en lugar de solo por lo que pague mejor.

Este camino va a requerirte bastante más tiempo, ya que tienes que ir explorando por tu cuenta los distintos lenguajes y tecnologías hasta que veas con cuáles te sientes más cómodo.

En mi caso, yo hice un Grado en Ingeniería Informática. Esta carrera no está especializada únicamente en programación, por lo que aprendes muchas más cosas que solo programar. Hay muchas asignaturas (interfaces, desarrollo web, programación estructurada, programación orientada a objetos) que te enseñan los fundamentos de la programación y te guían por muchos lenguajes distintos. Es una buena forma de empezar y de tener una visión general del mundo informático pero no es ni de lejos la mas óptima si solo quieres programar.

En estas asignaturas no profundizas lo suficiente en ningún lenguaje, y si quieres ir por cualquier rama, probablemente tengas que complementarlo con muchas horas de código por tu cuenta. En consecuencia, yo considero esta aproximación prácticamente autodidacta.

Formación especializada

La otra opción y la que recomiendo sin duda, es apuntarse en una formación especializada. Esto puede ser desde un ciclo formativo de dos años hasta un bootcamp de programación de cuatro meses. En estas instancias te van a formar para programar desde el primer momento. Tus estudios y tus prácticas girarán desde el principio en torno a lo que vas a hacer en una empresa como desarrollador.

Sin duda es la forma más eficiente de entrar en el mundo, pero antes de elegir un programa, te recomiendo encarecidamente que hagas una investigación inicial por tu cuenta sobre las distintas especialidades y veas cuál te puede gustar más.

aprender programacion: repositorio código
Tener un repositorio de código al dia puede ser la diferencia entre una contratación o no.

La única gran desventaja que tiene este camino es que, en el mundo laboral, las empresas miran los curriculums y priorizan personas con títulos universitarios. Con lo que a todos los que vayáis por este camino, os recomiendo que hagáis todos los cursos y certificaciones posibles que respalden vuestro conocimiento, y desde el principio, creéis un buen portafolio o repositorio de código con todo lo que vayáis haciendo. Muchas empresas técnicas piden el portafolio antes que el curriculum, así que no lo dejéis de lado.

¿Entonces, cuál es mejor?

Apuntarte en una formación especializada es sin duda mucho más óptimo y eficiente con tu tiempo, pero también es más caro. Por otra parte siendo autodidacta quizás requieras un nivel más alto de disciplina y más tiempo pero igualmente te empapas más en el mundo de la programación. Por lo tanto, todo depende de tus circunstancias personales. Siempre puedes empezar por tu cuenta para ver si programar te gusta y luego complementarlo con una formación en el futuro (¡más que recomendable si eres autodidacta!).

Mujer quién está programando usando un ordenador y tres pantallas
No hace falta pasar por la universidad para ser un buen programador.

¿Qué se necesita para aprender a programar?

Afortunadamente, programar no requiere muchos recursos. Prácticamente cualquiera con un ordenador básico puede empezar a programar. No tiene que ser un ordenador potente a no ser que nos metamos en el mundo del desarrollo gráfico y 3D, como puede ser el caso de un programador de videojuegos. Sin embargo, para programación básica cualquier ordenador relativamente moderno nos sirve.

En función del lenguaje de programación que queramos aprender, la herramienta que necesitemos puede ser tan simple como un procesador de textos o el bloc de notas, o tan compleja como un entorno de desarrollo propio. En cualquier caso, estas herramientas son casi todas gratuitas y de gran calidad, con lo que apenas hay motivos para moverse a alternativas de pago a no ser que necesites funcionalidades muy avanzadas.

Algunos lenguajes requieren descargar un compilador o el propio lenguaje para que tu ordenador lo entienda, pero normalmente todo suele venir en una sola descarga.

Por lo que, si estás leyendo este artículo, lo más probable es que puedas empezar a programar sin problema.

Los/las mejores profesores/as de Programación que están disponibles
Pedro
5
5 (12 opiniones)
Pedro
12€
/h
Gift icon
¡1a clase gratis!
Adrian
5
5 (18 opiniones)
Adrian
15€
/h
Gift icon
¡1a clase gratis!
José ignacio
5
5 (45 opiniones)
José ignacio
25€
/h
Gift icon
¡1a clase gratis!
Alberto
4,9
4,9 (13 opiniones)
Alberto
35€
/h
Gift icon
¡1a clase gratis!
Pablo
4,9
4,9 (15 opiniones)
Pablo
25€
/h
Gift icon
¡1a clase gratis!
Carlos
4,9
4,9 (13 opiniones)
Carlos
25€
/h
Gift icon
¡1a clase gratis!
Alfredo
5
5 (18 opiniones)
Alfredo
30€
/h
Gift icon
¡1a clase gratis!
Daniel
4,9
4,9 (14 opiniones)
Daniel
25€
/h
Gift icon
¡1a clase gratis!
Pedro
5
5 (12 opiniones)
Pedro
12€
/h
Gift icon
¡1a clase gratis!
Adrian
5
5 (18 opiniones)
Adrian
15€
/h
Gift icon
¡1a clase gratis!
José ignacio
5
5 (45 opiniones)
José ignacio
25€
/h
Gift icon
¡1a clase gratis!
Alberto
4,9
4,9 (13 opiniones)
Alberto
35€
/h
Gift icon
¡1a clase gratis!
Pablo
4,9
4,9 (15 opiniones)
Pablo
25€
/h
Gift icon
¡1a clase gratis!
Carlos
4,9
4,9 (13 opiniones)
Carlos
25€
/h
Gift icon
¡1a clase gratis!
Alfredo
5
5 (18 opiniones)
Alfredo
30€
/h
Gift icon
¡1a clase gratis!
Daniel
4,9
4,9 (14 opiniones)
Daniel
25€
/h
Gift icon
¡1a clase gratis!
Vamos

Tipos de programadores y especializaciones

"Primero resuelve el problema. Entonces, escribe el código"

John Johnson

En el mundo profesional hay muchísimas especializaciones y tipos de programadores, pero a grandes rasgos, distinguimos tres:

Programador desktop o de sistemas

Este programador principalmente se dedica a desarrollar aplicaciones de escritorio, es decir, software de ordenador. Programas que usas en tu día a día como por ejemplo, Microsoft Word, o el propio sistema operativo de tu ordenador, como Windows o Mac OS. Estos roles se encuentran en casi todas las empresas, ya que, aunque una empresa no venda un producto o software digital, siempre están desarrollando y mejorando software corporativo que ellos usan. Lo que se suele decir coloquialmente: "¡todas las empresas necesitan un informático!".

Esta persona suele estar especializada en lenguajes de programación clásicos, como C++, Java, Visual Basic o Python. Este último es muy relevante por su gran variedad de usos y su facilidad de aprendizaje. Python es un lenguaje muy versátil que, aunque sea fácil de aprender, no implica que sea un lenguaje solo de principiantes. Con un índice de uso del 31,73%, es el lenguaje más popular del mundo. C++ igualmente es un lenguaje muy valorado en el mundo profesional, pero también más complejo.

Conocer cualquiera de estos lenguajes te abre distintas posiciones de trabajo dependiendo de tu especialización concreta, pero los salarios de un desarrollador de software general en España rondan entre 16.000 y 22.000 euros con poca experiencia, y entre 30.000 y 40.000 euros con experiencia superior, dependiendo de la zona, experiencia concreta y tareas precisas. A mayor especialización, como por ejemplo, trabajos en el ámbito de ciberseguridad, DevOps o Big Data, mejores salarios, pudiendo alcanzar fácilmente entre los 42.000 y 45.000 euros con poca experiencia.

Programador web

Este programador trabaja creando sitios web. Páginas a las que accedes a través de tu navegador de Internet, como puede ser Google, Facebook o este mismo blog. Las páginas que crean pueden variar en complejidad: puede ser un blog sencillo con pocas páginas y funcionalidades, o puede ser una herramienta online para gestionar todos los usuarios de una página como Facebook o YouTube.

Estos programadores trabajan en agencias de desarrollo web. También puedes verles yendo por libre como freelances. En función de la agencia y el tamaño de esta, pueden estar haciendo simples páginas de marca y empresa, o auténticos proyectos de gran envergadura. Es un camino con mucho potencial, pero exigente, ya que este mundo está en constante evolución, y lo que hoy está bien, mañana estará obsoleto o podría optimizarse para ahorrar en tiempo de carga. Un programador web puede especializarse en tres frentes:

como aprender a programar en c++

Frontend

Esta palabra se refiere a todo lo que se ve de la web, todo lo que el usuario que entra ve, toca, e interactúa con. Los lenguajes que se trabajan en esta disciplina son HTML, CSS y a veces también JavaScript.

Si la web fuese una casa, este programador se dedicaría a pintar la casa y poner los ladrillos.

Un desarrollador web frontend novato puede empezar su salario entre 27.000 y 32.000 euros, pudiendo crecer en franjas de 10.000 euros extra por cada cuatro años de experiencia. Esto se debe a que hay menos oferta de desarrolladores front en comparación a los back.

aprender programacion python

Backend

Esta palabra se refiere a lo que no se ve de la web. Todo lo que está funcionando por detrás para que la web se muestre y cargue correctamente. Los lenguajes más relevantes en esta disciplina son PHP, JavaScript, Ruby, .Net, y ojo, también puedes ver webs desplegadas con Python o con lenguajes del primer bloque.

Si la web fuese una casa, este programador instalaría todo el cableado eléctrico y las tuberías del agua y del gas.

Estos programadores cobran algo menos que los front. El salario de los novatos rondaría entre 20.000 y 30.000 euros, ya que los programadores back son más comunes en el mercado laboral.

aprender a programar en java

Fullstack

Un programador Fullstack maneja tanto las tecnologías de frontend como de backend. Es un ejército de un solo hombre; puede desplegar webs sin depender de nadie más, por lo que es de los más apreciados, pero también de los más sacrificados. ¡Este programador podría construirte una casa entera él solito!

Un Fullstack puede empezar cobrando unos 25.000 euros, aunque la media suele ser de 35.000 euros. Y los más experimentados pueden cobrar perfectamente entre 50.000 y 55.000 euros en función de la zona y de la empresa.

Si vemos las estadísticas más recientes, podremos comprobar que estas tres especialidades cuentan con una muy alta demanda laboral dentro del rubro de la programación, obteniendo más de la mitad de todas las solicitudes de entrevistas para puestos de ingenieros de software.

gráfico sobre oferta laboral según la especialidad de programacion

Como los programadores desktop, estos profesionales también pueden especializarse en muchas disciplinas, como SEO o Google Analytics, muy apreciadas y bien pagadas.

Estas tres especialidades que he explicado arriba, no están necesariamente cerradas a programadores web; puedes encontrar programadores desktop o móvil especializados en front y back, pero donde hay más ofertas es en el sector web.

Programador móvil o programador app

Estos programadores han ganado mucha relevancia en la última decada, desde que el smartphone se ha implementado en nuestra sociedad. Son los encargados de crear software aplicado a móviles y dispositivos portables como los tablets, es decir, las famosas apps o aplicaciones móviles.

aprender a programar

El rol del programador móvil o app es especialmente exigente, ya que cada plataforma tiene un stack distinto propio. Un programador que trabaje con iOS (iPhones y iPads) tendrá que saber Objective-C, Python y Swift, el lenguaje propio de Apple. Sin embargo, si trabajas con Android o Windows Phone, con saber Java o Kotlin y Visual Basic estarás cubierto.

Una aplicación desarrollada por y para un sistema operativo se conoce como aplicación nativa. Por otra parte, una aplicación válida para más de un sistema operativo se conoce como aplicación híbrida. Muchos frameworks y tecnologías como PhoneGap y Cordova permiten al programador trabajar con código web como HTML, JavaScript y CSS, para luego automáticamente desplegar esta aplicación en todos los modelos como si fuese nativa.

Un programador web puede especializarse lo suficiente sin mucho esfuerzo para realizar aplicaciones móviles con suma facilidad. Sin embargo, los programadores nativos son mucho más valorados. Un desarrollador de Android, por ejemplo, tiene una banda salarial que empieza en los 30.000 euros, y perfectamente puede alcanzar los 48.000 euros con poca experiencia.

Los programadores de aplicaciones móviles son muy valorados en el mercado en general. Si te especializas en esta rama, tendrás trabajo y un más que buen salario garantizado.

¿Y si no tengo ni idea, qué lenguaje de programación aprender primero?

Ya has visto a grandes rasgos el stack de cada perfil de programador. Por supuesto, cuanto más especializado, más conocimientos y más lenguajes, pero ya sabes lo que esperar. Para quien quiera empezar por su cuenta, le recomiendo que haga una investigación de cada rol y en función de lo que le atraiga más, que mire el stack reducido de cada rol:

  • Programador desktop o de sistemas: Python o C++.
  • Programador web: HTML, PHP, JavaScript.
  • Programador móvil o de apps: Lo mismo del programador web, más Objective-C o Java.

Y si estas aún perdido y no sabes qué te llama o solo quieres probar la programación… mi recomendación está más que clara: Python. Python es un lenguaje:

  • Clásico: sigue los paradigmas tradicionales de la programación, por lo que, aprendiéndolo desde cero, vas a obtener una base muy sólida para enfrentarte a cualquier otro lenguaje de programación.
  • Relativamente moderno: ¡Se creó en 1991! Te parecerá que fue hace mucho, pero piensa que sus equivalentes como C y C++ se crearon en el 1972 y en el 1985 respectivamente.
  • Fácil: Su sintaxis es bastante intuitiva y simple en comparación con otros lenguajes.
  • Multiuso: Python es una navaja suiza. Puedes hacer de todo con ella: software de ordenador, machine learning, inteligencia artificial, incluso webs y aplicaciones móviles.
  • Establecido: es un lenguaje muy utilizado y relevante hoy en día. Como podemos ver en el gráfico de aquí abajo, actualmente es el lenguaje más popular del mundo, con un 31,73% de índice de uso.
Gráfico: lenguajes de programacion mas utilizados en 2021

En resumen: aprendiendo Python vas a aprender uno de los lenguajes más populares del mundo, vas a poder encontrar trabajo si le dedicas tiempo, vas a poder hacer de todo, y vas a obtener una base muy buena para seguir aumentando tu stack.

Para empezar a trabajar con Python tienes que descargar el lenguaje desde aquí (elige la versión en función de tu sistema operativo) e instalarlo.

Y con eso tu ordenador ya puede entender y ejecutar archivos .py, de Python. Puedes directamente escribir Python en bloc de notas, pero recomiendo descargar un entorno de programación más aparente. Yo personalmente uso Sublime Text, pero otra gran alternativa es Visual Studio Code, de Microsoft. Todo lo que he listado aquí es gratuito.

Por otro lado, vale la pena destacar también a Go. Los últimos dos estudios de Hired marketplace, una plataforma americana que busca poner en contacto a empresas de tecnología con profesionales del rubro de la programación, han señalado que Go de Google es el lenguaje de programación más solicitado por las empresas. En 2020, los candidatos que sabían manejar este lenguaje recibieron 2,3 veces más solicitudes de entrevista que aquellos que no.

Recomendaciones y contenidos para aprender programación

Echando un ojo rápido a Google vais a ver que los contenidos y cursos sobre cómo comenzar a programar son simplemente infinitos. Cada uno tiene su estilo de aprender y de entender, por lo tanto una recomendación que yo os pueda hacer quizás no os sirva tanto como me sirvió a mí en su momento. Mi recomendación es que investiguéis y pisteéis canales de YouTube y otros medios y veáis cuales se adaptan más a vuestra forma de aprender.

A mí, personalmente, me gusta mucho el canal de YouTube de Fazt. Sube videos con frecuencia, muy detallados sobre las últimas tecnologías y noticias del mundo informático, y también tiene cursos intensivos de gran calidad. Es especialmente recomendable su curso de Python intensivo.

Por otra parte, si te intimida la duración de algunos videos de Fazt, te recomiendo La Geekipedia de Ernesto. Tiene un curso que te enseña a pensar como un programador antes de entrar en cualquier lenguaje. Aparte de ese curso, tiene una amplísima cantidad de listas de reproducción con cursos enteros dedicados a un lenguaje, en videos más amigables de 10-20 minutos.

¿Certificaciones gratis?

¿Recordáis el tema de las certificaciones?

Chollometro es una web de promociones que sirve para ver ofertas que hay en el mercado con respecto a productos. Más allá de lo interesante de esa web, tiene una sección de cursos y formaciones muy particular que os informa de cursos gratuitos de muchísimas índoles distintas, incluyendo a menudo de programación. Estos cursos suelen ser de Udemy, una web de cursos de pago, que gracias a numerosas ofertas que capta chollometro, puedes acceder a ellos de forma gratuita. ¡Y muchos te dan certificaciones!

La web tiene un servicio de avisos, con lo que pueden notificarte de nuevos cambios en las secciones que te interesen, incluyendo esta.

Otro gran recurso muy útil es Linkedin Learning. Este es un servicio de Linkedin de pago que a veces saca cursos gratis o periodos de prueba. Estad pendientes y aprovechadlos, ya que estos cursos dan certificaciones directas que puedes agregar en un clic a tu perfil de Linkedin.

como aprender programacion de computadoras
¡Conviértete en un maestro del código con estas certificaciones!

Podcasts

Los podcasts de programación en español no abundan, pero con el tiempo esto ha ido cambiando. Más que de enseñanza, estos podcasts son de discusión y charla sobre noticias recientes del mundo informático y de desarrollo, pero igualmente interesantes. Mis tres favoritos son:

Aprender a programar: En este podcast, el autor habla con sus alumnos de programación, los cuales le comentan el avance de sus proyectos personales, sus problemas técnicos, y las soluciones que se le pueden dar. Muy interesante, ya que enciende la mecha para ponerte a trabajar por tu cuenta.

La tecnologería: Son una red de podcasts sobre informática. Sus podcasts más famosos son las entrevistas, mayormente a programadores locales que han triunfado al otro lado del charco, como, por ejemplo, en Silicon Valley. El anterior podcast encendía la mecha con una cerilla, pero este la enciende con un soplete. Tiene otros podcasts dedicados a cómo empezar en ciertas áreas de la informática, desarrollo de videojuegos o historia de la informática, o directamente sin relación con ella.

Web Reactiva:  Este podcast habla de forma más general sobre temas de desarrollo y programación. El estilo del podcast es: Primero lo pruebo, ¡después os lo cuento! Muy buen podcast para estar al día de lo que va saliendo en el mundillo, así como tener una opinión cercana sobre ciertas tecnologías.

En conclusión

La programación es un mundo muy, muy amplio, en constante crecimiento, que puede intimidar un poco al principio si lo desconoces. Después de esta pequeña guía exprés, espero que ahora tengas un poco más de visión sobre el tema y este mundo no te intimide tanto.

Los recursos que puedes consultar son infinitos, así que busca las tecnologías con las que te sientas cómodo, ¡empápate de videos y cursos, y programa todo lo que puedas!

¡Y sobre todo, haz portafolio!

¡Tu profesor/a de Programación te está esperando en Superprof!
¿Quieres probarlo?

¡Déjate seducir por nuestro excepcional elenco de profesionales!

Vamos >

¿Te gustó este artículo? ¡Puntúalo!

4,33 (6 nota(s))
Cargando...

Luis

Ingeniero informático freelance apasionado por la tecnología y curioso por naturaleza. Me considero una persona inquieta en búsqueda de aprendizajes y nuevas experiencias con los retos que me surgen, mientras me pongo a prueba como profesional al mismo tiempo.