¡Bienvenido a mi Blog!

Acá comparto una colección de artículos sobre Project Management, Desarrollo Full Stack y Tecnología, incluyendo mis propias opiniones (¿por qué no?), siempre poniendo especial énfasis en Fedora Linux. Aquí encontrarás desde sugerencias para solucionar problemas hasta tips y trucos que me resultaron útiles. Prefiero mantener las cosas simples y eficientes, así que en vez de una función de búsqueda convencional, te sugiero usar CTRL+F para encontrar lo que buscas. Espero encuentres algo interesante o, por lo menos, entretenido.

Cómo Instalar el Stack LAMP en Fedora 39 (y quizá otros)

Encontré una guía sencilla para instalar LAMP: Linux, Apache, MySQL y PHP. Doy por hecho que ya tenés Linux instalado; este artículo está especialmente centrado en Fedora.
Haz clic en el botón que dice Link para visitar FossLinux.

Link

Limitar el tamaño de los registros de Fedora

Puede que no necesites tener registros enormes en tu sistema. Uso una estación de trabajo y unos días de registros son suficientes para mí.
Aquí está la explicación del código:

  1. sudo journalctl --vacuum-size=10M: Reduce el espacio utilizado por los registros del journal a 10 megabytes, eliminando las entradas más antiguas si es necesario.
  2. sudo journalctl --rotate: Cierra el registro del journal actual y comienza uno nuevo. Útil antes de archivar o limpiar registros.
  3. sudo journalctl --vacuum-size=10M --vacuum-time=3d: Limita el tamaño del journal a 10 MB y elimina las entradas que tengan más de 3 días.
  4. echo "SystemMaxUse=50M" | sudo tee -a /etc/systemd/journald.conf: Añade "SystemMaxUse=50M" al archivo de configuración del journal, estableciendo un límite de 50MB para el journal.
  5. sudo systemctl restart systemd-journald.service: Reinicia el servicio del journal de systemd para aplicar las nuevas configuraciones.
					                    
sudo journalctl --vacuum-size=10M
sudo journalctl --rotate
sudo journalctl --vacuum-size=10M --vacuum-time=3d
echo "SystemMaxUse=50M" | sudo tee -a /etc/systemd/journald.conf
sudo systemctl restart systemd-journald.service
					                    
					                
Subir

Autoupdate Fedora

Mantener un sistema Fedora actualizado es ahora sin esfuerzo gracias a dnf-automatic. Esta herramienta automatiza el proceso de actualización, asegurando que tu sistema permanezca seguro y al día con mínima intervención del usuario. La configuración implica instalar dnf-automatic, configurarlo para aplicar actualizaciones automáticamente, y habilitar los temporizadores del sistema necesarios. Una vez en su lugar, dnf-automatic verifica regularmente y aplica actualizaciones en segundo plano, simplificando el mantenimiento del sistema.

El script concluye verificando la activación exitosa de estos temporizadores, proporcionando feedback sobre cualquier problema potencial. Este enfoque no solo simplifica el proceso de actualización sino también mejora la seguridad y el rendimiento del sistema, permitiendo a los usuarios concentrarse en sus tareas primarias sin preocuparse por actualizaciones manuales, aquí está la explicación del código:

sudo /usr/bin/dnf -y install dnf-automatic: Instala el paquete 'dnf-automatic' para actualizaciones automáticas del sistema.
echo "apply_updates = yes" | sudo tee -a /etc/dnf/automatic.conf: Configura 'dnf-automatic' para aplicar actualizaciones automáticamente modificando su archivo de configuración.
sudo /usr/bin/systemctl enable --now dnf-automatic-install.timer dnf-automatic.timer: Habilita e inicia los temporizadores 'dnf-automatic', programando el sistema para verificar y aplicar actualizaciones automáticamente.
if [ $? -eq 0 ]; then ... else ... fi: Verifica si el comando anterior fue exitoso y proporciona el feedback correspondiente, confirmando la activación exitosa del temporizador o indicando un error.

                    
# Instala dnf-automatic para actualizaciones automáticas del sistema
sudo /usr/bin/dnf -y install dnf-automatic

# Añade configuración para aplicar actualizaciones automáticamente
echo "apply_updates = yes" | sudo tee -a /etc/dnf/automatic.conf

