¿Qué camino seguir para aprender a programar?

Mensajes
2
Oro
1,449
Hoy estaba sentado frente a mi laptop y decidí tocar de verdad el mundo de la informática más enfocado en la programación, pero meterle con ganas, claro está que todo aprendizaje tiene que seguir una linea. ¿Qué tema estudiar primer? Se un poco ya que me gusta invetar en mi tiempo libre y ver tutoriales . Pero como comvertir lo que hago en realidad sin aprender temas que no voy a necesitar en el futuro o viceversa.
 
Primero elige un lenguage. Yo sugiero Python porque es el más sencillo de aprender y puedes empezar a crear antes pero eventualmente vas a tener que aprender un lenguage de bajo nivel como C o Go.
Trastea un poco con el lenguage y aprende un poco de desarollo web o scraping para que veas si te gusta.

Tienes que tener una base sólida en estructudas de datos y algoritmos, y conocimientos matemátcos maduros.
  • No uses IDEs al principio
  • Lee lo que escribiste antes de compilar/ejecutar
  • Importar librerías—configurar un JSON no te aporta conocimiento
  • Aprende a trabajar con el OS
  • Lee código
  • Disfruta el viaje y no trates de hacer todo a la vez.

Ah, sí. Y aprende inglés.
Guía de otro colega
https://rentry.co/enqe4
https://b-ok.cc
Introduction to algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein (z-lib.org).pdf

https://learnaifromscratch.github.io/software.html
 
En adición a lo que dijo ...

Es un campo muy amplio, así que el camino depende de a dónde quieras llegar. Por ejemplo, la programación web no se parece mucho la de dispositivos embebidos.

Respecto al lenguaje, Python y Ruby -ambos de alto nivel- son buenos para empezar. Por otro lado, algunos recomiendan comenzar con un lenguaje de bajo nivel, como C o incluso Assembly. Mientras que estos últimos no son precisamente fáciles de aprender sin experiencia previa, mucho menos de usar eficientemente, te enseñarán varias cosas que los de alto nivel no.

También, te sugiero usar un sistemas operativo FOSS, preferiblemente tipo UN*X como GNU/Linux o FreeBSD. Hay ciertas ventajas en esto, ej. ver cómo funcionan las cosas por dentro o (al menos en el caso de C) una API consistente y bien documentada.

Por último, ya está de más que lo diga, pero ten en mente que no es la sintaxis lo que hace difícil la programación, si no la lógica.
 
Hoy estaba sentado frente a mi laptop y decidí tocar de verdad el mundo de la informática más enfocado en la programación, pero meterle con ganas, claro está que todo aprendizaje tiene que seguir una linea. ¿Qué tema estudiar primer? Se un poco ya que me gusta invetar en mi tiempo libre y ver tutoriales . Pero como comvertir lo que hago en realidad sin aprender temas que no voy a necesitar en el futuro o viceversa.
Empiexa con Python es el lenguaje más fácil, luego cuando lo domines bien adentrate en C++ Java etc, usa tutoriales de YouTube webs, Platzi o vete pa la UCI

Si lo que quieres es hacer juegos, una ves que domines los lenguajes al menos de una forma decente, empiesa con Godot engine que es uno de los motores más fáciles, luego ya vas entrando en Unity y Unreal
 
Gracias a todos por la ayuda...la verdad es que me gusta la idea de hacer cosas épicas con la programación como está página q es algo super donde la gente aprende
Pos mira la casualidad me acabo de registrar pues mira yo soy programador Kindler osea novato es cierto que se html y CSS y un poco de php pero esos lenguaje solo son para desarrollo web y solo el frontend haci q decidi aprender Python3 y a que no sabes que estoy haciendo en el estoy desarrollando una asistente IA (inteligencia artificial) como la de Google como dije que soy nuevo la estoy desarrollando en la terminal y osea que no tiene interfaz gráfica pero te das cuento las increíbles creaciónes que se pueden hacer Python3 a y solo llevo aprendiendo 2 semanas
 
a que no sabes que estoy haciendo en el estoy desarrollando una asistente IA (inteligencia artificial) como la de Google
Como dije allá arriba: usar librerías no te enseña nada.
Si vas a aprender Python úsalo para automatizar los tests de tus sitios web con requests o selenium, o aprende a usar flask (o django) y conviértete en "fullestá" en lugar de hacerte autofelaciones con Inteligencia Artificial.

Nota aparte: si sabes de front-end no tengo idea de porqué no puedes hacerle una interfaz gráfica.
 
Pos mira la casualidad me acabo de registrar pues mira yo soy programador Kindler osea novato es cierto que se html y CSS y un poco de php pero esos lenguaje solo son para desarrollo web y solo el frontend haci q decidi aprender Python3 y a que no sabes que estoy haciendo en el estoy desarrollando una asistente IA (inteligencia artificial) como la de Google como dije que soy nuevo la estoy desarrollando en la terminal y osea que no tiene interfaz gráfica pero te das cuento las increíbles creaciónes que se pueden hacer Python3 a y solo llevo aprendiendo 2 semanas
Ignorando las grandiosas aspiraciones -muy probablemente en un futuro próximo te darás cuenta de que no es tan fácil como crees-, parece que sabes usar las librerías, pero... sabes cómo funcionan o porqué tienes que hacer las cosas de ese modo? esto no es lo mismo que saber cómo usarlas. Algo más sencillo: obviamente sabes asignar un atributo a un objeto, pero sabes qué ocurre cuando lo haces? más allá de "ahora x.y contiene una referencia al objeto z", o en qué se diferencia de cuando asignas una variable local?

Qué pasaría si llevamos esa mentalidad a otro campo? Algunas librerías te dejan usar RSA y AES sin saber casi nada. Es fácil ver cómo puede salir mal, y muchas veces ha sido fuente de vulnerabilidades.

Este el problema con hacer las cosas sin comprender lo que haces: no sólo dificulta la optimización, también te hace propenso a los bugs.
 
Según lo que vayas a programar elige uno (o varios) lenguajes:
  • Desarrollo web (Python, HTML, JS, CSS, PHP)
  • Aplicaciones de Terminal (Java, C/C++, C#, casi todos los lenguajes de programación)
  • Aplicaciones instalables (Según la plataforma puede ser Java y XML para Android, C/C++ para Windows y sobremesa y JS/HTML5/CSS para multiplataforma)
 
Aplicaciones instalables (Según la plataforma puede ser [...] JS/HTML5/CSS para multiplataforma)
Sólo si quieres un "hola, mundo" elefantino que use mucha más memoria y ciclos de lo necesario. Una mejor opción para aplicaciones GUI (por el contexto supongo que sea esto lo que quieres decir), también multiplataforma, sería C++ -o Python- con Qt u otro framework que provea abstracción.
 
Sólo si quieres un "hola, mundo" elefantino que use mucha más memoria y ciclos de lo necesario. Una mejor opción para aplicaciones GUI (por el contexto supongo que sea esto lo que quieres decir), también multiplataforma, sería C++ -o Python- con Qt u otro framework que provea abstracción.
A lo que me refiero es a juegos que sean ejecutables desde prácticamente cualquier terminal, a menos que no interprete HTML5, pero tienes razón en que en apps GUI esos (C++, Python) son los mejores.
 
Primero elige un lenguage. Yo sugiero Python porque es el más sencillo de aprender y puedes empezar a crear antes pero eventualmente vas a tener que aprender un lenguage de bajo nivel como C o Go.
Trastea un poco con el lenguage y aprende un poco de desarollo web o scraping para que veas si te gusta.

Tienes que tener una base sólida en estructudas de datos y algoritmos, y conocimientos matemátcos maduros.
  • No uses IDEs al principio
  • Lee lo que escribiste antes de compilar/ejecutar
  • Importar librerías—configurar un JSON no te aporta conocimiento
  • Aprende a trabajar con el OS
  • Lee código
  • Disfruta el viaje y no trates de hacer todo a la vez.

Ah, sí. Y aprende inglés.

https://rentry.co/enqe4

https://b-ok.cc

Introduction to algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein (z-lib.org).pdf

https://learnaifromscratch.github.io/software.html
Ver el archivos adjunto 2468

f3b890280dd6a2b2777726215c26d96d.jpg
 
Preguntare algo, porque ya estoy avanzado en python para volver atras con otro lenguaje, y creo poder seguir adelante porque entiendo todo, es obligado saber otros lenguajes para aprender python y ser un buen programador? cuando los propios programdores de YouTube desvaloran hasta el propio ingles si no lo sabes?
 
Preguntare algo, porque ya estoy avanzado en python para volver atras con otro lenguaje, y creo poder seguir adelante porque entiendo todo, es obligado saber otros lenguajes para aprender python y ser un buen programador? cuando los propios programdores de YouTube desvaloran hasta el propio ingles si no lo sabes?
Los cursos de YouTube son cursos gratis, por tanto, siempre van a omitir alguna que otra cosa con tal de hacerlos más directo al tema, obviando conceptos y cosas por el estilo; lógicamente debes saber inglés, no solo para programar, sino porque te sirve para miles de cosas más.

PD: palabras de Conejito Travieso
 
Preguntare algo, porque ya estoy avanzado en python para volver atras con otro lenguaje, y creo poder seguir adelante porque entiendo todo, es obligado saber otros lenguajes para aprender python y ser un buen programador? cuando los propios programdores de YouTube desvaloran hasta el propio ingles si no lo sabes?
Mientras mas abarques mas oportunidades tienes, pero cuidado que dicen que el que mucho abarca poco aprieta.
 
Este dominio hace mucho tiempo fue retenido por el FBI. Ten más cuidado con los recursos que compartes.

Los cursos de YouTube son cursos gratis, por tanto, siempre van a omitir alguna que otra cosa con tal de hacerlos más directo al tema, obviando conceptos y cosas por el estilo; lógicamente debes saber inglés, no solo para programar, sino porque te sirve para miles de cosas más.
Pudiste haber utilizado eso en un mejor contexto. Pero sí. No saber inglés es también una manera de chocar con un límite y estancarse.
 
Atrás
Arriba