Después de algunos años desde que comencé a aprender a programar, he decidido intentar dar algunos consejos y explicar por dónde empezar para convertirte en programador. Debo decir que no soy un programador demasiado avanzado todavía y puede haber algunos puntos que se puedan mejorar, después de todo, sólo quiero compartir el camino que he seguido hasta ahora.
Habrá muchas preguntas que puede que te hagas durante todo el camino que recorrerás hasta que te conviertas en programador, tales como: "¿Cómo se come esto?", "LOL, ¿por qué estoy usando esto?", "No sería más fácil usar esto otro... ? " o "¿Por dónde empiezo?". Es esta última pregunta la que te debes estar haciendo y la que resolveré en esta entrada.
Cuando me lo pregunté por primera vez tenía la intención de hacer un videojuego. Lo primero que hice fue descargar Microsoft XNA y ... bueno, ¡de cabeza a la aventura! Comencé a aprender C# leyendo su documentación e hice un Space Invaders bastante simple. Dejé el proyecto porque se me hizo pesado y empecé con Game Maker. Creo que fue una muy buena decisión. Con Game Maker no aprendí ningún lenguaje de programación, pero aprendí su lógica y, para empezar, es lo mejor que puedes aprender. Estuve 2 años más o menos desarrollando algunos juegos "casuals" en GM, pero nada serio.
Entonces, en 2013, cuando comprendía y estaba familiarizado con la lógica de programación, decidí que era el momento de aprender un lenguaje de programación. Ese fue el momento en el que me hice la pregunta del inicio de la entrada: "¿por dónde empiezo?". Entonces, pensé: "Si quiero aprender algo, primero tengo que saber cuántas opciones hay y evaluar cuál es la mejor". Seguidamente busqué con qué lenguaje de programación debía empezar y di con "Python" debido a sus posibilidades y "potencia". En ese momento me pregunté otra vez la misma pregunta pero esta vez no sabía la respuesta. Tuve la suerte de que un amigo me envió un curso en línea donde llegaría a aprender HTML, CSS, un poco de JAVASCRIPT y PYTHON.
Bien, tal vez mi historia no te sirva de mucho, pero creo que es interesante conocer el camino que han seguido otras personas como yo. Me centraré en esta última parte puesto que la respuesta a la pregunta está en ella. De todos modos, quiero enfatizar los 2 años en los que estuve usando Game Maker.
Si eres principiante y no sabes nada sobre programación ni su lógica, te recomiendo que comiences desarrollando algunos juegos o aplicaciones con aplicaciones de desarrollo con entorno gráfico como pueden ser Game Maker, si quieres desarrollar juegos, o App Inventor, si prefieres desarrollar aplicaciones para Android. Aquí tienes los enlaces para descargarlos:
- Game Maker: http://www.yoyogames.com/studio
- App Inventor: http://www.appinventor.org/
Estas aplicaciones te permiten programar sin saber ningún lenguaje de programación (Qué ironía, ¿verdad? Ya te darás cuenta de que no lo es.). Es como hacer puzzles y ... ¡Es divertido!
Recuerda que el paso por este tipo de desarrollo es temporal, exactamente hasta que te familiarices con las lógicas de programación.
Una vez que estés familiarizado con la lógica de programación, lo siguiente que puedes hacer es aprender llevando a cabo un curso en línea, pero primero tienes que elegir un lenguaje. El más apropiado depende de lo que quieras hacer, así que aquí tienes algunas opciones.
- "Quiero desarrollar videojuegos": Bueno, te interesa aprender C#, lenguaje usado en muchos motores de juego y similar a JAVA. También es bastante recomendable C++, usado en motores como Unreal Engine.
- "Quiero desarrollar aplicaciones móviles": Entonces te interesa aprender JAVA y, como he dicho, es similar a C#.
- "Quiero desarrollar páginas web": Muy bien, es más fácil de lo que piensas. Tienes que aprender HTML y CSS, ambos son lenguajes muy fáciles. Posteriormente ya te tienes que embaucar en JAVASCRIPT que...
- "No me importa (o no lo sé todavía), quiero programar": Está bien, entonces te recomiendo Python. Como ya he explicado en mi historia, es un lenguaje potente y útil para muchas cosas.
El siguiente paso es buscar un curso del lenguaje que elijas. Aquí te dejo algunas recomendaciones de los cursos que puedes hacer.
- Para C # puedes empezar a ver este curso: https://www.youtube.com/playlist?list=PL7rVTwUzzPyJs6bfjFYRSVzOs_nnWuUqy
- Para JAVA te recomiendo encarecidamente que sigáis este (es un curso sobre desarrollo de apps para android en el que enseñan XML y JAVA): https://www.udacity.com/course/android-development-for-beginners--ud837
- Para python te recomiendo codecademy.com
Completar algunos de estos cursos te hará capaz de iniciar tu fascinante aventura en el mundo de la programación y de comenzar cualquier proyecto que tengas en mente. Pero tienes que tener en cuenta una cosa: esos cursos solo te enseñan lo básico, para aprender más la mejor manera es haciendo tus propios proyectos y buscando lo que no sabes / lo que necesitas, es decir, con la experiencia.
Otra cosa que debes saber es que cuando ya sabes un lenguaje puedes aprender fácilmente otro nuevo. Por lo tanto, no importa si tu elección no ha sido la más acertada, siempre serás capaz de aprender un nuevo lenguaje más rápido ;).
Y nada más, creo (y espero) que he aclarado tus dudas. Si no, puede ponerte en contacto con nosotros en twitter (@inphyxstudios) o por correo electrónico (contact@inphyx.com). ¡No dudes en dejarnos tu opinión!
¡Saludos!
- Sergi [Atenrev: @AtenrevCode]