Según un nuevo estudio, un área en la que las herramientas de IA generativa han demostrado un potencial real es ayudar a los desarrolladores a crear software, así como las plataformas de prueba y la documentación que lo acompaña.
Se espera que las herramientas de inteligencia artificial (IA) generativa para ayudar en la creación, prueba y operación de software sean adoptadas por la mitad de todos estos ingenieros para 2027, según un estudio de Gartner. Hoy en día, solo alrededor del 5% las utilizan en la codificación. Es probable que esta cifra crezca rápidamente porque la demanda de software excede la capacidad de la mayoría de las organizaciones, los desarrolladores actuales están al límite, no pueden crear funciones lo suficientemente rápido y están menos satisfechos con su trabajo, tal y como revela el estudio.
Los productos de generación de código basados en modelos de lenguaje grandes (LLM, de sus siglas inglesas), como GitHub Copilot, Replit GhostWriter y Amazon CodeWhisper, pueden generar sugerencias complejas que resultan en un aumento de la productividad. Sin embargo, esas herramientas eliminan la necesidad de desarrolladores e ingenieros de software humanos, ya que la IA generativa aún puede producir errores y es incapaz de crear código único.
Dicho esto, dentro de dos años el 80% de las organizaciones de ingeniería de software establecerán equipos de plataforma como proveedores internos de servicios, componentes y herramientas reutilizables para la entrega de aplicaciones. Según IDC, la experimentación corporativa con IA generativa para la creación de código ocupa el segundo lugar después de su uso para la generación de texto.
El CIO de Cisco, Fletcher Previn, ha dicho que uno de los lugares que nunca esperaba que tocará esta tecnología fuera el desarrollo de software, algo que él equipara con una forma de arte que requiere habilidades únicas. Pero ChatGPT ha sido experto en la creación de código que aborda la higiene y seguridad de los datos corporativos y puede reutilizar el código para crear nuevas aplicaciones.
Un estudio de 2022 realizado por Microsoft mostró que más de la mitad de todo el código que se registra en GitHub contó con la ayuda de la IA en su desarrollo. Se espera que ese número aumente al 80% de todo el código registrado en la plataforma en los próximos cinco años, según su CEO, Thomas Dohmke.
“Históricamente, no había manera de de comprimir los plazos de desarrollo de software», dijo Previn en una entrevista anterior. “Ahora resulta que se puede obtener una aceleración significativa en la velocidad ayudando a los desarrolladores con cosas como Copilot para lecturas de código, higiene del código, seguridad y comentarios; es realmente bueno en esas cosas”.Según varios estudios, los asistentes de codificación de IA están emergiendo como aceleradores, impulsando la productividad y la felicidad de los desarrolladores. Según Gartner, al manejar tareas rutinarias, los asistentes IA generativa permiten a los desarrolladores centrarse en actividades de mayor valor, lo que permite a las organizaciones ofrecer más funciones más rápidamente con los equipos existentes.
Los asistentes de IA también aumentan la capacidad de los desarrolladores «ciudadanos» para crear rápidamente aplicaciones que satisfagan las necesidades empresariales en constante cambio. Actualmente, explica IDC, poder utilizar la IA se considera la habilidad técnica más importante.
El analista principal senior de Gartner, Philip Walsh, cree que hay tres áreas de desarrollo de software en las que se está viendo el impacto de las herramientas de IA generativa:
Las herramientas de asistencia de codificación de IA funcionan como un complemento para el entorno de desarrollo integrado de un desarrollador e incluyen capacidades como completar código o sugerir fragmentos de código para completar lo que ya se ha escrito.
Los desarrolladores también están utilizando asistentes de codificación basados ??en IA para ayudarles a generar pruebas unitarias y documentación de software. Las herramientas también se pueden utilizar para resaltar una parte del código y luego, utilizando una interfaz de chat natural, los desarrolladores pueden hacer preguntas para comprender y explicar mejor la funcionalidad de lo que están viendo.
«Sabemos que los desarrolladores a menudo trabajan para mejorar o actualizar el código que no escribieron», indica Walsh. «O tal vez la persona que desarrolló ese código ya no trabaja para la empresa. O es una aplicación heredada que no mucha gente ha tocado o comprendido en mucho tiempo».
El procesamiento del lenguaje natural integrado en el desarrollo de software mejorado con IA permite a los humanos hablar con los LLM subyacentes y probar ideas, intercambiar ideas sobre sus enfoques de codificación y recibir recordatorios sobre un marco que, por ejemplo, no se ha utilizado recientemente. Si bien es un valor difícil de cuantificar, desde una métrica cualitativa, el procesamiento del lenguaje natural refuerza la experiencia del usuario desarrollador.
Según Forrester Research, se espera que las iniciativas empresariales de IA aumenten la productividad y la resolución creativa de problemas en un 50% en los próximos años. “ A partir de múltiples inversiones realizadas durante la última década, la IA generativa está preparada para aumentar la productividad en todas las operaciones de TI. Los proyectos actuales ya citan mejoras de hasta el 40% en las tareas de desarrollo de software”, asevera Forrester en un informe reciente.
El año pasado, GitHub publicó un estudio que muestra que el 88% de los desarrolladores que utilizan su herramienta Copilot se sintieron más productivos, completaron tareas más rápido y dedicaron menos tiempo a buscar respuestas en Internet (77%). “Se sentirán más productivos. Verán que no están cambiando tanto de contenido ni buscando cosas en Stack Overflow o Google”, argumenta Walsh. «El sentimiento de los desarrolladores es relativamente alto entre ese conjunto de capacidades que aportan los asistentes de codificación de IA».
En promedio, durante el primer año en el mercado, los usuarios aceptan casi el 30% de las sugerencias de código de GitHub Copilot. Con el tiempo, la tasa de aceptación aumentó constantemente a medida que los desarrolladores se familiarizaron más con la herramienta. «Eso es una indicación de que un desarrollador se acostumbra a activar la herramienta y se acostumbra a usarla de manera más eficiente. La otra cara de la moneda es que el 60%, el 70% o el 80% de las sugerencias no se utilizan. Por lo tanto, tener un ser humano al tanto sigue siendo absolutamente esencial aquí”.
Si bien las herramientas de prueba asistidas por IA generativa, diseñadas para mejorar la capacidad de una organización para crear datos de prueba y ayudar a crear pruebas API y pruebas de regresión, no son nuevas; genAI simplemente agrega capacidades a los productos existentes.
Finalmente, las herramientas de diseño a desarrollo mejoradas con IA, como Figma, ayudan a los desarrolladores a traducir diseños en código más rápido y crear capas de presentación front-end para aplicaciones. Pero los problemas persisten en los numerosos lugares donde se ha implementado. Por ejemplo, los errores de codificación, las alucinaciones y los agujeros de seguridad siguen siendo preocupaciones constantes para las organizaciones que consideran la adopción de este tipo de herramientas.
«Aconsejamos a todos nuestros clientes que las alucinaciones son muy reales con estas cosas, pero nuestro consejo no ha cambiado en términos de cómo mitigar ese riesgo», dice Walsh. «Ya debería tener varias herramientas de análisis de calidad y seguridad como parte de su flujo de trabajo general de DevOps, y debería contar con prácticas sólidas de revisión de código en las que un ingeniero senior revise todo antes de fusionarlo».
La calidad de las herramientas de aumento de IA varía según la complejidad y la propiedad del código. Si se trata de una tarea repetitiva, como escribir código para un servidor HTTP usando JavaScript, las tasas de aceptación tienden a ser altas; esto se debe a que los datos utilizados para entrenar el LLM subyacente se utilizan y están ampliamente disponibles.
Sin embargo, los ingenieros empresariales han descubierto que cuando desarrollan código más complejo que se basa en una lógica empresarial patentada que no está bien representada en los datos de capacitación disponibles públicamente, el ahorro de tiempo no es tan significativo y la precisión y el rendimiento del modelo no son tan buenos. , dijo Walsh.
Aun así, en el corto y mediano plazo, las herramientas de creación de software habilitadas con IA generativa aumentarán en precisión y capacidades, lo que incluye permitir a los usuarios empresariales desarrollar aplicaciones desechables para, por ejemplo, análisis de datos donde la calidad de nivel empresarial no es necesariamente necesaria. «Esos casos serán más una herramienta de productividad para ayudarlos con su trabajo. Eso será como el mercado sin código actual. Veo casos de uso como ese en el horizonte. Esto está mucho más cerca de convertirse en realidad que el software empresarial totalmente automatizado creado por IA”.
Cookie | Duración | Descripción |
---|---|---|
__cf_bm | 1 hour | This cookie, set by Cloudflare, is used to support Cloudflare Bot Management. |
_GRECAPTCHA | 6 months | Google Recaptcha service sets this cookie to identify bots to protect the website against malicious spam attacks. |
cookielawinfo-checkbox-advertisement | 1 year | Set by the GDPR Cookie Consent plugin, this cookie records the user consent for the cookies in the "Advertisement" category. |
cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
CookieLawInfoConsent | 1 year | CookieYes sets this cookie to record the default button state of the corresponding category and the status of CCPA. It works only in coordination with the primary cookie. |
csrftoken | 1 year | This cookie is associated with Django web development platform for python. Used to help protect the website against Cross-Site Request Forgery attacks |
opt_out | 1 year | This cookie is used for preventing the installation of third party advertiser or other cookies on the browser. |
PHPSESSID | 24 minutes | This cookie is native to PHP applications. The cookie stores and identifies a user's unique session ID to manage user sessions on the website. The cookie is a session cookie and will be deleted when all the browser windows are closed. |
rc::a | never | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
rc::b | session | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
rc::c | session | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
rc::f | never | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
ts | 1 year 1 month | PayPal sets this cookie to enable secure transactions through PayPal. |
usprivacy | 1 year 1 month | This is a consent cookie set by Dailymotion to store the CCPA consent string (mandatory information about an end-user being or not being a California consumer and exercising or not exercising its statutory right). |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
wordpress_test_cookie | session | WordPress sets this cookie to determine whether cookies are enabled on the users' browsers. |
Cookie | Duración | Descripción |
---|---|---|
cX_G | 1 year 1 month | Cxense sets this cookie for storing the global ID, mapping different ids together into one ID. |
v1st | 1 year 1 month | The v1st cookie is set by TripAdvisor to collect details about how visitors use the website, by displaying user reviews, awards and information received on the TripAdvisor community. |
yt-player-headers-readable | never | The yt-player-headers-readable cookie is used by YouTube to store user preferences related to video playback and interface, enhancing the user's viewing experience. |
yt-remote-cast-available | session | The yt-remote-cast-available cookie is used to store the user's preferences regarding whether casting is available on their YouTube video player. |
yt-remote-cast-installed | session | The yt-remote-cast-installed cookie is used to store the user's video player preferences using embedded YouTube video. |
yt-remote-connected-devices | never | YouTube sets this cookie to store the user's video preferences using embedded YouTube videos. |
yt-remote-device-id | never | YouTube sets this cookie to store the user's video preferences using embedded YouTube videos. |
yt-remote-fast-check-period | session | The yt-remote-fast-check-period cookie is used by YouTube to store the user's video player preferences for embedded YouTube videos. |
yt-remote-session-app | session | The yt-remote-session-app cookie is used by YouTube to store user preferences and information about the interface of the embedded YouTube video player. |
yt-remote-session-name | session | The yt-remote-session-name cookie is used by YouTube to store the user's video player preferences using embedded YouTube video. |
ytidb::LAST_RESULT_ENTRY_KEY | never | The cookie ytidb::LAST_RESULT_ENTRY_KEY is used by YouTube to store the last search result entry that was clicked by the user. This information is used to improve the user experience by providing more relevant search results in the future. |
Cookie | Duración | Descripción |
---|---|---|
_gat | 1 minute | Google Universal Analytics sets this cookie to restrain request rate and thus limit data collection on high-traffic sites. |
dmvk | session | The dmvk cookie is set by Dailymotion to record data of visitor behaviour on the website. |
Cookie | Duración | Descripción |
---|---|---|
_fbp | 3 months | Facebook sets this cookie to display advertisements when either on Facebook or on a digital platform powered by Facebook advertising after visiting the website. |
_ga | 1 year 1 month 4 days | Google Analytics sets this cookie to calculate visitor, session and campaign data and track site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognise unique visitors. |
_gid | 1 day | Google Analytics sets this cookie to store information on how visitors use a website while also creating an analytics report of the website's performance. Some of the collected data includes the number of visitors, their source, and the pages they visit anonymously. |
cX_P | 1 year 1 month | Cxense sets this cookie for site-specific user sessions - across sessions. |
Cookie | Duración | Descripción |
---|---|---|
guest_id | 1 year 1 month | Twitter sets this cookie to identify and track the website visitor. It registers if a user is signed in to the Twitter platform and collects information about ad preferences. |
test_cookie | 15 minutes | doubleclick.net sets this cookie to determine if the user's browser supports cookies. |
VISITOR_INFO1_LIVE | 6 months | YouTube sets this cookie to measure bandwidth, determining whether the user gets the new or old player interface. |
VISITOR_PRIVACY_METADATA | 6 months | YouTube sets this cookie to store the user's cookie consent state for the current domain. |
YSC | session | Youtube sets this cookie to track the views of embedded videos on Youtube pages. |
yt.innertube::nextId | never | YouTube sets this cookie to register a unique ID to store data on what videos from YouTube the user has seen. |
yt.innertube::requests | never | YouTube sets this cookie to register a unique ID to store data on what videos from YouTube the user has seen. |
Cookie | Duración | Descripción |
---|---|---|
__cflb | 1 day | This cookie is used by Cloudflare for load balancing. |
_awl | 1 year 1 month | No description available. |
_pcid | 1 year 1 month | Description is currently not available. |
_pctx | 1 year 1 month | Description is currently not available. |
gckp | 1 year | This cookie is set by the provider Cxense. This cookie is used for building user profile information across all sites in the Cxense network. |
itsec-hb-login-27e4caa2b0fb20a2dee118de04e9de77 | 1 hour | Description is currently not available. |
ntvSession | session | Description is currently not available. |