¡Atención! Este sitio utiliza cookies.
Si no cambias la configuración de tu navegador, aceptas su uso.

Neologismos innecesarios en el mundo de la tecnología

El mundo de la tecnología está en constante crecimiento, y eso nos fuerza —a los técnicos— a adoptar conceptos nuevos para poder comunicarnos entre nosotros al hablar de nuevas herramientas y formas de trabajo.

¿Pero hasta qué punto son estas nuevas palabras ‘nuevas’? Adoptamos nuevas palabras a diario sin realmente pararnos a buscar su significado dentro de nuestra propia lengua, y por ende utilizamos terminología calcada del inglés, el idioma del que extraemos estos conceptos. Bien por desconocimiento de nuestro propio lenguaje, por pura vagancia, o porque nos suenan forzadas, creo que estamos quitando valor a algo tan importante como a saber comunicarnos no ya solo entre nosotros, sino con el resto de seres humanos que intentan descifrar lo que decimos.

Es cierto que los programadores —quienes probablemente más neologismos nos estemos inventando— somos un perfil que, de forma natural, tiende a aprender nuevos conceptos constantemente, al ritmo en que surgen nuevas formas de implementar nuestra forma de trabajar. Sin embargo, a veces tendemos a despreciar cualquier conocimiento que no sea técnico, aunque sea inconscientemente. No es una generalización, porque no todos los programadores son iguales, pero si un patrón bastante recurrente. Sabemos mucho de todo, siempre y cuando no nos saquen del ámbito que nos gusta. En el mismo instante en que la literatura, la arquitectura, la pintura, la música, o cualquier otro tipo de disciplina puramente artística —aunque técnica también—, surge en una conversación, es más difícil continuarla sin quedarse en un parvo intercambio de opiniones, si es que acaso las hay, cuando se hace entre los llamados ‘técnicos’. Insisto, no se aplica a todos, pero es una carencia extendida.

Es irónico que quienes nos dedicamos a la ingenierías de la comunicación, seamos tan parcos u opacos a la hora de comunicarnos. No sé si es que nunca le dimos importancia, o si lo vemos demasiado lejos como para que nos tenga importar.

Y como no quiero adolecer de parsimonia al hablar de estos temas, quiero plantear abiertamente una serie de términos muy extendidos y utilizados demasiado extensivamente, traducidos al español/castellano.

Cuando alguien escupe un “pero ya me has entendido”, yo al menos no puedo evitar dejar de prestarle atención. Es simple: si no has encontrado la palabra adecuada: o bien no la sabes —y no pasa nada—, o no has querido invertir el tiempo para encontrarla. Como decía Michel de Montaigne, “la palabra es mitad de quien la pronuncia, mitad de quien la escucha”. No me obligues a entenderte si puedes evitarme el esfuerzo utilizando la palabra correcta.

¿Nos hacemos inaccesibles hacia el resto del mundo? ¿Son los no técnicos ’muggles’ o es que nosotros somos muy herméticos?

Aquí va la lista. Espero ir actualizándola con el tiempo, según surja. Entiendo que pueda sonarte pedante, pero si te lo parece, intenta hacer un esfuerzo para evitar que esta retahíla de sugerencias caiga —de nuevo— en oídos sordos.

VERBOS

(en inglés van precedidos por ‘to’, pero los omito por claridad).

  • Cache: Precargar (se suele escuchar “cachear”). Generalmente hacemos referencia a la acción de servir un recurso muy solicitado habiéndose este generado con anterioridad (es decir, sin necesidad de generarlo cada vez que se pide), sabiendo que no va a cambiar en una ventana de tiempo concreta.
  • Commit (en Git): La documentación de Git oficial la ha traducido como “confirmar”. “Comitear” se traduciría como “confirmar los cambios”, o “confirmar” a secas si realizamos la elipsis.
  • Deploy: Desplegar.
  • Deprecate: Dejar obsoleto. Descontinuar. Se suele oír “Deprecar” cuando intentamos expresar que se ha abandonado el soporte a una interfaz, herramienta o una funcionalidad.
  • Mock: Suplantar, simular (en lugar de “Mockear”).
  • Provision: “provisionar” en español es “aprovisionar”, aunque también sirven “pertrechar” o simplemente “abastecer”.
  • Pull (en git): Traer los cambios (desde un repositorio).
  • Push (en Git): Subir los cambios (a un repositorio).

