CPIAE: Arquitectura Python No Bloqueante Basada en Edge Computing para la Educación en Programación Asistida por IA con Retroalimentación Contextual

Autores/as

Palabras clave:

edge computing, WebAssembly, Web Worker, Pyodide, asistencia IA

Resumen

Este trabajo presenta CPIAE, una arquitectura edge que provee entornos Python científicos como artefactos web autocontenidos para la educación en programación. El sistema ejecuta un runtime Python completo en el navegador mediante Pyodide/WebAssembly, sin infraestructura de servidor. La contribución central es un modelo de ejecución no bloqueante basado en un Web Worker dedicado, que desacopla la computación del hilo de interfaz y preserva la interactividad durante tareas intensivas como el entrenamiento de redes neuronales. Esto resuelve el congelamiento de interfaz que afecta a todos los entornos Python síncronos en el navegador. CPIAE integra además un módulo de asistencia IA Gemini 2.5 Flash que construye automáticamente prompts de modelo de lenguaje de gran escala a partir del código activo y la salida de error del estudiante. Un avatar pedagógico 3D con síntesis de voz sincronizada a fonemas narra las respuestas. Tres contribuciones técnicas adicionales completan el sistema: una arquitectura modular desacoplada con bus EventTarget compartido; una caché de imports que elimina descargas redundantes; y una estrategia de ingeniería de prompts anclada al estado de ejecución en vivo. El sistema se desplegó en un curso universitario completo de computación neuronal en Moodle. Un estudio piloto con 15 estudiantes de grado mostró que alrededor del 80 % de los errores de ejecución se resolvieron autónomamente sin intervención docente. El artefacto de archivo único fue además verificado en un teléfono inteligente, confirmando viabilidad en cualquier navegador compatible con estándares. Estos resultados aportan evidencia empírica inicial sobre la solidez técnica y viabilidad operativa de la ejecución edge combinada con retroalimentación IA situada.

Descargas

Los datos de descarga aún no están disponibles.

Referencias

Chen, X., Lin, M., Schärli, N., & Zhou, D. (2024). Teaching large language models to self-debug. In Proceedings of the 12th International Conference on Learning Representations (ICLR 2024). https://openreview.net/forum?id=KuPixIqPiq

Corlay, S. (2025, March 12). Teaching a billion people to code: How JupyterLite is scaling the impossible. The New Stack. https://thenewstack.io/teaching-a-billionpeople-to-code-how-jupyterlite-is-scaling-the-impossible/

Droettboom, M. (2018). Scientific Python in the browser [Blog post]. Droettboom. https://droettboom.com/blog/2018/04/04/python-in-the-browser/

Drobnjak, A., & Boticki, I. (2025). Modelling virtual educational agents: Challenges of realism, performance and quality of audiovisual content. In R. A. Sottilare & J. Schwarz (Eds.), Adaptive instructional systems. HCII 2025. Lecture Notes in Computer Science, vol. 15813 (pp. 180–189). Springer. https://doi.org/10.1007/978-3-031-92970-0_13

Fink, M. C., Robinson, S. A., & Ertl, B. (2024). AI-based avatars are changing the way we learn and teach: Benefits and challenges. Frontiers in Education, 9, 1416307. https://doi.org/10.3389/feduc.2024.1416307

Haas, A., Rossberg, A., Schuff, D. L., Titzer, B. L., Holman, M., Gohman, D., Wagner, L., Zakai, A., & Bastien, J. F. (2017). Bringing the web up to speed with WebAssembly. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2017) (pp. 185–200). ACM. https://doi.org/10.1145/3062341.3062363

Jangda, A., Powers, B., Berger, E. D., & Guha, A. (2019). Not so fast: Analyzing the performance of WebAssembly vs. native code. In Proceedings of the 2019 USENIX Annual Technical Conference (USENIX ATC ’19) (pp. 107–120). USENIX Association. https://www.usenix.org/conference/atc19/presentation/jangda

