Mesa de aprendizaje con un modelo de edificio, ordenador y materiales para practicar programación aplicada a BIM.

Aprender programación con IA: un tutor potente que también se equivoca

Pides un script, lo ejecutas y falla. Escribes «corrígelo» y recibes otro que tampoco entiendes, pero ocupa más. A la tercera vuelta la conversación lleva un ritmo formidable y tu aprendizaje sigue esperando a que alguien lo invite. Como servicio de producción de código es un espectáculo; como método de estudio, bastante mejorable. Hoy me toca explicar cómo pedir ayuda sin subcontratar también la parte de pensar. Una sutileza que merecía su propio artículo, al parecer.

La inteligencia artificial puede ayudarte a aprender programación si la utilizas para descomponer problemas, contrastar hipótesis y practicar. También puede encargarse de casi todo el esfuerzo intelectual y dejarte el privilegio de pulsar ejecutar. Vamos a recorrer un ejemplo hipotético de revisión de nombres de vistas en Revit para distinguir esas dos situaciones. El objetivo será construir una herramienta pequeña que puedas explicar y modificar, incluso el día que el asistente no tenga una respuesta convincente.

Tabla de contenidos

Elige un ejercicio que puedas entender antes de automatizarlo

En el ejemplo queremos localizar vistas cuyos nombres incumplen una convención del proyecto. Primero hay que escribir esa convención y reunir nombres correctos, incorrectos y excepciones. También decidir si entran plantillas, vistas dependientes o determinadas clases de vista. La frase «revisa los nombres» deja todo eso pendiente. Pedir directamente el script obliga al asistente a rellenar los huecos, y sus decisiones pueden parecer tuyas porque aparecen dentro de un código que funciona.

Un primer uso provechoso de la IA consiste en pedir que descomponga la tarea y haga preguntas sobre lo que falta. Puedes describir el problema sin compartir el modelo: «Necesito revisar estos nombres ficticios, la regla es esta y todavía no quiero cambiar nada». Si la respuesta introduce condiciones nuevas, revísalas. El asistente propone un camino; quien conoce el proceso debe decidir qué partes corresponden al encargo. Un nombre plausible para una función no demuestra que se haya entendido el trabajo.

Separa la regla de la conexión con Revit. Una función que recibe un nombre como texto y devuelve un resultado puede practicarse con Python sin abrir el modelo. Después habrá otra parte que recoja las vistas y entregue sus nombres a esa función. Esta división hace visible qué estás aprendiendo en cada momento. Si mezclas expresiones regulares, selección de elementos, transacciones y exportación en tu primer ejercicio, cualquier error podrá esconderse en un edificio bastante grande.

Define una meta que puedas comprobar: explicar las entradas, anticipar el resultado de varios ejemplos y cambiar una condición sin regenerar el programa entero. Haber obtenido un script no acredita esas tres cosas. Tampoco necesitas aprender todas las técnicas para empezar. Un ejercicio pequeño puede enseñarte variables, funciones, condiciones y pruebas con bastante más profundidad que veinte soluciones espectaculares que no sabes adaptar.

Pide ayuda que conserve una parte del trabajo en tus manos

Cuando te atasques, prueba primero con una pista: qué concepto conviene revisar o qué dato observar. Si no basta, pide pseudocódigo; después, un fragmento pequeño. El orden importa porque mantiene una oportunidad real de resolver el problema. Leer una solución y reconocerla puede resultar cómodo, pero no garantiza que puedas construirla ante otro caso. Es la diferencia entre entender una receta cuando la ves y saber qué hacer cuando falta un ingrediente.

En la función de nombres, pide al asistente que proponga entradas difíciles antes de enseñarte su implementación. Tú decides qué resultado debería producir cada una. Después compara el código con esas expectativas. Si aparece una excepción al formato que nadie había considerado, detente a decidirla. El ejercicio enseña tanto a formular una regla como a escribirla; dejar que la IA escoja el resultado esperado convierte la prueba en un examen que el alumno ha redactado y corregido para sí mismo.

Otra ayuda útil es explicar tu solución de vuelta. Describe por qué filtras una vista, qué significa cada estado y por qué una cadena vacía no se trata igual que un nombre válido. Pide que busque contradicciones en esa explicación, no solo que felicite el código. Si no puedes describir una línea, investígala. El texto generado puede ser elegante y seguir ocultando una decisión que todavía no has tomado.

