Las herramientas de programación con IA están provocando que los desarrolladores codifiquen cada vez peor

0
37

En
los
últimos
años,
la
IA
ha
entrado
con
fuerza
en
casi
todos
los
ámbitos
de
la
tecnología,
y

la
programación
de
software
no
ha
sido
ninguna
excepción
:
herramientas
como
GitHub
Copilot
o
Cursor,
basadas
en
modelos
de
lenguaje
avanzados,

han
transformado
la
forma
en
que
los
desarrolladores
de
software
escriben
código
.

Sin
embargo,
eso
está
dando
pie
a
un
creciente
debate
sobre
si
esta
clase
de
herramientas
están
provocando

una
degradación
de
las
capacidades
de
los
programadores
.

A
favor:
Productividad

Uno
de
los
argumentos
más
sólidos
a
favor
del
uso
de
herramientas
como
Copilot
es
que
estas
incrementan
la
productividad
de
los
programadores
al
automatizar
tareas
repetitivas
y
reducir
el
tiempo
que
se
dedica
a
la
escritura
de
código.

Usuarios
experimentados
aseguran
que,
cuando
se
emplea
correctamente,
Copilot
es
una
excelente
herramienta
que

ahorra
tiempo,
especialmente
para
generar
código
repetitivo
,
o
para
sugerir
soluciones
rápidas
a
problemas
comunes.

Como
dice
un
usuario
en
Reddit,

«Copilot
supone
un
increíble
ahorro
de
tiempo…
si
ya
sabes
lo
que
vas
a
escribir».

Según
este
punto
de
vista,
los
programadores
experimentados
ven
en
estas
herramientas
un
apoyo
que
les
permite
concentrarse
en
las
partes
más
complejas
y
creativas
del
desarrollo,
mientras
la
IA
se
encarga
de
los
detalles
más
tediosos.
De
esta
manera,
Copilot
no
reemplaza
las
habilidades
del
desarrollador,
sino
que
las
complementa.

En
contra:
Dependencia
y
degradación
de
habilidades

A
pesar
de
estos
beneficios,
una
crítica
recurrente
es
que
la
dependencia
de
la
IA
puede

debilitar
habilidades
fundamentales
de
los
programadores,

especialmente
entre
los
desarrolladores
más
jóvenes
o
menos
experimentados.

En
palabras
de
programadores
que
trabajan
con
compañeros
de
trabajo
novatos,
el
uso
excesivo
de
Copilot
impide
el
desarrollo
de
la
capacidad
de
resolver
problemas
de
manera
autónoma
y
está
generando
‘profesionales’
que
simplemente
copian
y
pegan
código
generado
sin
entenderlo
del
todo
:

«[Mi
colega]
sólo
hace
lo
que
Copilot
sugiere…
no
sabe
realmente
qué
quiere
hacer».

«He
visto
a
gente
usar
loops
dobles
en
lugar
de
métodos
optimizados
porque
simplemente
asumieron
que
lo
que
generó
ChatGPT
estaba
bien».

Hay
un
miedo
a
que
los
nuevos
programadores
se
vuelvan
más
pasivos
y
menos
propensos
a
abordar
los
problemas
de
manera
innovadora,
porque
simplemente
esperan
a
que
la
IA
lo
resuelva
todo

En
contra: «Technical
debt
as
a
service»

Al
hilo
de
este
último
testimonio,
otra
preocupación
central
es
la
calidad
del
código
generado
por
la
IA.
Aunque
la
IA
puede
producir
soluciones
rápidas,
estas
no
siempre
son
las
mejores
desde
el
punto
de
vista
de
la
arquitectura
del
software.

Algunos
programadores
han
comenzado
a
referirse
a
esta
tendencia
como ‘technical
debt
as
a
service’,
haciendo
referencia
a
la
acumulación
de
problemas
futuros
debido
a
decisiones
de
programación
poco
óptimas
que
deben
corregirse
más
adelante.

«El
hecho
de
que
herramientas
como
Copilot
generen
tanto
código
genérico
es
problemático,
ya
que

el
coste
de
la
programación
no
está
en
la
creación,
sino
en
el
mantenimiento
«.

Tengamos
en
cuenta
que
la
IA
no
tiene
una
comprensión
completa
del
contexto
o
de
los
objetivos
del
proyecto,
lo
que
podría
llevar
a
generar

soluciones
que,
aunque
funcionales,
no
sean
las
más
óptimas
.

Pero
es
que,
incluso
cuando
la
IA
pueda
generar
código
eficiente,
no
siempre
es
el
más
limpio
o
comprensible.

Esto
puede
llevar
a
la
producción
de «código
espagueti»
,
difícil
de
mantener
y
escalar.

En
otras
palabras,
tanto
cuando
la
IA
genera
código
insuficientemente
eficiente
o
cuando
es
insuficientemente
comprensible,

los
desarrolladores
tendrán
que
dedicar
tiempo
a
revisarlo,
depurarlo
y
mejorarlo
a
largo
plazo
,
lo
que
puede
crear
más
problemas
de
los
que
resuelve.

A
favor:
Aprendizaje
acelerado

A
pesar
de
estas
críticas,
también
hay
programadores
que
consideran
que
estas
IAs,
cuando
se
utilizan
correctamente,
pueden
no
tener
precio
como
herramienta
educativa,
pues
estarían
revolucionando
la
forma
en
que
los
programadores
aprenden,
permitiendo
un
acceso
instantáneo
a
explicaciones
y
ejemplos
que

antes
habrían
requerido
búsquedas
extensas
en
Google
o
Stack
Overflow
.

«Quienes
aprovechan
la
IA
de
manera
correcta
podrán
aprender
más
rápido
y
entregar
mejores
resultados».

Entonces,
¿herramienta
o
reemplazo?

Uno
de
los
puntos
en
los
que
la
mayoría
de
los
participantes
en
este
debate
parecen
coincidir
es
que
Copilot
y
otras
IA
no
deberían
ser
vistas
jamás
como
un
reemplazo
de
las
habilidades
del
programador,
sino
como
una
herramienta
que
facilita
sólo
ciertos
aspectos
de
su
trabajo.
Sin
embargo,

es
esencial
que
los
programadores
sigan
desarrollando
sus
capacidades

de
resolución
de
problemas
y
comprensión
profunda
del
código.

Vía
|

Reddit

Imagen
|
Marcos
Merino
mediante
IA

En
Genbeta
|

Cursor,
el
editor
de
código
con
ChatGPT
integrado,
freemium
y
basado
en
VS
Code