¿Qué lenguaje de programación debo aprender y dónde puedo hacerlo gratis?

Publicado el

Son tantos los lenguajes de programación que no sorprende tener montones de dudas a la hora de elegir el adecuado. Pues bien, Eric Weinstein de Codecademy, una de las mejores y más populares opciones a la hora de aprender a programar de forma online, recomienda soluciones especí­ficas según las tareas que se quieran desarrollar. Por supuesto, en su mayorí­a son orientadas a trabajar con la web, pero no sobra extender la invitación a aprender a programar y sacarle provecho en todas las áreas.

learnstreet bg

Para crear y editar páginas web

Lo primero para aprender a crear páginas y sitios web sencillos, estáticos, es documentarse sobre HTML y CSS. No son propiamente lenguajes de programación ya que el primero es un lenguaje de marcado que define la estructura de un sitio web, y el segundo es un lenguaje de estilos el cual controla la apariencia (alineaciones, colores, fuentes, posición, etc.) de los elementos que conforman esa estructura (cabecera, cuerpo, pie, barras laterales, imágenes, texto, etc.). HTML5 y CSS3 son variaciones recientemente famosas por la cantidad de posibilidades que permiten.

Cursos y recursos: Curso interactivo de HTML y CSS en codecademy.com | Videotutoriales y documentación de HMTL5 en programando.la | Curso de HTML y HTML5 de Microsoft | A Beginner”™s Guide to HTML & CSS (guí­a en inglés)

Para hacerlas interactivas

La idea es no quedarse con páginas estáticas sino crear grandes obras web que mezclen animaciones, galerí­as de imágenes, menús desplegables, formularios, cajas de suscripciones, widgets que recreen las timeline de las redes sociales y mucho más contenido interactivo que se ejecuta «del lado del cliente» (o front-end), esto es, en su navegador. JavaScript es el lenguaje clave para darle vida a todo esto y jQuery es una de sus bibliotecas más populares que facilitan al máximo su uso en el mundo web.

Cursos y recursos: Curso de JavaScript en codecademy.com | Curso de jQuery básico en CodeSchool | Tutoriales de JavaScript en W3Schools | Sección de Javascript y jQuery también en programando.la | Curso de JavaScript en learnstreet.com

Para trabajar con datos de usuario

Para crear aplicaciones que trabajen con los datos de los usuarios, por ejemplo, las que requieren que el usuario inicie sesión, hace falta un servidor, un computador donde se alojará y se tratará la información que de paso será el que prestará los recursos para que se ejecute la aplicación. Algunos de los mejores lenguajes que facilitan este tipo de funcionamiento «del lado del servidor» (o back-end) son PHP, Python, Ruby y JavaScript -de nuevo-, los cuales también permiten trabajar con los datos de usuario de otras aplicaciones (YouTube, Twitter, Skype, Evernote, etc.) a través de sus APIs.

Cursos y recursos: codecademy.com | learnstreet.com | programando.la | W3Schools | codeschool

Extra: Motivos para aprender a programar ahora mismo

La lógica de la programación está en todas las áreas del conocimiento y cualquiera (empezando por los niños) puede aprender a programar; eso de que es un trabajo exclusivo para supergenios o para inadaptados sociales que se la pasan dí­as seguidos pegados frente a un computador es algo tan falso que sólo se ve en las pelí­culas, sobran los motivos para recomendar su aprendizaje En el siguiente video, de la mano de famosos como Bill Gates (Microsoft), Mark Zuckerberg (Facebook), Will.i.am (Black Eyed Peas), Chris Bosh (NBA) y Jack Dorsey (Twitter), se resalta la magnificiencia de este arte:

Imagen: Fondo del perfil en Twitter de @LearnStreet

16 comentarios en “¿Qué lenguaje de programación debo aprender y dónde puedo hacerlo gratis?

  1. Para nada es una pérdida de tiempo, como lo aclaré en el primer párrafo, la entrada simplemente está enfocada a los que trabajan con la web. Igual, después de que aprendes a programar en C, pasarte a probar los demás lenguajes es una trivialidad pues la lógica poco cambia.

    Un saludo.

  2. Hola,

    Perdón por la ignorancia: ¿qué sitio es bueno para aprender a hacer aplicaciones para Android?

    Gracias!

  3. hola, mi nombre es Eric y tengo 17 años, estoy terminando la secundaria y estoy buscando cursos o guias para empezar y aprender a programar, necesito una base, mi colegio en esta rama no tiene base y por eso necesito buscar por internet dado que tampoco encontre cursoss en institutos, saludos!

  4. Hola que tal, alguien me podrí­a indicar como realizo la división de secciones con el modelo MVC ya que no entiendo como realizarlo?

  5. Buenas tardes (saludos desde Jujuy – Argentina):
    Querí­a consultar si recomiendan Java EE + jsf para realizar programación Web

  6. Desde mi punto de vista, si lo que quieres es desarrollar proyectos web debes tener unos conocimientos en html y css, y si además conoces algo de php mejor que mejor ya que hoy en dí­a la mayorí­a de las webs se realizan mediante CMS (Joomla, WordPress, Drupal…) y lo que se necesita es hacer pequeños cambios en código, con lo que teniendo una base en estos lenguajes vas a poder realizar grandes proyectos sin problemas.

  7. Aprender a programar no es aprender un lenguaje. Al igual que si sabe matemáticas podrá explicarlas en cualquier idioma, aprenda los fundamentos de programación y podrá elegir en cada proyecto el lenguaje que mejor se adecua a sus necesidades.

  8. Estoy de acuerdo con Enrique, aprender a programar no es aprender un lenguaje, si no aprender la estructura general para entenderlo todo.
    Soy Ingeniero en Informática y si alguien está interesado en este mundo de la programación les recomiendo un canal en YouTube que encontré, se llama Código Compilado en donde están dando un curso de lógica, ¡que ojalá me hubieran dado en la universidad! les dejo el link
    https://www.youtube.com/channel/UCcstKdpWrg4-XN3m6vZ_3mg

  9. ¿Donde quedó FORTRAN?
    Necesito hacer computos numéricos de alta velocidad con control de entrada mediante una GUI y salida gráfica. Además debo tener control total de lo que hace la librerí­a gráfica (por lo que las funciones son codificadas por mi) y dejar para Open Gl o algo similar solo la representación finál. ¿Que uso para ello y como le pego una GUI el engine en FORTRAN?.
    Por favor. Nada de lenguajes interpretados.