Copiloto de GitHub: la IA de codificación

Copiloto de GitHub: la IA de codificación

Si es programador, es muy probable que se haya agotado por escribir programas extensos (¡o lo hará!) Y probablemente se haya preguntado: "¿Qué pasaría si tuviera a alguien sentado conmigo para ayudarme a crear estos programas? ? "

Ahora tienes GitHub Copilot, una herramienta de inteligencia artificial que te ayuda a escribir tus scripts de manera más efectiva. El Copiloto de GitHub puede sugerir líneas de código e incluso completar sus funciones.

En este artículo, aprenderá más sobre GitHub CoPilot y lo que puede hacer por usted. ¡Empecemos!

¿Qué es GitHub CoPilot y cómo funciona?

GitHub es una empresa subsidiaria de Microsoft , que se asoció con OpenAI (una startup de investigación de inteligencia artificial) para desarrollar GitHub Copilot. Puede instalar Copilot como una extensión o usarlo en línea con GitHub Codespaces. También funcionará a la perfección con el código de Visual Studio.

Meet GitHub Copilot - your AI pair programmer. https://t.co/eWPueAXTFt pic.twitter.com/NPua5K2vFS

— GitHub (@github) June 29, 2021

La IA aprende de miles de millones de códigos fuente disponibles en plataformas abiertas y repositorios de GitHub para sugerirle una línea de código o, a veces, funciones completas. Los desarrolladores diseñaron Copilot para aprender de los programas de los desarrolladores para mejorar su exactitud y precisión con el tiempo.

Copilot le sugerirá el código más adecuado para su programa basándose en sus líneas anteriores, nombres de funciones y otros factores. Puede aceptar las recomendaciones que hace Copilot, explorar qué sugerencias adicionales propone, hacer modificaciones al código que adquiere o ignorarlo por completo; tu decides.

Copiloto de GitHub: la IA de codificación

Para ser claros, Copilot no es un programa simple de autocompletar y no crea todo su programa por usted. Es más una herramienta sensible al contexto que actúa como un compañero, observando el progreso de su trabajo y ofreciendo sugerencias mientras codifica.

¿Qué hará Copilot por usted?

No, CoPilot no es una máquina del futuro que tiene todas las respuestas. Analizará el código que está escribiendo, recordará lo que ha aprendido de miles de millones de otros programas y luego recomendará lo que debe escribir a continuación.

CoPilot, según GitHub, comprende y funciona bien con una variedad de marcos y lenguajes. Los desarrolladores capacitaron la herramienta de inteligencia artificial de aprendizaje para comprender varios marcos y lenguajes, así como el código fuente de los repositorios de GitHub.

Copiloto de GitHub: la IA de codificación

La vista previa técnica muestra que lo ayudará bien con Python, JavaScript, TypeScript, Ruby y Go.

Su socio de programación virtual inteligente extraerá el contexto del código que ha escrito y producirá un código comparable utilizando las funciones que ha utilizado en su programa. Intenta comprender su intención y sugerir el mejor código. Sin embargo, es posible que las sugerencias no siempre sean las más adecuadas.

Relacionado: Cómo crear su primer repositorio en Github

Según su aprobación y rechazo de sus sugerencias, aprende de usted y de millones de otros desarrolladores para adaptarse mejor a su estilo de codificación. Reúne diferentes piezas de código basadas en su descripción de lo que está intentando lograr en un programa determinado. Completa automáticamente el código cuando tiene frases repetitivas en su programa, lo que le evitará tener que escribir el mismo código una y otra vez. No solo eso, sino que también puede recomendar pruebas basadas en los posibles errores que su programa podría producir.

El anuncio de Copilot tiene a los desarrolladores entusiasmados. Muchos están ansiosos por poner sus manos en la herramienta de inteligencia artificial y ver lo que tiene para ofrecer.

¿Qué dicen los desarrolladores sobre Copilot?

Los desarrolladores de todo el mundo dicen que Copilot les facilitará las cosas, les ahorrará mucho tiempo y les ayudará a mantenerse concentrados en el trabajo.

