otenrab retweeted
🚨 January: Diego Simeone taunts Vini Jr. after Xabi Alonso subbed him off and tells him ‘Florentino will kick you out.’
March: Angry Diego Simeone cries to referee after Vini Jr. scores 2 goals including the winner vs Atlético.
As the great Vini Jr. once said: “Football is beautiful because it always gives you second chances.”
otenrab retweeted
"Buenas noches, Pedri. Juanma Castaño, para Cadena COPE. Clásico duro, 'eh'? Podrías hacerme tres poses "cute" para cámara?"
otenrab retweeted
In CN regionals, a players Smolder got sniped by a Caitlyn from another board 😭😭😭 max sniper value gg
Hubo AKAParty anoche en Madrid entonces? O por qué Dalesom me ha estado llamando a las 8 de la mañana un domingo?
4
6
1,466
Se ve que Pablo nunca le ha pedido que estudiase gramática #LaVeladaDelAnoV
Hola creo que los TMD esos han secuestrado a @xus0o alguien sabe algo?
Podemos confirmar que @DalesomHS a veces si que escribe él los tweets
1
242
Habitualmente calificado como jugador de torneos, busca sponsor o mecenas que le lleve a Barcelona para poder pasar el fin de semana bebiendo con Dales... Digo, para ganar el major e ir a París
¡Terminamos el Clasificatorio Abierto!
Estos son los 16 jugadores clasificados al Spanish Major de @TFT_ES🥳
¡Enhorabuena a todos y nos vemos en Barcelona!
Clasificación completa:
🖥️bit.ly/OPENMAJOR_DIA3
2
18
2,266
otenrab retweeted
Patch 14.2 early tier list, will update in 12h
- Golden Ox / Vayne reroll is the best comp in the game
- Rengar / Jinx is only good with Jinx main/secondary carry
- Zeri best item is Holobow
- Chogath and A.M.P's are the worst units in the game 😂
- Hero augments are still mid
otenrab retweeted
¿Veinteañero metido en la tecnología?
¿Funcionario ya curtido?
Sigue leyendo; esto quizá te interese…
En mis tuits anteriores contaba algunas batallas programando en ensamblador en los años 90.
El lenguaje ensamblador es el Vietnam del programador de níveas sienes. Sirve para entretener a los chavales de ahora, alrededor de una fogata, con historias de bravura hexadecimal y napalm en mnemónicos. Sirve para evocar con nostalgia un tiempo de mocedad que idealizas. Sirve para decir orgulloso que estuviste allí, que luchaste. Sirve para todo eso …y poco más.
¿O quizá no?
Hoy programamos en lenguajes de alto nivel, con orientación a objetos, recolección de basura, librerías potentes, capas de abstracción… Han pasado treinta años y ahora programamos plataformas. La web, los teléfonos o los servicios en la nube o de inteligencia artificial son plataformas.
El lenguaje ensamblador es el inconveniente camino contrario: programar, directamente, las instrucciones al microprocesador. Aunque tiene y siempre tendrá su nicho, es un espacio menguante casi relegado del efervescente panorama laboral actual.
Si tienes veintitantos o treintaypico años y estás metido en la tecnología, enhorabuena: ¡estás en el sitio correcto y en el momento perfecto! Pero como mis sienes ya platean, déjame contarte, alrededor de la fogata, qué aprendí programando en ensamblador en los años 90 y viene conmigo a día de hoy. Quizá te sea útil también a ti.
Releyendo mis tuits del otro día, me fijé en esta instrucción:
En álgebra de Boole, un XOR es una disyunción exclusiva: devuelve verdadero sí y solo sí uno de los operandos es verdadero, pero no ambos.
Entonces, la instrucción XOR DX, DX almacenará siempre en el registro DX del microprocesador el valor cero, pues cuando ambos operandos son idénticos, la salida es falsa. Es una instrucción equivalente a:
MOV DX, 0
Pero, ¿acaso no es esta última más directa y legible que la otra? ¿Qué sentido tiene inicializar una variable haciendo un XOR en lugar de, simplemente, asignarle un cero como toda la vida?
Hay una razón: la eficiencia.
En la arquitectura Intel 80x86, la instrucción MOV DX, 0 se ensambla en tres bytes y consume dos ciclos de reloj:
BA 00 00
En cambio, XOR DX, DX se ensambla en dos bytes y consume un solo ciclo:
31 D2
Hay un ahorro de un byte y un ciclo, que en un 386 a 33 MHz significa 30,3 nanosegundos. Es decir, unas treinta milmillonésimas partes de un segundo.
En un bucle que inicializa un megabyte de memoria, o que apaga cientos de miles de píxeles de una pantalla o que anula un fichero en el disco… esta precaución devengaba ahorros tangibles.
Hay otra microoptimización interesante aquí:
La instrucción INC BX incrementa el valor almacenado en el registro BX. Como está duplicada, equivale a:
ADD BX, 2
Solo que el primer camino consume dos bytes, mientras que el ADD —más legible, sí— requiere del doble.
Este tipo de optimizaciones son cruciales al programar un virus informático no destructivo —que es lo que hace el código— y otras aplicaciones sensibles, pe…
—¡Ya vale de batallitas de yayo! Esto no me sirve hoy para nada —quizá digas, al escuchar todo esto sentado mirando la fogata.
¡Pues quizá sí! Y es que hay algo de este Vietnam que ha venido conmigo desde entonces, y que los programadores más jóvenes creo que están perdiendo: el valor de la eficiencia.
El cuello de botella ya no es ni la memoria ni la velocidad de tu dispositivo, sino el tráfico de red o la duración de la batería. La eficiencia nunca pasa de moda.
Cuando programábamos en los años 80 o 90, a menudo nos dábamos de bruces con los límites de la máquina. Cada byte, cada ciclo de reloj, contaba. ¡Y éramos conscientes! De esto emergió incluso un arte: la demoscene.
Muchos programadores de hoy añaden librerías y dependencias a sus proyectos con una ligereza que frunce el ceño de los yayos de níveas sienes curtidos en Saigón. Aplicaciones con cientos de kilobytes de JavaScript. Diarios digitales donde el 90 % de las peticiones HTTP son para rastrearte o invadirte de publicidad. Sitios WordPress en los que dos tercios del DOM es morralla. Una palabra lo describe: «bloatware».
Y, sí; cuando has reescrito tu código para ahorrar un byte o un ciclo de reloj, te duele tanto, tanto, cada euro que se va por el desagüe de una Administración pública ineficiente.
¿Te imaginas unos servicios públicos óptimos como programas de ensamblador? Licencias municipales tramitadas en 48 horas, una sanidad sin listas de espera, una justicia rápida y digital…
Si has llegado hasta aquí y has aprendido algo… ¡redifunde, amigo! Si te ha hecho reflexionar, dale «like» y compártelo. Es gratis. 🙃
¡Feliz semana a todos! 😃❤️
























