Cursos gratuitos para aprender a programar?

Hola, pues nada, que me ha entrado la curiosidad de aprender a programar en mis ratos libres como hobby, y me gustaría que me dijerais por qué lenguaje empezar y cursos o tutoriales gratuitos que pueda encontrar por internet para que alguien que no tiene ni idea (empiezo totalmente de cero) pueda hacer sus pinitos sin desesperarse mucho.

Sé que no es fácil, que hace falta paciencia, y que una posible dedicación profesional a ello evidentemente solo la veo como una posibilidad a muy muy pero muy largo plazo.

Pero para ir empezando poco a poco, me gustaría vuestro asesoramiento.

Ah, y no quiero aprender a programar solo juegos, o solo determinado tipo de aplicaciones... simplemente, quiero aprender a programar.

Me aconsejáis empezar por C? O por Java? o por dónde?

Un saludo y perdón si este no es el subforo adecuado, que lo mueva el moderador pertinente si así es.
Sabes ingles?
Te recomiendo esta web:
http://www.codecademy.com/#!/exercises/0
Aprendes javascript bastante rapido, esta bastante bien. Porque tienes ejemplos pracitcos todoel rato y te corrige si la cagas.

Una vez sepas jaascript, puedes hacer juegos usando el engine Unity 3D, pues para hacer scripts, usa Javascript(o C#)

Yo NO esque te recomiende Javascript por encima de C# o C++, de hecho C++es el mas completo de todos, pero es muchisimo mas dificil de aprender.
Yo te recomiendo python, me parece que es el más sencillo, aunque supongo que no será tan completo como Java o C.

Yo aprendí un poco hace dos años con esta página http://pythonya.appspot.com/, lo bueno es que aprender a hacer nuevas cosas muy rápido, en contra el tutorial es muy superficial y poco profundo. A mi me gustó porque lo encontré muy entretenido.

Un saludo.
Pero, programación web? programación orientada a objetos?

No sé, yo te recomendaría PHP la verdad, es más sencillo que aprender Java o C, si no, pues Java.
Comienza en C# o VB.Net

son los mas "visuales" y los que te animaran a seguir porque es más rápido ver los resultados, sin olvidar del fabuloso debug de Visual Studio que para los que empiezan les viene muy muy muy bien.
muchisimas gracias, entonces supongo que si quisiera empezar de primeras "en serio" deberia irme a c++, pero si quisiera empezar poquito a poco y de manera más amena, me recomendais python, javascript o vb. net no?

inglés sí que sé, aunque no sé si tanto como para entender una web de programación...

Un saludo :)
A mí todos mis profesores me han dicho que lo mejor para empezar es Java. Es "fácil" y además te aporta una gran base.
este parece que tiene bastante buena pinta... que pensais?

http://bitsbeta.com/sharpdevelop-progra ... rp-vb-net/
heathclifff escribió:este parece que tiene bastante buena pinta... que pensais?

http://bitsbeta.com/sharpdevelop-progra ... rp-vb-net/


Porque trabajar con un entorno que según dice es "lo mas parecido a Visual Studio" si puedes bajarte directamente el Visual Studio?
aperitivo escribió:Comienza en C# o VB.Net

son los mas "visuales" y los que te animaran a seguir porque es más rápido ver los resultados, sin olvidar del fabuloso debug de Visual Studio que para los que empiezan les viene muy muy muy bien.


Yo tambien te recomendaria C#, sobretodo porque si tienes errores es bastante rapido y suele acertar en el problema. Tambien porque te permite programar cosas muy rapido y ver los resultados inmediatamente

