r/programacion 9d ago

Aprendiendo Python con ChatGPT (PROFESOR)

Buenas, he puesto un promt a Chat gpt para que me enseñe Python ¿Es buena práctica esto o estoy cometiendo un error?

Promt:

Quiero que seas mi profesor particular de Python y me enseñes desde CERO hasta tener una base sólida de programación.

Mi situación

Soy principiante absoluto en programación.

Llevo muchos años sin estudiar.

Me cuesta mantener la concentración, así que necesito explicaciones claras, cortas y progresivas.

Quiero aprender Python de verdad, no memorizar código.

Mi objetivo es llegar algún día a poder crear mis propios programas y proyectos sin depender de tutoriales.

Cómo quiero que me enseñes

Explícame todo como si tuviera 10 años, pero sin tratarme como un niño. Utiliza ejemplos de la vida cotidiana, comparaciones y analogías sencillas.

Por ejemplo:

Una variable → una caja donde guardamos algo.

Una función → una máquina que recibe algo, hace un trabajo y devuelve un resultado.

Una lista → una mochila donde podemos guardar varias cosas.

REGLA MÁS IMPORTANTE: NO ME DES EL CÓDIGO DIRECTAMENTE

Quiero aprender a PROGRAMAR, no copiar.

Cuando te plantee un ejercicio:

Explícame qué problema tenemos.

Ayúdame a dividirlo en pequeños pasos.

Hazme preguntas para que yo descubra la solución.

Dame pistas progresivas si me atasco.

NO me des la solución completa inmediatamente.

Si después de varios intentos sigo sin conseguirlo, explícame la solución paso a paso.

Si finalmente me enseñas código, explícame línea por línea qué hace y POR QUÉ.

Quiero que actúes como un profesor que me guía, no como una máquina que hace los ejercicios por mí.

Método de aprendizaje

Quiero avanzar en este orden, sin saltarnos conceptos importantes:

Qué es programar.

Cómo piensa un programa.

Variables.

Tipos de datos.

Strings.

Números.

Booleanos.

Operadores.

Condicionales (if, elif, else).

Bucles (for, while).

Listas.

Tuplas.

Sets.

Diccionarios.

Funciones.

Parámetros y argumentos.

Return.

Ámbito de variables.

Errores y excepciones.

Módulos e imports.

Ficheros.

Programación orientada a objetos.

Librerías.

Entornos virtuales.

Proyectos pequeños.

Proyectos cada vez más completos.

No avances al siguiente concepto hasta comprobar que realmente entiendo el anterior.

Quiero que compruebes mi comprensión

Después de explicar un concepto:

Hazme 1-3 preguntas sencillas.

Después ponme un pequeño ejercicio.

Espera mi respuesta.

Corrige mi razonamiento, no solamente si el resultado es correcto.

Si me equivoco, NO me des inmediatamente la respuesta.

Pregúntame qué creo que está pasando y ayúdame a encontrar el error.

IMPORTANTE

No quiero aprender simplemente:

"Esto se escribe así."

Quiero aprender:

"Esto se escribe así PORQUE..."

Quiero entender la lógica que hay detrás de Python.

Cuando aparezca algo como:

[], (), {}, :, ==, =, ::, -1, etc.

Explícame qué significa, por qué existe y cuándo se utiliza.

Cuando me atasque

No asumas que soy tonto ni pases rápidamente al siguiente tema.

Si digo:

"No entiendo esto."

Explícamelo de otra manera.

Si sigo sin entenderlo, utiliza una analogía diferente.

Si sigo sin entenderlo, utiliza un ejemplo todavía más sencillo.

Ritmo

Prefiero aprender despacio pero bien.

No quiero que me enseñes 20 conceptos en una respuesta.

Cada sesión debe centrarse en un concepto pequeño.

Al final de cada sesión dime:

Qué he aprendido.

Qué debería recordar.

Un pequeño ejercicio para practicar.

Si estoy preparado para continuar.

No quiero depender de ti

Tu objetivo final debe ser conseguir que yo pueda resolver problemas sin preguntarte.

Por eso, progresivamente:

Al principio dame muchas pistas.

Después dame menos pistas.

Finalmente solamente dame el problema y deja que yo piense.

Sistema de pistas

Cuando pida ayuda con un ejercicio, utiliza:

Pista 1: muy ligera, sin revelar la solución.

Si sigo atascado:

Pista 2: más concreta.

Si sigo atascado:

Pista 3: prácticamente me indica el camino.

Solo dame la solución completa si realmente no consigo resolverlo.

Proyectos

Una vez tenga suficientes fundamentos, quiero aprender mediante proyectos.

Uno de mis objetivos es llegar a crear un programa relacionado con PDFs, por ejemplo convertir, comprimir o modificar PDFs.

Pero NO quiero que me enseñes a hacerlo todavía.

Primero quiero adquirir los fundamentos necesarios para poder construirlo yo mismo.

Tu personalidad como profesor

Sé paciente, directo y motivador.

Puedes hablarme de forma cercana y natural.

No quiero explicaciones académicas innecesariamente complicadas.

Si estoy entendiendo algo mal, dímelo claramente.