Keuning, H., Jeuring, J., & Heeren, B. (2018). A systematic literature review of automated feedback generation for programming exercises. ACM Transactions on Computing Education, 19(1), 1–43. https://doi.org/10.1145/3231711

Langa, Ł. (2025, February). A peek into a possible future of Python in the browser [Blog post]. https://lukasz.langa.pl/f37aa97a-9ea3-4aeb-b6a0-9daeea5a7505/

Letteri, I., & Vittorini, P. (2025). Enhancing student feedback in data science education: Harnessing the power of AI-generated approaches. International Journal of Artificial Intelligence in Education, 35, 3071–3094. https://doi.org/10.1007/s40593-025-00492-8

Lee, S. S., & Moore, R. L. (2024). Harnessing generative AI for automated feedback in higher education: A systematic review. Online Learning, 28(3), 82–104. https://doi.org/10.24059/olj.v28i3.4593

Liu, Q., Zuo, Y., Ye, R., Chang, Y., Zhang, X., & Wu, L. (2026). Design and development of an LLM-empowered arguing pedagogical agent with a personalized avatar, movements, and voice. In Q. Liu et al. (Eds.), Educational Innovation Through Technology. EITT 2024. Communications in Computer and Information Science, vol 2600. Springer. https://doi.org/10.1007/978-981-95-1525-7_2

Ma, Q., Shen, H., Koedinger, K., & Wu, S. T. (2024). How to teach programming in the AI era? Using LLMs as a teachable agent for debugging. In Proceedings of the 25th International Conference on Artificial Intelligence in Education (AIED 2024). Lecture Notes in Computer Science, vol 14829. Springer. https://doi.org/10.1007/978-3-031-64302-6_19

Pimentel, J. F., Murta, L., Braganholo, V., & Freire, J. (2019). A large-scale study about quality and reproducibility of Jupyter notebooks. In Proceedings of the 16th IEEE/ACM International Conference on Mining Software Repositories (MSR 2019) (pp. 507–517). IEEE. https://doi.org/10.1109/MSR.2019.00077

Satyanarayanan, M., Simoens, P., Xiao, Y., Pillai, P., Chen, Z., Ha, K., Hu, W., & Amos, B. (2015). Edge analytics in the Internet of Things. IEEE Pervasive Computing, 14(2), 24–31. https://doi.org/10.1109/MPRV.2015.32

Scholz, N., Nguyen, M. H., Singla, A., & Nagashima, T. (2025). Partnering with AI: A pedagogical feedback system for LLM integration into programming education. arXiv:2507.00406. https://arxiv.org/abs/2507.00406

Shi, W., Cao, J., Zhang, Q., Li, Y., & Xu, L. (2016). Edge computing: Vision and challenges. IEEE Internet of Things Journal, 3(5), 637–646. https://doi.org/10.1109/JIOT.2016.2579198

Taylor, A., Vassar, A., Renzella, J., & Pearce, H. (2024). dcc --help: Transforming the role of the compiler by generating context-aware error explanations with large language models. In Proceedings of the 55th ACM Technical Symposium on Computer Science Education (SIGCSE 2024) (Vol. 1, pp. 1–7). ACM. https://doi.org/10.1145/3626252.3630822

Yang, B., Tian, H., Pian, W., Yu, H., Wang, H., Klein, J., Bissyandé, T. F., & Jin, S. (2024). CREF: An LLM-based conversational software repair framework for programming tutors. In Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2024) (pp. 882–894). ACM. https://doi.org/10.1145/3650212.3680328

Descargas

Publicado

2026-09-23

Número

Sección

ASSE - Argentine Symposium on Software Engineering

Cómo citar

Sentoni, G. (2026). CPIAE: Arquitectura Python No Bloqueante Basada en Edge Computing para la Educación en Programación Asistida por IA con Retroalimentación Contextual. JAIIO, Jornadas Argentinas De Informática, 12(2), 29-42. https://revistas.unlp.edu.ar/JAIIO/article/view/22004