Los desarrolladores han estado compartiendo sus experiencias con la nueva herramienta de inteligencia artificial en diferentes plataformas de redes sociales. Las sugerencias de Copilot son precisas, según un desarrollador que trabaja en la industria de la privacidad y la seguridad, y le ahorra mucho tiempo en código obvio y repetitivo.

I've been testing #GitHubCopilot in Alpha for the past two weeks. Some of the code suggestions it comes up with are eerily good.

Here's a thread with some examples that I found surprising. Will update with new examples over time. https://t.co/lD5xYEV76Z

— Feross (@feross) June 30, 2021

"Copilot es una de las tres principales innovaciones tecnológicas de la década de 2020", comparte en una serie de tweets de un investigador senior de Microsoft que ha estado siguiendo el desarrollo de GitHub y Copilot de OpenAI.

So stoked to finally discuss Copilot!

I've used it inside MSR for months, watched it evolve, and discussed collabs.

[Disclaimer: the tech is by the amazing @github/@openai, I'm an informed observer.]

Not exaggerating, Copilot will be in top-3 tech developments of 2020s 🧵👇 https://t.co/aoQMfpSgtT

— Alex Polozov (@Skiminok) June 29, 2021

Los desarrolladores creen que el autocompletado de IA es beneficioso y está aquí para quedarse. Sin embargo, dudan de cuánto de su trabajo será realizado por herramientas de inteligencia artificial como Copilot. También existe cierta preocupación entre los desarrolladores de que eventualmente pueda reemplazarlos.

¿Copilot lo reemplazará como desarrollador?

El CEO de GitHub, Nat Friedman, dice que Copilot es una herramienta de productividad para equiparlo con la funcionalidad de finalización de código e ideas para implementar en su código. Él piensa que con herramientas de inteligencia artificial como Copilot, el desarrollo de software está entrando en la siguiente fase de cambio de productividad. Friedman menciona que los compiladores, depuradores, recolectores de basura y lenguajes hicieron que los desarrolladores fueran más productivos en el pasado. Luego, los desarrolladores compartieron el trabajo de los demás para mejorar su código. Ahora puede usar la IA para codificar, pero el enunciado del problema siempre es para que los humanos lo resuelvan.

Copiloto de GitHub: la IA de codificación

Fuente de la imagen: https://news.ycombinator.com/item?id=27677110

La IA puede sugerir un código de coincidencia de patrones basado en lo que ya ha escrito en su programa. Sin embargo, para usarlo de manera efectiva y exitosa, deberá comprender cada línea de su programa.

Su trabajo como desarrollador no es solo desarrollar código, sino crear código específico para los requisitos y especificaciones del problema que está tratando de resolver. Las herramientas de inteligencia artificial como Copilot lo ayudarán a desarrollar código más rápido de lo que lo haría por su cuenta.

Pero tendrá que decirle a la herramienta de inteligencia artificial lo que espera que haga en su programa. Como desarrollador, siempre estás a cargo de tu programa. Es una herramienta similar al correo electrónico, la mensajería instantánea, la IA conversacional y toda la tecnología que nos hace la vida más fácil.

Aunque la IA es el futuro de la codificación, aún queda un largo camino por recorrer en el momento en que la IA domine por completo y diseñe programas por sí sola.

CoPilot ayudará a los desarrolladores

Como desarrollador, siempre cumple con los plazos, y qué mejor que un compañero de codificación que sugiere líneas de código y autocompleta código repetitivo para hacer su trabajo a tiempo.

Copilot muestra una promesa inicial en su etapa inicial, pero incluso GitHub es cauteloso acerca de su aplicabilidad. GitHub dice que a veces las sugerencias de CoPilot pueden no tener sentido o ser beneficiosas para su programa. Siempre debe verificar, probar y revisar las sugerencias de codificación que reciba de Copilot o de cualquier otra herramienta de inteligencia artificial.

Copiloto de GitHub: la IA de codificación

Fuente de la imagen: https://copilot.github.com/

Como nada es perfecto, siempre existe la posibilidad de que Copilot cometa un error. Sin embargo, la herramienta de aprendizaje de inteligencia artificial hará que la codificación sea mucho más fácil para los desarrolladores. Es muy pronto para comentar cómo afectará a la comunidad de desarrolladores a largo plazo. ¿Podría incluso ser peligroso?


Cómo usar Python como una calculadora de línea de comandos

Cómo usar Python como una calculadora de línea de comandos

Si bien puede usar una calculadora gráfica en su computadora, el intérprete del lenguaje de programación Python puede funcionar como una calculadora de escritorio. Es una broma de ejecución tan popular en la comunidad de Python que se menciona en el tutorial oficial. Así es como puedes usar Python como calculadora.

Los 8 mejores blogs de Java para programadores

Los 8 mejores blogs de Java para programadores

Como programador, debe enfrentar desafíos para sobrevivir y construir algunas maravillas en el campo del desarrollo o la programación. Por lo tanto, si está buscando aprender un lenguaje de programación avanzado para mejorar sus habilidades profesionales, Java es uno de los mejores prospectos que existen.

7 comandos vitales para comenzar con Python para principiantes

7 comandos vitales para comenzar con Python para principiantes

Aprender un nuevo lenguaje de programación como Python se vuelve fácil si tiene una hoja de ruta completa que detalla qué conceptos aprender como principiante y cómo progresar más para alcanzar el siguiente hito. Incluso los programadores intermedios deberían repasar con frecuencia sus conceptos básicos para construir una base sólida para ellos mismos.

Principios de diseño web receptivo

Principios de diseño web receptivo

Hoy en día, es una práctica común crear un sitio web o una aplicación que ajuste su interfaz de usuario según el navegador o el dispositivo. Hay dos enfoques para lograr este objetivo. La primera implica la creación de diferentes versiones de su sitio web o aplicación para diferentes dispositivos. Pero es ineficiente y puede provocar errores impredecibles.

Cómo contar la cantidad de dígitos en un número usando C ++, Python y JavaScript

Cómo contar la cantidad de dígitos en un número usando C ++, Python y JavaScript

Trabajar con números es una parte integral de la programación. Todos los lenguajes de programación brindan soporte para manipular números de muchas formas diferentes. En este artículo, aprenderá a encontrar el número total de dígitos en un entero utilizando enfoques iterativos, basados ​​en registros y basados ​​en cadenas.

Las 9 mejores alternativas de Docker para la gestión de contenedores

Las 9 mejores alternativas de Docker para la gestión de contenedores

Los contenedores son muy beneficiosos para el desarrollo, la implementación y la administración de software en un entorno virtual. Docker es útil en el proceso de contenedorización, pero no es la única plataforma que existe. Si está buscando algunas alternativas a Docker, no busque más. Esta lista muestra algunas alternativas de Docker eficientes y ricas en funciones para usar en su próximo proyecto.

SQL vs. NoSQL: ¿Cuál es la mejor base de datos para su próximo proyecto?

SQL vs. NoSQL: ¿Cuál es la mejor base de datos para su próximo proyecto?

SQL vs. NoSQL: ¿Cuál es la mejor base de datos para su próximo proyecto?

Cómo incrustar tweets en sus publicaciones de WordPress

Cómo incrustar tweets en sus publicaciones de WordPress

Incrustar servicios de terceros en sus publicaciones de WordPress es una forma emocionante de cautivar el interés de un visitante. El contenido incrustado también proporciona señales visuales que facilitan el escaneo. WordPress ha facilitado la adición de este tipo de contenido.

Cómo eliminar la carpeta de módulos de nodo con npkill

Cómo eliminar la carpeta de módulos de nodo con npkill

Node.js es un entorno de ejecución de JavaScript que le permite ejecutar JavaScript fuera de los navegadores web, lo que lo convierte en una opción popular para desarrollar todo tipo de aplicaciones. Parte de su popularidad se debe a la gran cantidad de paquetes de NPM que existen para facilitar la experiencia del desarrollador.

Cómo escribir y compilar su primer código de solidez

Cómo escribir y compilar su primer código de solidez

La solidez es el lenguaje de programación utilizado por los contratos inteligentes en la cadena de bloques Ethereum. Es un lenguaje de programación orientado a objetos de tipo estático.

Las 5 mejores insignias que potenciarán su repositorio de GitHub

Las 5 mejores insignias que potenciarán su repositorio de GitHub

Las insignias de GitHub pueden aumentar la legibilidad de un repositorio al proporcionar a los usuarios una forma rápida de capturar las métricas del repositorio. Las insignias se pueden incrustar en su README.md para aclarar la importancia y la necesidad de su proyecto a otros desarrolladores. Como resultado, los lectores obtienen una idea muy rápida del repositorio al verificar las insignias adjuntas.

¿Qué es el Día Internacional de los Programadores? 3 formas de celebrar este año

¿Qué es el Día Internacional de los Programadores? 3 formas de celebrar este año

Los días de celebración internacional son una buena forma de reconocer los asuntos sociales, los días históricos y las respectivas carreras. El Día Internacional de los Programadores celebra el papel que desempeñan los programadores para mejorar la vida cotidiana. El mundo civilizado en el que vivimos es producto del arduo trabajo de los programadores.

¿Cómo funciona el método Python String format ()? 10 ejemplos

¿Cómo funciona el método Python String format ()? 10 ejemplos

Ya sea una consulta de base de datos o resultados de operaciones matemáticas, el método de formato de cadena de Python ofrece una forma más dinámica y atractiva de presentar resultados a un usuario.

Visual Studio 2022 frente a 2019: ¿Debería actualizar ahora? Explicado

Visual Studio 2022 frente a 2019: ¿Debería actualizar ahora? Explicado

A principios de este año, Microsoft lanzó la versión preliminar de Visual Studio 2022 en el salvaje mundo de la programación. ¡Estas son buenas noticias! Es un IDE extremadamente popular, pero debido a una puesta a punto o tal vez incluso una revisión, dado el ritmo de cambio en el ecosistema DevOps en el que prospera.

Una introducción simple a las métricas de software

Una introducción simple a las métricas de software

Las métricas de software son medidas que se utilizan para cuantificar varios aspectos de su software. Estos aspectos pueden variar desde el costo, la calidad y la eficiencia del equipo de desarrollo.

Cómo instalar .NET Framework versión 3.5 en Windows 10

Cómo instalar .NET Framework versión 3.5 en Windows 10

Como usuario de Windows, probablemente al menos una vez se haya encontrado con las palabras .NET Framework. Es un marco de software desarrollado por Microsoft que le permite crear y ejecutar programas C #, C ++, F # y Visual Basic. La última versión de .NET es 4.8, pero es posible que su computadora necesite una versión anterior de .NET (como .NET 3.5) para ejecutar algunas aplicaciones.

Frasco o CherryPy: ¿Qué marco de Python debería usar?

Frasco o CherryPy: ¿Qué marco de Python debería usar?

Si es un desarrollador de Python, puede beneficiarse enormemente de la variedad de marcos disponibles. Si bien algunos marcos son más adecuados para grandes ecosistemas, otros se especializan en cumplir objetivos de desarrollo específicos. Siga leyendo para conocer las características básicas, los usos y las diferencias entre dos marcos de Python: Flask y CherryPy.

Cómo encontrar cubos y cuadrados perfectos de N dígitos usando Python, C ++ y JavaScript

Cómo encontrar cubos y cuadrados perfectos de N dígitos usando Python, C ++ y JavaScript

A muchos programadores les encanta resolver problemas matemáticos complicados utilizando código. Ayuda a agudizar la mente y mejorar la capacidad de resolución de problemas. En este artículo, aprenderá a encontrar los cuadrados y cubos perfectos de n dígitos más pequeños y más grandes utilizando Python, C ++ y JavaScript. Cada ejemplo también contiene una salida de muestra para varios valores diferentes.

Cómo agregar Python a la variable PATH de Windows

Cómo agregar Python a la variable PATH de Windows

Ejecutar Python desde la terminal a menudo es inevitable. Sin embargo, si acaba de instalar Python en Windows 10 por primera vez, ejecutarlo a través de la Terminal de Windows solo es posible si se agrega a la variable de entorno Windows PATH.

Cómo usar la declaración if de Python

Cómo usar la declaración if de Python

La declaración if es la fuerza impulsora de la programación lógica. Como resultado, una mejor comprensión de Pythons es una adición significativa a sus habilidades de programación de Python.

Cómo usar Python como una calculadora de línea de comandos

Cómo usar Python como una calculadora de línea de comandos

Si bien puede usar una calculadora gráfica en su computadora, el intérprete del lenguaje de programación Python puede funcionar como una calculadora de escritorio. Es una broma de ejecución tan popular en la comunidad de Python que se menciona en el tutorial oficial. Así es como puedes usar Python como calculadora.

Los 8 mejores blogs de Java para programadores

Los 8 mejores blogs de Java para programadores

Como programador, debe enfrentar desafíos para sobrevivir y construir algunas maravillas en el campo del desarrollo o la programación. Por lo tanto, si está buscando aprender un lenguaje de programación avanzado para mejorar sus habilidades profesionales, Java es uno de los mejores prospectos que existen.

7 comandos vitales para comenzar con Python para principiantes

7 comandos vitales para comenzar con Python para principiantes

Aprender un nuevo lenguaje de programación como Python se vuelve fácil si tiene una hoja de ruta completa que detalla qué conceptos aprender como principiante y cómo progresar más para alcanzar el siguiente hito. Incluso los programadores intermedios deberían repasar con frecuencia sus conceptos básicos para construir una base sólida para ellos mismos.

Principios de diseño web receptivo

Principios de diseño web receptivo

Hoy en día, es una práctica común crear un sitio web o una aplicación que ajuste su interfaz de usuario según el navegador o el dispositivo. Hay dos enfoques para lograr este objetivo. La primera implica la creación de diferentes versiones de su sitio web o aplicación para diferentes dispositivos. Pero es ineficiente y puede provocar errores impredecibles.

Cómo contar la cantidad de dígitos en un número usando C ++, Python y JavaScript

Cómo contar la cantidad de dígitos en un número usando C ++, Python y JavaScript

Trabajar con números es una parte integral de la programación. Todos los lenguajes de programación brindan soporte para manipular números de muchas formas diferentes. En este artículo, aprenderá a encontrar el número total de dígitos en un entero utilizando enfoques iterativos, basados ​​en registros y basados ​​en cadenas.

Las 9 mejores alternativas de Docker para la gestión de contenedores

Las 9 mejores alternativas de Docker para la gestión de contenedores

Los contenedores son muy beneficiosos para el desarrollo, la implementación y la administración de software en un entorno virtual. Docker es útil en el proceso de contenedorización, pero no es la única plataforma que existe. Si está buscando algunas alternativas a Docker, no busque más. Esta lista muestra algunas alternativas de Docker eficientes y ricas en funciones para usar en su próximo proyecto.

SQL vs. NoSQL: ¿Cuál es la mejor base de datos para su próximo proyecto?

SQL vs. NoSQL: ¿Cuál es la mejor base de datos para su próximo proyecto?

SQL vs. NoSQL: ¿Cuál es la mejor base de datos para su próximo proyecto?

Cómo incrustar tweets en sus publicaciones de WordPress

Cómo incrustar tweets en sus publicaciones de WordPress

Incrustar servicios de terceros en sus publicaciones de WordPress es una forma emocionante de cautivar el interés de un visitante. El contenido incrustado también proporciona señales visuales que facilitan el escaneo. WordPress ha facilitado la adición de este tipo de contenido.

Cómo eliminar la carpeta de módulos de nodo con npkill

Cómo eliminar la carpeta de módulos de nodo con npkill

Node.js es un entorno de ejecución de JavaScript que le permite ejecutar JavaScript fuera de los navegadores web, lo que lo convierte en una opción popular para desarrollar todo tipo de aplicaciones. Parte de su popularidad se debe a la gran cantidad de paquetes de NPM que existen para facilitar la experiencia del desarrollador.

Cómo escribir y compilar su primer código de solidez

Cómo escribir y compilar su primer código de solidez

La solidez es el lenguaje de programación utilizado por los contratos inteligentes en la cadena de bloques Ethereum. Es un lenguaje de programación orientado a objetos de tipo estático.