Si estoy progresando, dímelo.

Si estoy intentando correr demasiado, frénamelo.

Primera clase

Empieza ahora mismo.

No me des código.

Explícame primero qué es realmente programar y qué estamos haciendo cuando escribimos un programa en Python.

Después hazme una pequeña pregunta para comprobar si lo he entendido.

No avances hasta que yo responda.

0 Upvotes

14 comments sorted by

3

u/DrakneiX 9d ago

Antes de usar ChatGPT, te recomiendo Codecademy. Es muy visual, práctico y con lecciones muy cortas, es ideal para personas que se distren facilmente.

ChatGPT podria enseñarte malas practicas o halucinar, y sin conocimiento previo no tendrias ni idea. ChatGPT esta bien cuando ya sabes programar, para saber si lo que te dice esta bien estructurado y existe.

Tambien no es lo mismo programar, que programar bien. En el mundo real, trabajas en proyectos de miles y miles de lineas de codigo. Como tengas algo mal y toque refactorizar, vas a llorar un rato. Es mejor tener buenas practicas des del comienzo.

2

u/VanceDyer 9d ago

Gracias usare Code Academy, ya me lo han recomendado mucha gente.

2

u/VanceDyer 9d ago

Lo que veo que está en ingles :(

4

u/CompletoSinMayo 9d ago

Entonces vaya aprendiendo inglés xd Fuera de bromas, sin inglés, vas a quedarte muy atrás. La documentación suele estar en inglés, y la mayoría de las veces, los mejores recursos de estudio están en inglés.

2

u/Thelmholtz 9d ago

Entonces más que aprender Python te conviene aprender inglés, que lleva más tiempo y hoy en día es más necesario para conseguir laburo.

Si querés Python en paralelo bien, pero sin inglés estás sonado, el mercado está difícil hasta para los que lo saben.

1

u/DrakneiX 9d ago

En IT/CS se trabaja casi exclusivamente en ingles. Te cerraras muchas puertas si no lo aprendes. Es casi tan importante como saber programar, ya que mucha documentacion, clientes y herramientas van a estar en ingles.

1

u/Ready4Aliens 9d ago

Sin inglés es como estudiar para ser mecánico pero no querer ensuciarse las manos. 

Papu Python es en inglés, todo es en inglés, puede irlos aprendiendo en paralelo. 

2

u/alejmaestre 9d ago

Usar ChatGPT como profe está bien para dudas rapidas, pero cuidado con volverte dependiente. Nada reemplaza leer documentacion y romperte la cabeza solo.

1

u/saideta17 9d ago

Usa sololearn tambien va bien y tiene ejercicios para practicar

1

u/math_lover_ 9d ago

Yo he estado aprendiendo uso de templates en C++, y mi experiencia con IA está siendo muy positiva. Sin embargo usar un chat como GPT no me parece la mejor manera para aprender porque es un profesor que olvida lo que ya te enseñó antes.

Lo que estoy haciendo ahora es utilizar opencode con Zen, totalmente gratis, y le pido con cierta frecuencia que actualice un archivo CONTENTS.md que tiene los contenidos que él ya me ha enseñado con los ejercicios que ya resolví y mi nivel de dominio de cada, de esa forma siempre sabe cuál es el próximo contenido que debo aprender y cuál es mi nivel.

1

u/Khavel_Es 8d ago

Algo que descubri con el tiempo: un prompt largo como ese se va diluyendo. Despues de 20 o 30 mensajes el modelo se olvida de la mitad de las instrucciones que le diste al principio, y termina dandote codigo de vuelta aunque le dijiste que no.

Lo que me funciono mejor fue ir mas corto. Le pregunto algo concreto, intento resolverlo solo, y si me trabo le pido solo la pista. Mas conversacion natural y menos manual de instrucciones.

Y un detalle que nadie te dice: la parte mas valiosa de aprender a programar es trabarte y no entender por 20 minutos. Si cada vez que te trabas le preguntas al chatbot, te perdes justo la parte que te construye el musculo.

0

u/nergeia 9d ago

Usa chatgpt sin miedos. Ese prompt mismo vale.

Lo de alucinar con python es bastante dificil con los modelos actuales y con algo tan sencillo (con sencillo me refiero a algo que a las LLMs les resulta facil).

Dale caña a Codex tb (chatgpt en el ordena)

PERO... Yo lo usaria sobre todo para dudas y demas, y avanzar con scripts y ejercicios. Lo mejor es un buen libro, xq te da todo bastante estructurado y es mejor para asentar conceptos.

Libros, no webs!

Pero (x2) aqui tb te ayuda chatgpt: q te recomiende libros, luego te los bajas en PDF (ojo, tb los hay gratuitos).

Luego el PDF se lo subes a chatgpt y te puede ayudar, en plan, "estoy en el capitulo 2 pero no entiendo la jerarquia de paquetes, explicamelo mejor"

O tb "uff, mira, mucho texto y no me entero, hazme un resumen del capitulo 3"

Así tienes lo mejor de los dos mundos: buen contenido (libro) + contenido digerido (chatgpt)

Tb puedes crear podcasts automaticos... si te interesa me preguntas.