Ver vb.net te permitiria hacer programas visuales, con botones, ventanas, lectura de datos, etc muy facilmente, pero a mi personalmente cada vez que paso un periodo de tiempo con un proyecto en vb y vuelvo a otro lenguaje, cometo muchos errores de sintaxi ;(
Python , es como escribir un libro
Python está bien para aprender a programar y coger los conceptos básicos y luego ir a los avanzados sin moverte de lenguaje. Además no permite hacer muchas guarradas que si que se hacen con otros lenguajes y vas a adquirir buenos hábitos de programación. Podrás hacer aplicaciones de consola y gráficas si mucho esfuerzo, temas de web, etc.

Si quieres empezar rápido a hacer programas para Windows: Visual Basic .net.

Lo demás, si quieres aprender a programar con el objetivo de tener una buena base o para programar controladores, juegos, etc. es básico aprender C y de aquí, si lo necesitas C++. También desde el C si quieres objetos podrás pasar a Java o C#. Empezar con C o con C++ te va a costar más que empezar con Python o VB.

Otra opción es escoger un lenguaje en función de lo que más te motiva a programar, porque al final a programar se aprende programando...: e.g. aplicaciones para móviles escoge Java, microcontroladores escoge C, juegos C/C++, cosas de web PHP o Phyton, aplicaciones Windows C# o VB .net...
Pues yo me uno a los que opinan que Python es el mejor lenguaje para aprender a programar.

La sintaxis de Python es simplemente preciosa. ¿Has oído a todo mundo hablar de la belleza de Ruby? Bueno eso es porqué Ruby es un calco de Python.

Si hablamos de orientación a objetos, Python es de los pocos que incluyen multi-herencia.

Una diferencia importante con respecto a Ruby, es que la jerarquía de Python está basada en la identación, mientras que en Ruby se usan los cierres "end", los que están acostumbrados a otros lenguajes, prefieren el método de Ruby, pero a mi parecer el método de Python es ideal para aprender las "mejores prácticas" en cuanto a identación.

DJango para Python ha sido uno de los Frameworks más innovadores en la web. Que a nadie le extrañe que frameworks de PHP como symfony terminen usando plantillas con la sintaxis de Python, pues están siguiendo sus pasos.

Sublime Text 2, uno de los editores favoritos de muchísimos desarrolladores incluye su propio interprete de Python. Por lo que uno puede probar comandos sin salir del editor.

Una frase muy usada en Python es la de "incluye baterías", básicamente porqué viene de serie con una enorme variedad de librerias que te permiten hacer en un par de lineas, lo que normalmente se haría con cientos.

Imagen

Imagen
Si yo creo que deberias hecharle mano al python, yo he estado trasteando y no me ha ido mal, hice un space invaders (con la libreria pygame) sin muchos esfuerzo y aprendi varias cosas.


poxolate3 escribió:Yo te recomiendo python, me parece que es el más sencillo, aunque supongo que no será tan completo como Java o C.

Yo aprendí un poco hace dos años con esta página http://pythonya.appspot.com/, lo bueno es que aprender a hacer nuevas cosas muy rápido, en contra el tutorial es muy superficial y poco profundo. A mi me gustó porque lo encontré muy entretenido.

Un saludo.


Lo divertido de esa web es que la propia web tiene partes hechas con python, porque hace un momento trate de entrar y me solto esto :

Traceback (most recent call last):
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 710, in __call__
    handler.get(*groups)
  File "/base/data/home/apps/pythonya/1.339838402016280589/pythonya.py", line 25, in get
    cantidad=int(t.count()/tampagina)
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/__init__.py", line 2120, in count
    result = raw_query.Count(limit=limit, **kwargs)
  File "/base/python_runtime/python_lib/versions/1/google/appengine/api/datastore.py", line 1670, in Count
    batch = self.GetBatcher(config=config).next()
  File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2671, in next
    return self.next_batch(self.AT_LEAST_ONE)
  File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2708, in next_batch
    batch = self.__next_batch.get_result()
  File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 604, in get_result
    return self.__get_result_hook(self)
  File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_query.py", line 2450, in __query_result_hook
    self._batch_shared.conn.check_rpc_success(rpc)
  File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_rpc.py", line 1214, in check_rpc_success
    rpc.check_success()
  File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 570, in check_success
    self.__rpc.CheckSuccess()
  File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_rpc.py", line 133, in CheckSuccess
    raise self.exception
OverQuotaError: The API call datastore_v3.RunQuery() required more quota than is available.


Ahora ya me deja entrar normalmente pero antes salio eso.
muchisimas gracias a todos chicos, entonces parece que python es la mejor opcion :)
Yo voto por C. Me parece el mejor lenguaje para empezar (aunque Python no nunca lo he estudiado, y no se que tal es) ya que te permite tener una buena base para luego estudiar otros lenguajes, aunque algunas cosas se te puedan hacer complicadillas. xD
Interesante hilo.
Estaría genial que se pusieran más recursos para novatos, webs, tutoriales o libros independientes, vídeos introductorios...
Claro que lo ideal sería que lo fuera poniendo gente experimentada que sepa de forma aproximada qué requieren los novatos en esta materia.
Cuando me refiero a novatos, quiero decir sin conocimiento previo a cerca de la materia.