# Habilita e inicia los temporizadores dnf-automatic
sudo /usr/bin/systemctl enable --now dnf-automatic-install.timer dnf-automatic.timer

# Verifica si los comandos systemctl fueron exitosos
if [ $? -eq 0 ]; then
    echo "Temporizadores dnf-automatic habilitados con éxito."
else
    echo "Error al habilitar los temporizadores dnf-automatic."
fi
                    
                
Subir

Cómo averiguar la marca, el modelo y otra información del ordenador

El comando sudo dmidecode -t system se utiliza para acceder al BIOS y obtener información detallada sobre el ordenador, incluyendo el fabricante, modelo, versión y número de serie.

                        
sudo dmidecode -t system
                        
                    
Subir

¿Excesivo intercambio de memoria?

Si principalmente te dedicas a actividades como navegar por Internet, disfrutar de música, trabajar con documentos, hojas de cálculo o tal vez algunas tareas de programación, y tu ordenador tiene 16GB de RAM o más, es recomendable ajustar la configuración de "swappiness" a un número más bajo, digamos alrededor de 10. Este cambio induce a tu sistema a preferir usar la RAM real en lugar de depender del espacio de intercambio. ¿La ventaja? Es probable que notes un rendimiento mejorado, especialmente cuando hay suficiente RAM disponible.


sudo echo "vm.swappiness=10" 
sudo tee -a /etc/sysctl.conf
sudo sudo sysctl -p
Subir

Configurar un Hotspot con tu Laptop Fedora

En días en los que estoy trabajando desde la oficina y conectado a la red mediante un cable Ethernet, encuentro que transferir archivos entre mi laptop, tableta y teléfono a través de la red WiFi separada puede ser frustrantemente lento. (Consulta el artículo de Resilio en este blog para más detalles).
Afortunadamente, con un adaptador WiFi sin usar en mi laptop, decidí convertirlo en un hotspot para una experiencia de transferencia de archivos mucho más rápida. Esto requiere instalar un servidor DHCP en tu laptop, lo cual es sorprendentemente ligero en recursos.
Así es como lo configuré:


# 1) Instalar la funcionalidad del servidor DHCP.
sudo dnf -y install dnsmasq
sudo systemctl start dnsmasq

# 2) Para habilitarlo permanentemente
sudo systemctl enable dnsmasq

# 3) Para iniciarlo solo cuando sea necesario
sudo systemctl start dnsmasq

# 4) Identifica el nombre de tu interfaz WiFi
nmcli device

# 5) Reemplaza  con el nombre de tu interfaz WiFi, y configura tu 
nmcli device wifi hotspot ifname  con-name  ssid 
nmcli con modify  802-11-wireless.mode ap 802-11-wireless.band bg ipv4.method shared
nmcli con modify  wifi-sec.key-mgmt wpa-psk

# 6) Configura la contraseña de tu hotspot
nmcli con modify  wifi-sec.psk 

# 7) Activa tu hotspot
nmcli con up 

Subir

Herramientas Útiles

Sincroniza tu música, archivos y más

Sincronizar música de mi workstation Fedora Linux a mi teléfono Android solía ser un desafío hasta que descubrí Resilio. Es tan simple como sincronizar una carpeta en mi computadora con el cliente Resilio en mi teléfono. La música que selecciono aparece automáticamente en mi tarjeta SD. Las eliminaciones o adiciones en un lugar se reflejan en el otro dispositivo sin problemas.

Pero no se detiene en la música. He extendido esta conveniencia a mi carpeta de Documentos, sincronizándola entre mi workstation y mi laptop. Los videos en mi tableta Android también están sincronizados, creando un 'Dropbox' personal basado en casa, todo gratis. Resilio no es solo para uso personal; también comparto una carpeta con mi hermano ya que estamos en la misma línea de trabajo.

La configuración es sencilla, ofreciendo compartir archivos y carpetas con opciones de solo lectura y lectura y escritura, un simple escaneo de QR o un enlace es suficiente. Mientras que hay versiones profesionales y empresariales, la versión gratuita satisface perfectamente mis necesidades.

Subir Link

Descubre información básica del sistema con Neofetch

Neofetch es una herramienta útil para aquellos que necesitan un resumen rápido de su sistema operativo y especificaciones de hardware. Esta utilidad de línea de comandos muestra efectivamente datos generales del sistema, ideal para usuarios ocasionales y profesionales de TI por igual. Ofrece un breve resumen de tu versión de OS, modelo de computadora, tipos de CPU y GPU, y la cantidad de RAM física instalada.
Apto para diagnósticos básicos del sistema y monitoreo, Neofetch enriquece esta información con una representación ASCII del logo de tu sistema operativo, añadiendo un toque visual único. Para una salida más simplificada, particularmente útil para scripting o mantener un registro formal, el parámetro `--stdout` puede usarse para generar una salida solo de texto. Ya sea que estés haciendo una revisión rápida, evaluando el rendimiento del sistema o simplemente curioso sobre las especificaciones de tu dispositivo, Neofetch proporciona una forma simple pero completa de acceder a esta información. Es compatible con una variedad de plataformas, incluyendo Linux, macOS y Windows, lo que lo convierte en una elección versátil para sistemas diversos. Ejecutar Neofetch te da una instantánea inmediata de las características clave de tu sistema.

                        
# Instalar Neofethc
sudo dnf -y install neofetch

# Ejecutar neofetch mostrando logo
neofetch


# Ejecutar neofetch solo texto
neofetch --stdout

                        
                    
Subir Link

¿Cansado de lidiar con m4a, MP3, FLAC?

Di adiós a la molestia de tratar con varios formatos propietarios. Con SoundConverter, transforma sin esfuerzo todos tus archivos de audio a tu formato preferido. Mi favorito es OGG, pero siéntete libre de elegir el que más te convenga.
¿Tienes un audiolibro en estéreo? SoundConverter puede convertirlo eficientemente a mono, ayudándote a ahorrar valioso espacio de almacenamiento sin comprometer la calidad. Recuerda, el oído humano típicamente no puede discernir calidades de sonido más allá de 192 kbps. Entonces, ¿por qué no optimizar tus archivos de audio?
SoundConverter te permite mantener el equilibrio perfecto entre tamaño de archivo, formato y tasa de bits. Ya sea que estés trabajando con pistas individuales o carpetas enteras, esta herramienta simplifica el proceso. Disfruta de una experiencia de conversión de audio sin interrupciones.
Tiene una interfaz gráfica, así que solo instálalo y disfrútalo!

                        
sudo dnf -y install soundconverter
                        
                    
Subir Link

¿Cansado de reproductores de audio tediosos? Prueba Audacious

Me encanta usar Audacious, ya que se destaca en su compromiso de reproducir tu música a tu manera, todo mientras consume pocos recursos de tu ordenador.
La interfaz intuitiva del reproductor admite arrastrar y soltar para carpetas y archivos de canciones individuales, facilitando la navegación a través de tu biblioteca de música. Buscar artistas y álbumes es fácil, o puedes sumergirte en la creación de tus listas de reproducción personalizadas. Ya sea que estés disfrutando de CDs o transmitiendo música desde Internet, Audacious ofrece una experiencia de escucha fluida. Simplemente me encanta.

  sudo dnf -y install audacious  
Subir Link

Cosas que he encontrado interesantes

40 años desde el primer Mac: Los humildes orígenes de un gigante tecnológico

En aquellos tiempos, el Macintosh original tenía un precio de $2,495. No era poca cosa, especialmente en los '80s, cuando las calentadoras eran una declaración de moda y el mundo bailaba al ritmo del synth-pop. Avanzamos 40 años, y esa suma se convierte en un enorme $7,390 en dólares de hoy, ajustando por inflación. Para pintar un cuadro en términos actuales, imagina gastar esa cantidad en una laptop de gama alta, y tendrás una idea del premium que los primeros adoptantes pagaron por el privilegio de poseer un Macintosh.

Pero divirtámonos un poco con esto, ¿de acuerdo? Si fuéramos a convertir esa cantidad en algo un poco más... frutal, como bananas a $1.70 por kilogramo, estarías mirando la compra de alrededor de 4,347 kg de esas maravillas amarillas. ¡Eso es un montón de bananas!

Bromas aparte, mientras que el Macintosh original puede parecer modesto según los estándares de hoy, fue nada menos que revolucionario en su momento. Abrió un mundo donde los ordenadores podían ser más que solo herramientas para cálculos; podían ser portales a la creatividad y expresión personal. Es un legado que ha moldeado la tecnología que usamos hoy, donde el poder de un ordenador que una vez llenó una habitación ahora cabe cómodamente en la palma de nuestra mano. Entonces, aquí va un saludo al Macintosh, el pionero que no solo computaba sino que inspiró una forma completamente nueva de interactuar con la tecnología, todo mientras el mundo estaba ocupado moviéndose físicamente en spandex de neón.

Elazar Pimentel, 2024
Subir Link

La Odisea de un Programador: De C a Carpintería

Programación, ah, el laberinto interminable de lenguajes, cada uno más intrincado y esotérico que el último. Mi viaje comenzó en la sopa digital primordial con C, un lenguaje tan cercano al metal que podías oír el zumbido de la CPU. Pero tan pronto como dominé sus llaves, fui arrojado al mundo orientado a objetos de C++, donde mi código comenzó a parecerse a un organismo complejo, evolucionando y adaptándose.

La trama se espesó mientras me adentraba en las profundidades de las bases de datos con dbase y Clipper. Desde allí, fue un salto, un brinco y un salto a las vibrantes tierras de HTML, donde una vez ingenuamente pensé que todo podría resolverse con tablas. Ah, la era de las tablas, un tiempo más simple cuando los diseños eran una pila precaria de celdas y filas. Pero pronto, esto también fue barrido por la ola de CSS y el poderoso tag div, desterrando a las tablas a los oscuros rincones de datos tabulares.

Visual Basic llamó, atrayéndome al reino de las aplicaciones de Windows, solo para ser seguido por el canto de sirena de ASP y las consultas estructuradas de Microsoft SQL Server. La web era una frontera salvaje, y yo, un vaquero digital, manejando código y marcado en la búsqueda de la perfección de píxeles.

Como si atrapado en un torbellino, fui arrastrado por los fríos vientos de ColdFusion, solo para aterrizar en el cálido abrazo de MySQL y las puertas perladas de Perl. JavaScript y CSS añadieron estilo y animación a mis creaciones, mientras PHP susurraba dulces promesas, prometiendo felicidad en el lado del servidor. Python se deslizó en mi caja de herramientas para esas tareas cotidianas, un lenguaje tan versátil que se sentía como una navaja suiza en mis manos.

Justo cuando pensé que había encontrado mi lugar, Go (Golang) irrumpió en escena, prometiendo un rendimiento sin par. Pero ay, era una sirena de nicho, atrayendo solo a los navegantes más valientes. Rust, decían, era el futuro, pero también era un camino menos transitado. Entonces, de vuelta a los brazos reconfortantes de PHP y Python fui, solo para que me preguntaran lo impensable: "¿Cómo no aprendiste Java?"

Y justo cuando pensé que entendía el paisaje, MVC irrumpió, trastornando mis nociones de desarrollo web con sus Modelos, Vistas y Controladores. ASP, PHP... no importaba. El mundo era modular ahora. Pero no, las arenas cambiaron de nuevo. Laravel y MVC, mi dominio duramente ganado, eran noticias viejas. ¿El nuevo chico en el bloque? React con Java. Y no nos olvidemos de las bases de datos NoSQL, un rebelde contra el mundo estructurado de SQL, prometiendo flexibilidad y escalabilidad.

Así que aquí estoy, contemplando una vida más simple. ¿Carpintería, tal vez? Hay un cierto atractivo en trabajar con madera, dar forma y crear con tus manos, lejos de la inconstancia del mundo digital. O tal vez solo ver a otros hacerlo en YouTube, soñando con una vida menos codificada.

Pero ay, el deber llama. Es hora de verificar qué nuevo lenguaje de programación, marco o tendencia está esperando para llevarme por los aires. Java y NoSQL reinan hoy, pero en este mundo en constante evolución de la tecnología, ¿quién sabe qué traerá el mañana? Hasta que nos encontremos de nuevo, compañeros viajeros en esta odisea de codificación.

Elazar Pimentel, 2024
Subir