domingo, 28 de diciembre de 2025

Ping y Traceroute: Diagnóstico de red profesional desde tu Terminal

 

Hola, MacUsers y amantes de la Terminal.

¿Alguna vez tu conexión a internet ha estado lenta o ha fallado justo cuando más la necesitas? Antes de que llames a tu proveedor de servicios (ISP) o reinicies tu router por décima vez, existe una manera de diagnosticar profesionalmente qué está fallando: usando los comandos ping y traceroute en la Terminal.

Estas dos herramientas son el pan de cada día de cualquier administrador de sistemas y te darán la información crucial sobre la latencia y la ruta que toman tus datos.


🟢 1. El Comando ping: ¿Hay vida ahí fuera?

El comando ping es el test más rápido y simple para saber si hay conectividad entre tu ordenador y otro punto en internet (un servidor web, tu router, etc.).

Técnicamente, ping envía pequeños paquetes de datos ICMP (Protocolo de mensajes de control de Internet) y espera una respuesta, midiendo el tiempo que tarda en volver.

¿Cómo usar ping?

Abre tu Terminal y usa la siguiente sintaxis, reemplazando google.com por la dirección que quieres probar:

Bash
ping google.com

O, para probar la conexión a tu router local (la mayoría de las veces):

Bash
ping 192.168.1.1

¿Qué significan los resultados?

  • time=XX.X ms: Esta es la latencia (o lag). Es el tiempo (en milisegundos) que tarda el paquete en ir y volver.

    • Latencia baja (1-50 ms): Excelente.

    • Latencia media (50-150 ms): Aceptable, común en conexiones internacionales o inalámbricas.

    • Latencia alta (>150 ms): Problemas serios que afectarán la navegación y el streaming.

  • Request timeout o 100% packet loss: Significa que el servidor de destino no respondió o que los paquetes se perdieron en el camino. ¡Hay un problema de conexión grave!

  • Control + C: Recuerda presionar esta combinación para detener el comando ping, ya que, por defecto, se ejecuta indefinidamente.


🟡 2. El Comando traceroute: Siguiendo la ruta de tus datos

Si ping te dice que hay un problema, traceroute te dice dónde está ese problema.

traceroute (a veces llamado tracert en Windows) mapea la ruta completa que sigue tu paquete de datos desde tu Mac hasta el destino, pasando por múltiples saltos (hops) o routers intermedios.

¿Cómo usar traceroute?

Simplemente escribe el comando seguido del destino:

Bash
traceroute blogspot.com

¿Qué significan los resultados?

Cada línea en la salida representa un salto (un router o nodo) por el que pasa tu información.

ColumnaSignificado
N.º SaltoEl número del router en la ruta.
DirecciónLa IP o nombre del router (router de tu ISP, o de una compañía de telecomunicaciones).
Tiempo 1, 2, 3Tres medidas de latencia al llegar a ese router.

Diagnóstico con traceroute:

  • Problema Local (Saltos 1-3): Si los tiempos de latencia son altos o hay fallos en los primeros saltos (tu router o el primer router de tu ISP), el problema está probablemente en tu casa o tu proveedor.

  • Problema de Servidor/Internacional (Saltos Finales): Si los primeros saltos son rápidos, pero los últimos (cerca del destino) son lentos, el problema está en la infraestructura del servidor de destino o en un nodo troncal internacional que no puedes controlar.

  • * * * (Asteriscos): Si ves tres asteriscos seguidos, significa que ese router no respondió a la solicitud. Esto suele indicar un punto de fallo o congestión en ese salto específico.


💡 Conclusión

La próxima vez que experimentes una lentitud frustrante, no te limites a reiniciar. Abre tu Terminal y usa:

  1. ping para verificar la latencia y la conectividad general.

  2. traceroute para localizar exactamente en qué punto de la red se encuentra la congestión o el fallo.

Con esta información, no solo te sentirás más en control, sino que también podrás reportar un problema mucho más preciso a tu ISP.

domingo, 21 de diciembre de 2025

🗑️ Adiós al Archivo .DS_Store: Cómo eliminar permanentemente estos archivos molestos

 

Hola, MacUsers (y compañeros de red que usan Windows o Linux).