Seguiré por aquí, a ver si prospera la propuesta :)

Un saludo!
Aqui pongo cursos gratuitos, su nivel es alto y en ingles pero para el que vaya en serio le pueden ir bien

https://www.coursera.org/

https://www.edx.org/dashboard

Respecto a la titulación si es valida o no, no lo sé, cuando al menos empiece los que estoy del último comento.Buena pinta tienen.

Saludos.

pd.He encontrado uno en coursera que seguro que alguno le gusta:
https://www.coursera.org/course/gamification
O como usar los problemas tipicos de realizar videojuegos a aplicaciones empresariales.
Hola
si te interesa c++ hay unos videotutoriales muy interesantes
pasate por http://www.illasaron.com
registrate y ves a la zona de videotutoriales y descargalos

aqui tienes el primer videotutorial del curso c++

lo dicho el curso completo esta en la pagina de ilasaron
saludos
teneis algo de Jscript, PHP, PHP OOB y Jquery en español

Gracias ^^
Aprovecho yo para poner y recomendar los cursos de Udacity, una especie de "Universidad gratuita a distancia". Incluye cursos de programación introductorios e intermedios, como por ejemplo: http://www.udacity.com/overview/Course/ ... ev/apr2012

Este en concreto es el curso de Introducción a la informática, muy similar a la asignatura correspondiente que podrías estudiar en la Universidad de Stanford (de hecho uno de los profesores del curso es exprofesor de Stanford). Viene con vídeos, evaluaciones, objetivos, y cada X meses puedes hacer un examen y obtener tu diploma (que no tiene validez oficial). Yo hice el primero que sacaron (de Inteligencia artificial) y me encantó. Además hay foros oficiales con muy buen ambiente donde puedes hablar con el resto de estudiantes, comentar dudas, etc. Tengo pendiente ir haciendo los siguientes.

En el curso que enlazo, además, se marcan el objetivo de hacer un buscador (al estilo Google), y el proyecto les sirve de excusa para ir explicando Python y varios conceptos de informática. La única "pega" es que está en inglés (aunque los vídeos tienen subtítulos).
Korso10 escribió:Aprovecho yo para poner y recomendar los cursos de Udacity, una especie de "Universidad gratuita a distancia". Incluye cursos de programación introductorios e intermedios, como por ejemplo: http://www.udacity.com/overview/Course/ ... ev/apr2012

Este en concreto es el curso de Introducción a la informática, muy similar a la asignatura correspondiente que podrías estudiar en la Universidad de Stanford (de hecho uno de los profesores del curso es exprofesor de Stanford). Viene con vídeos, evaluaciones, objetivos, y cada X meses puedes hacer un examen y obtener tu diploma (que no tiene validez oficial). Yo hice el primero que sacaron (de Inteligencia artificial) y me encantó. Además hay foros oficiales con muy buen ambiente donde puedes hablar con el resto de estudiantes, comentar dudas, etc. Tengo pendiente ir haciendo los siguientes.

En el curso que enlazo, además, se marcan el objetivo de hacer un buscador (al estilo Google), y el proyecto les sirve de excusa para ir explicando Python y varios conceptos de informática. La única "pega" es que está en inglés (aunque los vídeos tienen subtítulos).

Muy intersante, le echaré un vistazo. Hace unos meses instalé python y venía con python shell o algo así que era lo mismo. Los únicos cursos que encontré eran de versiones anteriores y yo no me podia orientar porque no podía hacer un programa con interfaz gráfica y venía de hacer una calculadora y un navegador en VB XD
Acabé desinstalandolo pero creo que lo retomaré.
24 respuestas