Un equipo de Cornell ha creado una interfaz que permite a los usuarios escribir a mano y hacer bocetos dentro del código informático, un desafío a la codificación convencional, que suele basarse en el tecleo.
La interfaz basada en un bolígrafo, llamada Notate, permite a los usuarios de cuadernos digitales computacionales -como los cuadernos Jupyter, que están basados en la web y son interactivos- abrir lienzos de dibujo y escribir a mano diagramas dentro de las líneas de código informático digitalizado tradicional.
Puede leer también | Python y las razones de su popularidad y liderazgo como mejor lenguaje de programación
Gracias a un modelo de aprendizaje profundo, la interfaz tiende un puente entre los contextos de programación manuscrita y textual: La notación en el diagrama manuscrito puede hacer referencia al código textual y viceversa. Por ejemplo, Notate reconoce los símbolos de programación escritos a mano, como la "n", y los vincula con sus equivalentes mecanografiados. En un estudio de caso, los usuarios dibujaron diagramas de circuitos cuánticos dentro de las celdas de código del cuaderno Jupyter.
Puede leer también | Python mejor lenguaje de programación para algoritmos comerciales
La herramienta se describe en "Notational Programming for Notebook Environments: A Case Study with Quantum Circuits", presentado en el ACM Symposium on User Interface Software and Technology, celebrado del 29 de octubre al 2 de noviembre en Bend, Oregón. El trabajo, cuyo autor principal es Ian Arawjo, estudiante de doctorado en el campo de las ciencias de la información, obtuvo una mención honorífica en la conferencia.
Puede leer también | 3 Bibliotecas especiales de Python para la programación de Visión Computacional
"Un sistema como éste sería estupendo para la ciencia de los datos, en concreto para trazar gráficos y diagramas que luego interoperan con el código textual", dijo Arawjo. "Nuestro trabajo demuestra que la infraestructura actual de programación nos está frenando. La gente está preparada para este tipo de funciones, pero los desarrolladores de interfaces para teclear código tienen que tomar nota de esto y dar soporte a imágenes e interfaces gráficas dentro del código."
Arawjo dijo que el trabajo demuestra un nuevo camino hacia adelante al introducir la codificación basada en el lápiz y potenciada por la inteligencia artificial en un momento en que las tabletas de dibujo son cada vez más utilizadas.
Puede leer también | Python sigue liderando como mejor lenguaje de programación
"Herramientas como Notate son importantes porque nos abren a nuevas formas de pensar en lo que es la programación y en cómo diferentes herramientas y prácticas de representación pueden cambiar esa perspectiva", dijo Tapan Parikh, profesor asociado de ciencias de la información en Cornell Tech y coautor del trabajo.
Otros coautores son: Anthony DeArmas '22; Michael Roberts, estudiante de doctorado en el campo de la informática; y Shrutarshi Basu, doctor '18, actualmente profesor asistente visitante de informática en el Middlebury College. Con información de News Cornell.
Puede probar en el siguiente enlace las plataformas para empezar a desarrollar en los lenguajes de programación c++, julio, Kotlin, R, Ruby y Python: https://jupyter.org/try
Otros artículos asociados:
- Carbon, el lenguaje de programación de Google, el sucesor de C++
- Los mejores lenguajes de programación de Inteligencia Artificial para el 2022
- Los 10 principales lenguajes de programación que todo estudiantes de secundaria deberían de dominar