Si alguna vez has compartido archivos o has trabajado en repositorios de código junto a usuarios de Mac, seguramente te has topado con unos archivos invisibles y francamente molestos llamados .DS_Store.

Estos archivos son inofensivos, pero llenan tus carpetas de basura innecesaria y a menudo causan problemas al sincronizar con servicios en la nube o al subir proyectos a un servidor.

En este artículo, te explicamos qué es .DS_Store y, lo más importante, cómo decirle a tu Mac que deje de crearlos en unidades de red y cómo eliminarlos de forma masiva.


🧐 ¿Qué es exactamente el archivo .DS_Store?

.DS_Store (Desktop Services Store) es un archivo creado automáticamente por el Finder de macOS en cada directorio al que accedes.

Su única función es guardar las preferencias de visualización de esa carpeta específica, como:

  • La posición de los iconos.

  • El fondo de la carpeta.

  • Cómo se ordenaron los archivos por última vez.

Son esenciales para la experiencia visual de Mac, pero completamente inútiles y visibles (a menudo) para otros sistemas operativos, lo que los convierte en una basura digital.


1. La Solución Permanente: Deja de crearlos en la Red

El problema más grande ocurre cuando estos archivos se crean en unidades de red compartidas (servidores, NAS, pendrives formateados para otros sistemas, etc.).

Puedes indicarle a tu Mac que, al acceder a estas unidades, no cree ni escriba el archivo .DS_Store. Lo haremos con un comando simple en la Terminal:

Paso 1: Abrir la Terminal

  1. Abre la aplicación Terminal (la encuentras en Aplicaciones > Utilidades).

Paso 2: Ejecutar el comando para Deshabilitar

Copia y pega este comando exactamente como está escrito:

Bash
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE
  • DSDontWriteNetworkStores: Esta es la clave que le dice al "servicio de escritorio" de Apple que no escriba estos archivos.

  • -bool TRUE: Establece el valor de la clave en "Verdadero" (activado).

Paso 3: Reiniciar el Finder

Para que el cambio surta efecto inmediatamente, necesitamos reiniciar el Finder:

Bash
killall Finder

A partir de ahora, tu Mac ya no creará .DS_Store en unidades de red, servidores o pendrives compartidos. ¡Un dolor de cabeza menos!

↩️ Cómo revertir el cambio

Si alguna vez necesitas que tu Mac vuelva a crear estos archivos en la red, simplemente repite el Paso 2 cambiando el valor a FALSE:

Bash
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool FALSE

2. La Solución de Limpieza: Eliminar todos los .DS_Store

El comando anterior evitará que se creen nuevos archivos en la red, pero no eliminará los que ya existen.

Si tienes miles de archivos .DS_Store distribuidos en una unidad de red o en una carpeta de tu proyecto, puedes eliminarlos de forma masiva usando find en la Terminal.

⚠️ ADVERTENCIA: Usa este comando con precaución y asegúrate de estar en la carpeta correcta, ya que elimina archivos sin preguntar.

Paso 1: Navega a la carpeta principal

Usa el comando cd para ir a la carpeta (o unidad de red) que deseas limpiar. Por ejemplo, si quieres limpiar tu carpeta de Descargas:

Bash
cd ~/Downloads

Paso 2: Ejecuta el comando de eliminación masiva

Utiliza el siguiente comando. Le dice al sistema que "busque todos los archivos llamados .DS_Store dentro de esta carpeta y sus subcarpetas, y luego los elimine (-delete)":

Bash
find . -name ".DS_Store" -delete

Presiona Enter. El proceso será silencioso, pero rápido. ¡Todos los .DS_Store habrán desaparecido de esa ubicación!


Conclusión: Con estos dos sencillos pasos en la Terminal, habrás domado al molesto .DS_Store y mantendrás tus repositorios de código y tus unidades de red limpios y ordenados. ¡Tu yo desarrollador te lo agradecerá!

domingo, 14 de diciembre de 2025

El Comando say: Haz que tu Mac te hable: automatización y diversión con voz

 

Hola, MacUsers. ¿Sabías que dentro de la Terminal de tu Mac se esconde un orador profesional? Se llama say, y es un comando simple pero poderoso que convierte cualquier texto en voz de alta calidad.

