¿Arreglar o matar el JavaScript instalado automáticamente?

Este artículo es una traducción del inglés del artículo «Fix or Kill Automatically Installed JavaScript?» publicado por Julie Marchant bajo la licencia CC BY-SA 4.0.

En el ensayo de Richard Stallman, «La Trampa de JavaScript», se señala que la gente ejecuta software privativo que es silenciosamente, automáticamente instalado en sus navegadores cada día. De hecho, él restó importancia en gran medida al problema; no solo la mayoría de usuarias está ejecutando programas privativos cada día meramente navegando la Red, están ejecutando docenas o incluso cientos de tales programas cada día. La Trampa de JavaScript es muy real y prolífica; se dice que la Red está tan rota sin estas extensiones de HTML no estándares, normalmente privativas, que los navegadores han pasado a ni siquiera ofrecer una opción obvia para deshabilitar JavaScript; deshabilitar JavaScript, se argumenta, solo causará confusión.

Es obvio que necesitamos resolver este problema. Sin embargo, al centrarse en si los guiones son «triviales» o libres, el señor Stallman olvida un punto importante: este comportamiento de instalación de software automático, silencioso es, en sí, el principal problema. Que la mayoría del software en cuestión sea privativo es meramente un efecto secundario.

Continúa leyendo ¿Arreglar o matar el JavaScript instalado automáticamente?

Guardar archivo como superusuario desde Vim

Si usas Vim o Neovim, es probable que alguna vez te hayas encontrado con que no puedes guardar las modificaciones que has hecho en un archivo, porque no tienes permiso de escritura o el archivo no te pertenece.

Continúa leyendo Guardar archivo como superusuario desde Vim

Barra de navegación de Bootstrap sin JavaScript

Bootstrap se distribuye con un archivo JavaScript llamado bootstrap.js que requiere jQuery. Este archivo permite, entre otras cosas, hacer funcionar la barra de navegación cuando hay menús desplegables, y desplegar y ocultar los enlaces de navegación, que se encuentran ocultos en pantallas con baja resolución.

El problema es que Bootstrap no ofrece la misma funcionalidad básica sin JavaScript. Es decir, si no tienes JavaScript activado, no puedes acceder a los menús desplegables ni ocultar y mostrar el menú de navegación en dispositivos móviles o con baja resolución. Sin embargo, es posible ofrecer esta funcionalidad sin JavaScript. En este artículo os muestro cómo hacerlo.

Continúa leyendo Barra de navegación de Bootstrap sin JavaScript

No escribáis espacios a final de línea

Este artículo va dirigido a programadores y a personas que editan texto sin formato. Los espacios a final de línea son algo molesto e inútil cuando la gente los pone sin pensar. Muchas veces porque no utilizan un buen editor que les señale dónde hay espacios a final de línea.

Textos a final de línea resaltados en Vim
Así veo yo los espacios a final de línea

A continuación, expongo algunas de las razones por las que son un problema:

  • Hacen que el tamaño de los archivos sea mayor.
  • Hacen difícil la navegación por el código. Por ejemplo, cuando pulsas la tecla Fin, lo que esperas es llegar a la última letra de la línea. Si el código o el texto que estás editando tiene caracteres al final de línea, puedes acabar varios espacios detrás del texto que quieres editar.
  • Pueden ocasionar errores muy difíciles de detectar. Por ejemplo, en Python,
    print('Hola\
        Mundo')
    

produce un error.

  File "", line 1
      print('Hola\
                ^
  SyntaxError: EOL while scanning string literal
  • Si introduces espacios a final de línea, estás cambiando el contenido del fichero innecesariamente. En la mayoría de sistemas de control de versiones esto es algo muy difícil de ver y puede generar problemas.

La mayoría de editores de texto permiten solucionar este problema. Si utilizas Vim, puedes eliminar todos los espacios a final de línea de un fichero con la siguiente orden: :%s/\s\+$//e.

Probablemente haya alguna razón más para no usar espacios de línea que tú conozcas y yo no conozca. Dímela en los comentarios para que la añada a la lista de razones de este artículo y cuéntame los problemas que te han ocasionado los espacios al final de línea.