Reserva también sesiones sin asistente. Intenta reconstruir la función a partir de los requisitos o cambiar una condición con la documentación delante. No necesitas convertir cada ejercicio en una prueba de resistencia; necesitas observar qué puedes hacer ya por tu cuenta. Si la ayuda disminuye al avanzar, está cumpliendo su propósito. Si cada nueva línea exige otra consulta, quizá convenga volver a un ejercicio más sencillo antes de añadir otro sistema.

Comprueba el entorno y convierte los errores en hipótesis

Python puede ejecutarse fuera de Revit o dentro de un entorno que exponga su API, con motores y dependencias distintos. Antes de pedir código identifica el host, las versiones y la manera de acceder al documento. Esa información evita mezclar ejemplos que se parecen visualmente pero pertenecen a entornos diferentes. Decir «uso Revit» orienta; todavía no explica cómo se ejecutará el fragmento. Los asistentes no adquieren telepatía por conocer el nombre del producto.

Cuando una respuesta mencione una clase o propiedad, búscala en la documentación oficial de la versión que utilizas. La guía de filtrado de la API de Revit permite contrastar cómo seleccionar elementos. El interés no está en memorizar todas las llamadas, sino en aprender a verificar sus tipos, condiciones y resultados. Una respuesta que enlaza una fuente merece revisión; una que no la enlaza también.

Ante un error, conserva qué esperabas, qué recibiste y el mensaje concreto. La explicación oficial de errores y excepciones de Python ayuda a leer el tipo de fallo y su localización. Pide varias causas posibles y una comprobación para distinguirlas. Después ejecuta una prueba pequeña. Sustituir todo el script por otra propuesta puede hacer desaparecer el mensaje sin enseñarte qué lo provocaba, una victoria modesta para quien pretendía aprender a depurar.

Conviene observar valores intermedios: cuántas vistas se han obtenido, cuántas se excluyen y qué nombre recibe la función. Si la lista llega vacía, el problema puede estar antes de la regla. Si los nombres se leen bien pero se clasifican mal, la investigación cambia. Esta forma de trabajar reduce el misterio del código generado y hace tus preguntas más precisas. El asistente empieza a ayudarte con un diagnóstico en lugar de participar en una lotería de versiones.

Termina una herramienta pequeña y demuestra que la puedes cambiar

La primera entrega del ejercicio debería limitarse a informar: vista, nombre observado, condición y resultado. Comprueba casos conocidos y explica las exclusiones. No hace falta añadir una corrección automática para que el aprendizaje sea valioso. Si después decides escribir cambios, utiliza una copia de prueba, prepara una propuesta con el valor anterior y el nuevo, y verifica los efectos. La documentación de transacciones de Revit establece el contexto necesario para modificar el documento; no es un detalle que se pueda resolver por intuición.

Conserva los ejemplos que detectaron fallos y vuelve a ejecutarlos después de modificar la función. Si el asistente arregla un caso y rompe otros dos, la mejora aún está pendiente. Pide cambios acotados y revisa la diferencia, en lugar de aceptar una reescritura completa por cada atasco. Esa continuidad te permite mantener un modelo mental de la herramienta. El código del ejercicio debería ser cada vez más tuyo en el sentido práctico: sabes por qué existe y qué consecuencias tiene tocarlo.

Trabaja con datos ficticios o autorizados y comprueba las condiciones de la herramienta antes de compartir información del proyecto. Los ejemplos para aprender no necesitan credenciales, nombres de clientes ni documentos internos. Si incorporas dependencias o distribuyes código, revisa sus licencias y las reglas de tu organización. Son decisiones concretas que acompañan al trabajo; el asistente puede ayudarte a localizarlas, pero no sustituye su comprobación.

Para cerrar el ejercicio, añade una regla nueva sin pedir el programa completo. Explica qué parte reutilizas, qué pruebas cambian y qué límites siguen presentes. Después intenta otro caso, como revisar códigos de habitaciones, conservando la separación entre lectura, evaluación e informe. Esa transferencia demuestra más aprendizaje que una carpeta llena de scripts independientes. La IA seguirá siendo útil para explorar y revisar, pero ya no tendrá que reconstruirlo todo cada vez que aparezca un error.

Prueba algo incómodo: cierra el chat y explica una función con tus palabras. Después cambia una regla y anticipa qué debería ocurrir. Si solo puedes recuperar el control pidiendo el programa entero otra vez, todavía no has aprendido esa parte. No pasa nada por volver a un ejercicio más pequeño; fingir autonomía mientras consultas cada punto y coma resulta bastante más cansado.

Artículos relacionados

Respuestas

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *