¿Qué camino seguir para aprender a programar?

Soguer

Nuevo Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
2
Reacciones
4
Oro
561
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.
 

moist

Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
53
Reacciones
112
Oro
541
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
Biblioteca
https://b-ok.cc
El clásico
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
 

w1re

Bestia prohibida
Moderador
‏‏‎ ‎Mensajes‏‏‎ ‎
190
Reacciones
603
Oro
18.899
En adición a lo que dijo moist...

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.
 

Dolce

Nuevo Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
35
Reacciones
68
Oro
5.472
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
 

Soguer

Nuevo Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
2
Reacciones
4
Oro
561
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
 

Nickname

Nuevo Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
6
Reacciones
2
Oro
795
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
 

moist

Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
53
Reacciones
112
Oro
541
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.
 

w1re

Bestia prohibida
Moderador
‏‏‎ ‎Mensajes‏‏‎ ‎
190
Reacciones
603
Oro
18.899
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.
 

Wiikifox

Amo de los Zorros
‏‏‎ ‎Mensajes‏‏‎ ‎
81
Reacciones
137
Oro
2.814
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)
 

w1re

Bestia prohibida
Moderador
‏‏‎ ‎Mensajes‏‏‎ ‎
190
Reacciones
603
Oro
18.899
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.
 

Wiikifox

Amo de los Zorros
‏‏‎ ‎Mensajes‏‏‎ ‎
81
Reacciones
137
Oro
2.814
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.
 

Rinoa

Nuevo Miembro
‏‏‎ ‎Mensajes‏‏‎ ‎
28
Reacciones
93
Oro
1.360
Es fácil, aconsejo el camino del café :V yo personalmente no tomo café, pero tampoco sé programar :V
 

John Crowley Blackwoood

An Ordinary Ocultist
Aqva
‏‏‎ ‎Mensajes‏‏‎ ‎
466
Reacciones
877
Oro
927
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
f3b890280dd6a2b2777726215c26d96d.jpg
 

¡Hola forero! 😀 Recuerda que Universum no es un chat, acá apostamos por las publicaciones de alta calidad, por lo que deberás argumentar tus respuestas, de no hacerlo lo más probable es que tu mensaje no sea aprobado por uno de nuestros moderadores. 😢

Arriba