¿Sabías que puedes reemplazar grep y sed por perl -pe y tener todo el poder de los
regex de Perl?
Ejemplos:
Supongamos que tienes un archivo con nombres de módulos de Odoo separados por coma, del que quieres extraer todos aquellos que:
payment.Usando solo grep o sed es muy complicado porque no tienen
negative lookaheads
(búsqueda anticipada negativa). En cambio, con Perl es “muy” fácil:
¡Por fin ha llegado Copier 6! Te cuento las novedades.
También puede que estés pensando si ofrecerte como voluntario para mantener algún proyecto de código abierto. Te cuento cómo ha sido esta experiencia, por si te sirve para decidir.
Refactoricé todo el núcleo del programa. Ahora es mucho más mantenible. Gracias a que había tantos tests, he podido comprobar que todo sigue funcionando bien.
Ahora se usa la sintaxis estándar de Jinja por defecto. Así las plantillas Copier se integran mejor con el IDE, y la documentación de Jinja se hace más entendible.
“¿Cómo instalar la aplicación _______?”
Seguro que te lo has preguntado. Si usas GNU/Linux, la respuesta habitual es: instalando un paquete de software.
Pero… es que existen muchos formatos de paquetes. ¿Cómo saber cuál es mejor?
Te cuento.
Digo “de sistema” porque, al instalar un paquete en este formato, realmente lo que estamos haciendo es permitir que un nuevo componente de software pase a formar parte de nuestro sistema operativo.
A veces puedes tener una webcam en la que se observa un parpadeo (“flickering” en inglés).
¿Cómo resolverlo?
En mi caso, tengo una Logitech C920 HD Pro y me producía ese problema.
Normalmente es porque la cámara está trabajando a 60 Hz y el monitor a 50, o viceversa.
Para mi cámara en concreto, fue sencillo:
En Linux también es sencillo de hacer si instalas el paquete gtk-v4l. Si estás en Fedora 35:
Conforme pasan años, si sigues trabajando en informática, poco a poco te va interesando más la ergonomía. Esos teclados y ratones ergonómicos tan “raros”… son muy caros… ¿vale la pena?
Te cuento mi experiencia con 2 de ellos.
El primero de ellos, Microsoft Sculpt Ergonomic Desktop (teclado y ratón en un solo paquete):

El segundo, la combinación del teclado Logitech Ergo K860 y el ratón Logitech Ergo MX Vertical:
Parece que tomar notas es una tontería, pero no es tan sencillo. Mis requisitos:
Puntos extra:
Me han entrevistado en Podcast.__init__ hablando acerca de Copier.
Tener una máquina virtual Windows en Linux tiene varias utilidades:
Pues resulta que conseguirla es mucho más sencillo de lo que te imaginas:
Odio los booleanos negativos.
Si alguna vez, por algún motivo cualquiera, necesitas usar una variable booleana (algo habitual), por favor piensa siempre en positivo.
No sabes la cantidad de neuronas que he malgastado interpretando código como este:
# Declarar variable
no_actualizar = True
# Usar variable
if not no_actualizar:
hacer_algo()

O sea… ¿por qué no escribirlo así?
# Declarar variable
actualizar = False
# Usar variable
if actualizar:
hacer_algo()
Y vez tras vez sigo viendo ese patrón… En serio, siempre positivos por favor. Y si
tienes que negarlo, ¡pues pon un operador not delante, que para eso existen!
¿Qué hacer cuando te encuentras esta 💩 en la terminal?
➤ sudo apt-get remove linux-image-generic
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Tal vez quiera ejecutar «apt-get -f install» para corregirlo:
Los siguientes paquetes tienen dependencias incumplidas:
linux-generic : Depende: linux-image-generic (= 4.4.0.143.151) pero no va a instalarse
linux-modules-extra-4.4.0-143-generic : Depende: linux-image-4.4.0-143-generic pero no va a instalarse o
linux-image-unsigned-4.4.0-143-generic pero no va a instalarse
linux-signed-image-generic : Depende: linux-image-generic pero no va a instalarse
E: Dependencias incumplidas. Intente «apt-get -f install» sin paquetes (o especifique una solución).
Complicadete, pero vamos a ello…