SUSTANTIVOS

  • Broker (de colas): Mediador (de colas). Recibe, transforma, y transmite tareas, de forma que dos sistemas de comunicación puedan entenderse.
  • Bug: Error de programación. Hace referencia a un error o comportamiento no esperado.
  • Cache: Es un término técnico ya aceptado que podemos utilizar siempre que hablemos de ‘memoria cache’ y lo acentuemos correctamente.
  • Exploit: Vulnerabilidad. Se utiliza para indicar un tipo de ardid empleado (como un algoritmo o secuencia de acciones) del que se espera un comportamiento diferente cuando se aplica sobre un sistema de información, generalmente en beneficio de quien lo realiza.
  • Glitch: Es un tipo de vulnerabilidad (como exploit) que hace actuar un programa de forma inesperada, pero que no daña necesariamente al usuario. Habitualmente este error suele otorgar al usuario una funcionalidad oculta no contemplada por los desarrolladores.
  • Load balancer: Contrapeso (de carga).
  • Feature: Funcionalidad.
  • Flush: Literalmente es ‘tirar de la cadena’, pero podemos dejarlo en ‘vaciar’.
  • Front-end: Frontal, capa de usuario, o la capa ‘cliente’ como abreviación en estos casos. La capa frontal de un servicio de software consta de todos los procesos que tienen interacción directa con acciones efectuadas por el usuario (el lado cliente). Esto incluye la interfaz gráfica del servicio o ‘GUI’, ya sea en la Web o en una aplicación móvil, de escritorio, etc; así como el software que maneja dicha interfaz y el que se ejecuta en el lado cliente previamente mencionado.
  • Back-end: Al ser la contraparte de ‘frontal’ en inglés (‘frontend’), no tiene traducción directa. Así como ‘software’ es ‘la otra cosa que no es hardware’, aquí se da el mismo caso. ‘Backend’ podría ser la palabra adecuada, siguiendo la misma lógica. Lo que comprende esta palabra, es la lógica de negocio (decisiones a tomar para que un determinado servicio funcione de acuerdo a sus especificaciones), siempre que esta lógica se encuentre desacoplada del usuario final; esto es, en servidores. Normalmente, por cada código en el frontal, existe una máquina ejecutándolo, mientras que en el lado del backend, existe una máquina para N usuarios.
  • Placeholder: marcador (de texto).
  • Scope: Ámbito o contexto léxico. Es el área semántica en que una variable puede ser utilizada. En el caso de ser dinámica (una variable declarada dentro de una función vive mientras la función viva, a no ser que pueda ‘escaparse’), si la variable se ha copiado dentro del ámbito, me gusta más hablar de ‘contexto léxico’, y no tanto de ‘ámbito’, lo cual indica el alcance que tiene. Pero es cuestión de gustos.
  • Sharding: Parcelar (una base de datos). Cuando una base de datos se parte en fragmentos más pequeños (parcelas) de modo que puedan coexistir como una sola desde diferentes máquinas, se dice que se está ‘parcelando’.
  • Streaming: Perifonear (de perífono). En el sentido de una retransmisión por Internet a una hora fija (no de visualizar algo mediante una transmisión de datos constante, como una película).
  • Throttle: Acelerador. Es una parte mecánica de los coches que permite regular la potencia del motor. Puede confundir ya que da la impresión de velocidad, pero en realidad su traducción desde el mundo de la programación se refiere a un mecanismo que ‘estrangula’ una secuencia de datos, de forma que lleguen poco a poco (en lugar de llegar todos de una vez).
  • Worker (de colas): Obrero u operario (de colas). Suena fatal, pero a falta de una alternativa mejor, un obrero (u operario) realiza una tarea concreta, generalmente de forma manual, similar a la acción que realiza desalojando tareas encoladas y enviándolas a su receptor para su procesamiento. De esta forma, varios workers comparten una misma pila de tareas, la cual van descargando a un ritmo diferente al que van llegando, evitando la saturación de trabajo.

OTROS

  • Linter: un ‘linter’ es una herramienta que limpia o retira las pelusas que se encuentran en los tejidos. Generalmente se aplica al algodón. Es complicado encontrar una buena alternativa a este palabra en nuestra lengua, ya que ‘quitapelusas’, ‘filtro para motas’, etc., no se aplica de forma elegante. Un linter es una ‘analizador sintáctico’ que revisa lo que escribimos para ayudarnos a crear un código pulcro, sin errores y con unas pautas de estilo marcadas.
  • Implement: es un falso amigo cuando lo que queremos decir es ‘escribir el código’ y no ‘aplicar un método para llevar algo a cabo’.
  • Remove: Quitar. Se suele escuchar como ‘remover’, pero es incorrecto con la acepción de ‘eliminar’.

Huelga decir que no soy más que un simple programador del montón y que cualquier corrección, sugerencia o incluso opinión será bien recibida y añadida si hiciere falta. Podéis contestar aquí mismo o por Twitter.

Y sí, soy un pedante, y me encanta serlo.

Escrito por Miguel Hernández Jaso

Autor del blog. Desarrollador especializado en iOS.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Mi Gobierno me obliga a decirle que utilizo 'cookies' en mi página. Si continúa navegando, quiere decir que está conforme con ello.