Desde avisos de automatización hasta crear tus propios archivos de audio con voces de sistema, el comando say te permite darle voz a tu Mac sin instalar absolutamente nada.

¡Olvídate de Siri! Hoy te enseñamos a usar esta joya de la línea de comandos para que tu Mac te hable.


👂 El Básico: Que tu Mac salude

Empecemos por lo más sencillo. El comando say toma el texto que le pasas y lo lee en voz alta usando la voz del sistema que tengas configurada (la que escuchas cuando activas la "Selección de voz" en Accesibilidad).

Paso 1: Abre la Terminal

  1. Ve a Aplicaciones > Utilidades y abre Terminal.

Paso 2: El primer comando

Escribe lo siguiente y presiona Enter:

Bash
say "Hola, soy tu Mac y estoy listo para trabajar."

¡Voilá! Tu Mac ha hablado. Sencillo, ¿verdad?


🎤 Control Total: Voces y Velocidad

Lo divertido de say es que puedes personalizar la voz y la velocidad de la lectura, incluso eligiendo voces en distintos idiomas que ya tengas instaladas en tu sistema.

1. Elige una Voz Específica (-v)

Para que tu Mac use una voz diferente (como la popular Jorge en español de España o Paulina de México), utiliza el flag -v (de voice):

Bash
say -v Jorge "Tu Mac ha terminado de compilar el proyecto, desarrollador."

¿Cómo sé qué voces tengo disponibles?

Para obtener una lista completa de todas las voces disponibles en tu macOS (incluyendo las de otros idiomas que hayas descargado), usa el siguiente comando:

Bash
say -v '?'

2. Controla la Velocidad (-r)

Si quieres que tu Mac hable más lento o más rápido, usa el flag -r (de rate) seguido del número de palabras por minuto. El valor por defecto es aproximadamente $180$ a $200$ palabras por minuto.

Bash
say -r 400 "¡Soy el Mac más rápido del oeste!"

(Esto hará que hable muy rápido, ideal para avisos de emergencia).


🎧 Automatización: Crea archivos de audio

Aquí es donde say se convierte en una herramienta profesional. Puedes usarlo para generar un archivo de audio (por defecto, formato AIFF) de cualquier texto, sin necesidad de programas de grabación. Esto es perfecto para:

  • Audios de testing: Para verificar la voz de tu sitio web o aplicación.

  • Archivos de audio pequeños: Para integrarlos en presentaciones o vídeos.

  • Crear ringtones: Si sabes cómo convertirlos.

Para guardar la salida de voz en un archivo, usa el flag -o (de output), seguido del nombre del archivo y la extensión:

Bash
say "Recordatorio importante, son las 9 de la mañana. Bebe agua." -o recordatorio.aiff

El archivo recordatorio.aiff se guardará en la carpeta actual de la Terminal.


🤩 Bonus: Uso en Automatización (Scripting)

La verdadera magia ocurre cuando combinas say con scripts. Por ejemplo, podrías añadir un aviso de voz al final de un proceso largo de scripting o de compilación.

Ejemplo de uso en un script (para $HOME/.zshrc o .bash_profile):

Bash
# Script que se ejecuta al iniciar sesión o abrir Terminal
say "El sistema está listo para sus órdenes, jefe."

O, después de una instalación de Homebrew:

Bash
brew install python && say -v Jorge "La instalación de Python ha finalizado con éxito."

El comando say es un recordatorio de que macOS siempre tiene trucos ingeniosos bajo la manga. Es simple, es nativo, y es una forma fantástica de añadir un toque personal (o profesional) a tu flujo de trabajo en la Terminal.

domingo, 7 de diciembre de 2025

Mac al Máximo: Cambia el límite de archivos abiertos para desarrolladores y creativos

 

Hola, usuarios avanzados de Mac. Si eres desarrollador frontend/backend, diseñador con grandes proyectos o trabajas en servidores locales (como con homebrew o Docker), probablemente te has encontrado con el temido error:

"Too many open files" (Demasiados archivos abiertos)

