CPIAE: Arquitectura Python No Bloqueante Basada en Edge Computing para la Educación en Programación Asistida por IA con Retroalimentación Contextual
Palabras clave:
edge computing, WebAssembly, Web Worker, Pyodide, asistencia IAResumen
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
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
Número
Sección
Licencia
Derechos de autor 2026 Guillermo Sentoni

Esta obra está bajo una licencia internacional Creative Commons Atribución-NoComercial-CompartirIgual 4.0.
Acorde a estos términos, el material se puede compartir (copiar y redistribuir en cualquier medio o formato) y adaptar (remezclar, transformar y crear a partir del material otra obra), siempre que a) se cite la autoría y la fuente original de su publicación (revista y URL de la obra), b) no se use para fines comerciales y c) se mantengan los mismos términos de la licencia.














