Entre los desarrolladores de software siempre ha existido una Guerra Santa: Tabulaciones vs Espacios.
Unos defienden a muerte la utilización de los espacios a la hora de indentar, otros las tabulaciones. Y que conste que no hablamos de tabulacion de datos en excel, sino del uso del tabulador en programacion , aunque imaginamos que ya sabes lo que es tabular en programacion …
Aunque a nivel funcional la diferencia es nula una vez que el código pasa por el compilador, puede que haya un nuevo factor que haga que sea más importante uno que otro: el sueldo del desarrollador.
¿Crees que la «polémica» Tabulaciones vs Espacios puede influir en el salario de un programador?
¿Qué encontrarás en este post?
ToggleTabulaciones vs Espacios: ¿cuál es la diferencia?
Antes de explicar sus diferencias de las Tabulaciones vs Espacios, debemos saber que los ambos son utilizados por los programadores para estructurar el código de una forma determinada, pero, detrás de esto, hay un dilema, una lucha, burlas y cientos de parodias detrás. Es como la lucha entre los Jedi y los Sith, aunque, con el tiempo, parece haber ido a menos. El Lado de la Luz y el Lado Oscuro. El problema es que ambos creen estar en el lado correcto. El argumento a favor del uso de espacios suele ser la precisión. 1=1. Un espacio es un espacio, independientemente del editor de código o IDE en el que estés trabajando. Por defecto, una tabulación son 8 espacios, pero dependiendo con qué máquina se abra el fichero de código esto puede variar. Además, puede resultar más molesto cuando tienes un código que necesita tener varias animaciones, ya que tendrás que desplazarte horizontalmente para ver la parte de la derecha. Aunque también, lo que puede ser solucionado con 3 tabulaciones, requiere de 24 espacios. Por otro lado, los defensores de las tabulaciones esgrimen su argumento: la comodidad. Basta con pulsar una vez la tabulación para estructurar el código de la forma que se desea (además, la cantidad de espacios es configurable). Si se usa espacios se debería pulsar varias veces la barra espaciadora hasta lograr el indentado deseado. Otro de los argumentos a favor es la compresión, requiriendo de menos almacenamiento que el espacio. Años atrás era más notorio debido a que no existían los recursos y la capacidad de cómputo con las que contamos hoy en día.Y aquí es donde entra el nuevo factor: el sueldo
En la encuesta anual de Stack Overflow, se recogió la información arrojada por 28,657 desarrolladores considerados profesionales (a diferencia de estudiantes o programadores en formación). En la encuesta, una de las preguntas era si usaban espacios, tabulaciones, o ambas teclas. En este grupo de profesionales, el 40.7% usa tabulaciones y el 41.8% espacios. Parece que el mundo sigue dividido, ¿eh? De ellos, 12,426 también aportaron datos sobre sus salarios y, después de un análisis de todos estos datos en bruto, tenemos el quid de la cuestión:Los programadores que usan espacios tienen sueldos mayores
Así de rotundo. Independientemente de la experiencia, el programador que usa espacios gana más dinero. Exactamente, el promedio de quienes usan espacios son 53,035€, en comparación a los 39,228€ de quienes usan tabulaciones.«Sí, claro, vaya !$%»&¡€* de análisis, ¿no has pensado que tendrá que ver del país, el lenguaje y otros muchos factores y que eso es solo casualidad?».Eso debes estar pensando. Es cierto que podría darse el caso que en países con rentas per cápita más bajas no estén acostumbrados a usar espacios, por ejemplo, o que en lenguajes como Python, que en España tiene mucha demanda y aquí los salarios son inferiores, tienes que usar tabulaciones sí o sí. Pero profundicemos un poco más para poder sacar conclusiones. Después de segmentar los datos por país, se puede ver que, dentro del mismo país, también ocurre este fenómeno, y los programadores que usan espacios tienen un mejor salario. Hmm… Pero no es suficiente. Se vuelve a segmentar, esta vez en subgrupos de desarrolladores del mismo país que tienen una experiencia similar y que dominan varios lenguajes. Pero se encuentran los mismos resultados. Si quieres hacer tus propias averiguaciones, aquí tienes los datos en bruto para que puedas jugar. El siguiente paso es es tratar de controlar todos los factores que afectan al salario: país, tipo de desarrollador, lenguaje, nivel de educación, tamaño de la compañía y años de experiencia. Dentro de cada grupo modelo lo más idéntico posible, se sigue observando que el programador que utiliza espacios percibe un salario un 8.6% superior al que utiliza tabulaciones. Dicho de otra forma, usar espacios en lugar de tabulaciones equivale (en cuestión de incremento salarial) a tener un extra de 2.4 años de experiencia. ¿Increíble? Correlación no implica causalidad, y nunca se puede estar seguro de que se están controlando todos los factores que influyen en el salario de un desarrollador. Pero sin duda, es un dato curioso. En GitHub puedes acceder a este informe.
En el debate de Tabulaciones vs Espacios, ¿tú qué utilizas? ¡Comparte este artículo y reabramos el debate!