Este error no significa que tu disco duro esté lleno. Significa que el sistema operativo de tu Mac ha alcanzado el límite de descriptores de archivos que un solo proceso puede manejar. Por defecto, macOS establece un límite de seguridad relativamente bajo (a menudo $256$ o $1024$), lo cual es insuficiente para entornos de desarrollo modernos o para aplicaciones de diseño profesional con miles de activos.

¡No te preocupes! Tenemos la solución. Usaremos el comando ulimit en la Terminal para liberar todo el potencial de tu Mac.


🛑 Entendiendo el Problema: El ulimit

El comando ulimit (User Limit) controla los límites de recursos de un usuario dentro de un shell (la Terminal). El parámetro que nos interesa es ulimit -n, que muestra el límite de descriptores de archivos abiertos (del inglés, number of open files).

En macOS, existen dos límites:

  1. Límite Blando (ulimit -Sn): Es el límite actual en vigor. Es el que podemos cambiar fácilmente.

  2. Límite Duro (ulimit -Hn): Es el techo máximo que el sistema operativo permite. Este es más difícil de modificar y requiere permisos de administrador (sudo).

Paso 1: Comprueba tu límite actual

Antes de cambiar nada, veamos cuál es tu límite actual.

  1. Abre la aplicación Terminal (en Aplicaciones > Utilidades).

  2. Ejecuta el siguiente comando para ver el límite blando (el que te afecta directamente):

    Bash
    ulimit -n
    

Lo más probable es que el resultado sea $256$ o $1024$.


✅ La Solución Rápida y Temporal (Por Sesión)

Para solucionar el error de forma inmediata y solo para la sesión de Terminal actual, puedes usar el comando ulimit -n con un valor más alto. Recomendamos un valor de $10240$ (diez mil veinticuatro) como buen punto de partida:

Bash
ulimit -n 10240

Nota: El límite duro de macOS suele ser $4096$ o $8192$. Si intentas establecer un límite blando superior a tu límite duro, recibirás un error. Si necesitas un límite aún mayor, tendrás que modificar la configuración del sistema (ver la sección avanzada).

Una vez ejecutado, tu proceso de Terminal y cualquier proceso que inicies desde ella (como tu servidor de desarrollo o build tool) podrán abrir hasta $10240$ archivos. Este cambio se pierde al cerrar la ventana de Terminal.


💾 Solución Permanente para Desarrolladores

Para los profesionales que necesitan este límite alto siempre, el cambio se debe aplicar de forma persistente. Esto se hace modificando el archivo de configuración de tu shell (por ejemplo, ~/.bashrc, ~/.zshrc o ~/.profile).

Si usas la shell por defecto de macOS (Zsh), sigue estos pasos:

Paso 1: Edita tu archivo de configuración

Abre el archivo .zshrc (o el correspondiente a tu shell) con un editor de texto como Nano o Vim:

Bash
nano ~/.zshrc

Paso 2: Añade la línea de ulimit

Al final del archivo, añade la línea de comando para establecer el nuevo límite:

Bash
# Aumentar el límite de descriptores de archivo para procesos de desarrollo
ulimit -n 10240

Paso 3: Guarda y aplica los cambios

  1. En Nano, presiona Ctrl + O (Guardar), luego Enter y Ctrl + X (Salir).

  2. Para aplicar el cambio sin reiniciar la Terminal, ejecuta:

    Bash
    source ~/.zshrc
    

¡Listo! Ahora, cada vez que abras una nueva ventana de Terminal, el límite de archivos abiertos se establecerá automáticamente en $10240$, eliminando el temido error "Too many open files" y permitiendo que tus herramientas trabajen a máxima potencia.


Advertencia: Cambiar límites del sistema siempre conlleva un riesgo. Aunque ulimit -n 10240 es seguro para la mayoría de los usuarios, asegúrate de no establecer valores absurdamente altos ($100000$ o más) sin saber exactamente lo que estás haciendo, ya que podrías inestabilizar el sistema en situaciones extremas.

🎨 Dale estilo a tu Terminal: Guía de Zsh + Oh My Zsh + Powerlevel10k

Si pasas horas frente a la línea de comandos, ¿por qué no hacerla visualmente atractiva y funcional? La mayoría de los sistemas vienen con B...