Muere joven como un héroe o viejo como un villano
De eso se trata este video, automatic/wordpress.com siendo el villano, solo porque alguien es su compentencia…
YouTube: Bad ports
Interesting how great games where ported to consoles that hardly support them. I remember playing Mortal Kombat on a Famicom, here in Mexico a Famicom was a pirated version of the NES, but it was pretty good (if you had enough imagination). Other ugly ports at that time included The Lion King and Street Fighter II
Licenses

C’mon Netflix are you serious??

I don’t know why. I don’t like that movie, I don’t watch post-apocalyptic movies… why??
Interesante que mientras Finder mide el espacio libre diferente del “About this Mac”
Yo solo quería dormir la máquina
Y me aparece el manual de MacOS X Snow Leopard, que carajos tiene que hacer ese manual aquí??

Hay algún beneficio en tomar la temperatura a las personas?

Lo pregunto porque se supone que hay personas que están infectadas por coronavirus pero son asintomáticas, es decir, no tienen síntomas de la enfermedad, por lo tanto no tienen temperatura y tampoco tienen tos u otro indicador.
¿Tiene sentido?, tal vez si, el mínimo, para hoy, pero mañana?, no lo creo si no se repite la actividad.
La pregunta viene porque en algunas tiendas (Soriana por ejemplo) te toman la temperatura para poder entrar, ahí parece haber algo de razón, si tienes temperatura no entras, pero ¿en el mercado? ¿y a los comerciantes? como que no le veo mucho sentido… incluso en Soriana, si llegas a las 12 o 1 de la tarde cuando el sol esta en su apogeo, lo mas probable es que muestres una temperatura elevada, vienes de estar en el sol, en el calor, es lógico, y no por que tengas coronavirus, solo porque vienes de un horno; por eso dije que hay “algo” de razón.
Tiene o no tiene?
[1] https://www.facebook.com/photo.php?fbid=2927130034008191&set=a.344817578906129&type=3
Un poco de Titan Fall en PS 4 – Youtube Share
Ugh… unfortunately I couldn’t get anything good, at least I had fun!
Y se nos fué el soporte para 2.X
La versión mayor mas vieja de Python acaba de ser “terminada”, al dejar de tener soporte oficial por parte de la PSF. Python 2.x no tendrá mas actualizaciones.
Desde hace tiempo ya la versión menor de Python se retuvo en 2.7, quedando en el aire la versión 2.8 que nunca vió la luz. Python 3, la versión mayor de Python ha estado entre nosotros desde 2008, 11 años le ha costado para poder ser la unica versión mayor de Python.
Y por que le tomó a Python cambiar por completo un total de 11 años?. Bien la cuestión es que Python 3.x no es compatible con Python 2.x, es decir, si escribes un programa pensando en la sintáxis de Python 2.x es muy probable que no funcione al correrlo con el interprete de Python 3.
La adopción de Python 3 entonces se retraso porque los desarrolladores de las principales librerias y apps tuvieron que empezar a soportar Python 3. El tener dos versiones de Python provocó que muchos desarrolladores ya metidos en Python continuaran con Python 2, las nuevas generaciones empezaron con Python 3 porque era lo mas nuevo, pero las generaciones que de por si usan Python se tomaron mas tiempo.
En mi opinión, depreciar por completo Python 2 está principalmente motivado a que muchos todavia usan Python 2 porque es simplemente mas cómodo continuar con el mecanismo que ha existido durante tanto tiempo en lugar de migrar. Dicho de otro modo, depreciar Python 2 es una forma de obligar a los desarrolladores a usar Python 3.
¿Tu por que crees que Python 2 aguantó tanto (11 años) en ser depreciado?
Unicornio mariguano
Living With Yourself #Netflix
https://www.youtube.com/watch?v=5w54yW2Ur50
Ok, time to talk about this show.. I have to assume that by quick watching the trailer I thought I t was a movie. I mean, it never crossed my mind this kind of story to last for a serie.
I like Paul Rudd a lot, I like the movies where he have participated for a long now, he is.. charming. and in this show it was just like that. But the show is not good just because of Paul, it was good to me because of the story, the characters and the way the go back and forth in the time line.
We (Cristina and I) watched the first season in just one afternoon. Episodes are king of short and I really with they be longer, but maybe is asking too much because as it is pretty well.
The story have some loose ends so the second season is pretty reasonable, I don’t want to mention anything about the story so you can go and watch it, but is pretty good to leave it in just one season.
So, if you have Netflix (I bet you do), go and watch it.
A look into Caldera Open Linux… really nice memories.
One of my favorite distros for the time I started to use Linux.
My very first (usable) bistro was Corel Linux but when I got Caldera Linux in one of those PC-Magazine CDs I really love it. Unfortunately it was a demo CD so after a while I have to format the PC and reinstall to continue using it.
At that time I was neither a fan of KDE or Gnome (which was in its very early stages). KDE was more developed though, and that’s why most distros have it as the default desktop environment.
It was until I’ve got a Mandrake 7.2 (I think it came in Todo Linux Magazine) that I started to use GNOME, I think it was around 2000.
As you can see, KDE at that time had a lot of the features that we enjoy today. Virtual Desktops, a configurable top menu bar, a fully functional file browser, an internet browser but not it was not limited to just the browser, it already came with many other internet features like email and FTP clients.
By this time I though that Linux was years ahead in the Desktop environment, today I can say the same.
Who Invented the iPhone? (It Wasn’t Steve Jobs) – You really need to watch this
Wonderful production, things that maybe you don’t know.
And is interesting so you can understand how hard is to build a product like the iPhone, that given today, other companies are still copying. You don’t believe me?, look at what the iPhone 11 looks like and what the Pixel 4 looks like.
iPhone 10 ditches finger print to unlock phone (Touch ID) and replaces it with Face unlock… then, there is facial unlock in Pixel phones!!.
iPhone 10 presents a notch display.. every new phone comes with a notch display!.
The fact that Apple did it right at making a mobile device like iPhone is the proof of how serious they took the making of the iPhone was. Android was definitively going to be another thing before iPhone was introduced.
And I don’t care if it hurts to you.
Microsoft Java
Que hace el logotipo viejo de Instagram aquí??
#macOS Catalina is “a la – #Vista -“
Do you remember when Windows Vista was presented, it has to ask for permission to almost anything…
There’s is no need…
BUGATTI Chiron breaks through magic 300mph barrier
Ufff… this is super !
Claramente podemos ver a un profe de la universidad usando #Pascal en aplicaciones y servicios de la actualidad.
Why new Android is called ” Android 10″?

A simple way to get a bit more for Android, using a number is good, make it 10 sounds official! like the Ten Commandments.
They probably claim that Android 10 is the 10th release of Android, but they would be skipping minor version that were actually released as major versions.
Do you remember Android 1.5 (cupcake) -> 1.6 (Donut) or in the 2.X.. (Eclair, Froyo, Gingerbread), 4.X (Ice cream sandwich, Jelly Bean).
So, current releases are this:
- Android 1.5: Android Cupcake
- Android 1.6: Android Donut
- Android 2.0: Android Eclair
- Android 2.2: Android Froyo
- Android 2.3: Android Gingerbread
- Android 3.0: Android Honeycomb
- Android 4.0: Android Ice Cream Sandwich
- Android 4.1 to 4.3.1: Android Jelly Bean
- Android 4.4 to 4.4.4: Android KitKat
- Android 5.0 to 5.1.1: Android Lollipop
- Android 6.0 to 6.0.1: Android Marshmallow
- Android 7.0 to 7.1: Android Nougat
- Android 8.0 to Android 8.1: Android Oreo
- Android 9.0: Android Pie
Android 10 should be 15 instead of 10. ‘Cuz 10 Sounds Official!!
Max Payne… 16 Years Later
One of the games that I really enjoyed until I finished.. Actually the PS3 version of Max Payne was really delightful in the story mode and multiplayer. But this video talks about the first version of Max Payne.. a classic.
Explain: {,} in cp or mv Bash Shell Commands – nixCraft
Just a nice post with a some nice examples about how to use brace expansion in bash. Assuming you use the shell and bash script to automate your tasks this is a nice reference.
Continue reading
Truco de Python, como crear objetos “flojos” (Lazy objects)
Este es un “re-post” en español de este otro articulo que escribí en inglés: Python trick: How to make lazy objects?. Si ya leíste aquel articulo igual te invito a que leas este, compares y compartas.
Esta vez voy a hablar de los “lazy objects”, los he llamado así porque son mas o menos similar a lo que usaba con los “Lazy treeviews” en GTK donde el árbol muestra los expansiones pero no se cargan los nodos hijos hasta que expandes el nodo. Lo que quiero entonces es crear objetos que sirvan para contar, que tengan un tipo de dato, pero que no carguen nada de datos hasta que se necesite.
¿Por que haría esto?, bueno, actualmente estoy trabajando en un programa que muestra una lista de clientes y muestra cuántas cuentas tiene, estas cuentas son algo complejas así como crear el objeto para representarlas. Este objeto es responsable de cargar y guardar datos, y cualquier dato necesario es accesado via “propiedades”.
En mi primer intento, el objeto cargaba con los datos tan pronto como el constructor era llamado, pero a veces nunca accedía a la información en dicho objeto, recuerden, un client puede tener muchas (y me refiero, muchas muchas) cuentas, entonces, ¿por que cargar todos los datos si hay una oportunidad de que nunca voy a usar ese dato?. Bueno, está ahí por qué también hay una oportunidad de que voy a necesitar ese dato.

Entonces, como podría crear un objeto y despues cargar los datos cuando alguien los requiera?. Eso podría ser fácil… tal vez no ?. Una aproximación es hacer uso de las “propiedades” de Python, crear el objeto y cuando alguien necesite un valor de este objeto entonces usar la propiedad para obtener el dato, procesarlo y retornar un valor, una propiedad se puede definir así:
He creadola clase “demo” y la propiedad “some_property”.

Python va a llamar el método get_some_property
permitiéndote hacer el truco. Pero si tienes un objeto con mas y mas propiedades es mejor obtener todos los datos de una vez y solo usar propiedades para regresar un pedazo de el. Podrías llamar a un método en cada propiedad si el contenedor está vacío pero para mi no es lo mejor.
Lo que podemos hacer, es obtener los datos la primera vez que los necesites, pero como sabría que datos/variables son requeridas en mi objeto?.
Bueno, pues las clases de Python tienen ciertos métodos, los llamados “magic methods”, uno de ellos es __getattribute__. Este método te permite manejar cada petición a cualquier propiedad o variable de clase en tu objeto.
Con esto puedes buscar en tu objeto, saber si el contenedor esta vacío y si está vacío entonces llenarlo con datos antes de retornar el valor de la propiedad ?
Digamos que el objeto demo
tiene un diccionario llamado __data
donde almacenaremos la información necesaria, también tenemos propiedades que buscarán por esta información. también tiene una referencia a la capa de almacenamiento.

Presta atención que he usado object.__getattribute__
en lugar de self.property
, si usara self.property
esto llamaría a self.__getattribute__
y esto causaría una excepción de recursión.
Con eso, podemos crear un gran numero de objetos de forma rápida, al mismo tiempo que reducimos el uso de memoria. La paga es que obtener los datos será mas caro si llegaremos a requerir todos los datos de todos los objetos al mismo tiempo.
Test
Bye bye Airmail
Fue bueno mientras duró, pero hay otras opciones que no me piden una suscripción por tener push notifications.
8 errores que todo programador novato comete
1. Escribir código sin planear
Este es el primero, cuando nos cuentan de un proyecto lo primero que hacemos es empezar a divagar, es mas, ni bien nos estan terminando de contar los requerimientos y ya hemos escogido el lenguaje, el framework y a veces hasta el pilón.
Siempre es importante pensar el proyecto, ¿es viable?, hay que investigar y planear, entonces, escribe, valida los resultados y modifica.
2. Planear demasiado las cosas
También este es un error, a veces sobrepasamos demasiado las cosas y terminamos creando un monstruo porque “en el futuro puede que llegue a necesitar esta característica”, es mejor implementar algo simple y que logre el propósito aunque despues tengamos que reescribr parte del código.
3. Subestimar la calidad del código escrito
La mayor parte del tiempo leemos código, se lee mas de lo que se escribe, si quieres entender que hace tu código dentro de 6 meses es mejor que apliques las convenciones para escribir buen código.
4. Escoger la primera opción
Este va un poco de la mano de la primera, a veces creemos que ya tenemos la solución porque fue lo primero que se nos vino a la mente, pero a veces las soluciones pueden ser mas elegantes y mas simples si las pensamos un poco mas.
5. No Googlear
No somos un sabelotodo, si hay algo que no sabes entonces googlealo, incluso, si lo sabes pero crees que puede hacerse de una forma mejor, igual, googlealo.
6. No usar las estructuras de datos apropiadas
Aprende los “pros” y los “contras” de los tipos de datos de tu lenguaje de programación a usar, algunos te darán flexibilidad y facilidad de usar, algunos te darán velocidad y mejor uso de los recursos.
7. Dejar el código peor de como estaba
A veces en nuestro intento de arreglar algo o de agregar una nueva característica dejamos nuestro código hecho un cochinero, siempre procura dejarlo un poco mejor de cómo lo encontraste.

Usa un IDE que te ayude a formatearlo tu código, con esto ganaras mucho tiempo al dejar un código mas legible.
8. Usar frameworks solo por una pequeña característica
A veces por querer ahorrarnos un poco de código y de pensar, metemos mas y mas dependencias a nuestros programas, total, el CPU en el que va a correr lo soporta, son XX núcleos y 1TB de RAM, debe funcionar perfecto.
Tal vez sí, pero si puedes quitarte una dependencia y hacer ese poquito de código por tu cuenta, hazlo.
Raspberry Pi admits to faulty USB-C design on the Pi 4 | Ars Technica
Bueno, no es que pretenda usar un “e-marked” cable pero creo que los estándares están por algo, sobre todo si es para darle “energía” al dispositivo.
Entiendo entonces que funcionará con cables “baratos” únicamente
“I expect this will be fixed in a future board revision,” says co-creator.
Source: Raspberry Pi admits to faulty USB-C design on the Pi 4 | Ars Technica
Behind the Scenes at Puget Systems (Custom Computer Builders) – Smarter Every Day 2
That’s an interesting way to sell computers… “Tell me what you do, and I’ll tell you the right computer for you” instead of trying to sell you the most expensive computer.
Que está pasando?
El video salió mucho antes que “free fire” apareciera, no es relacionado al juego, es la adicción que el niño puede tener sobre plataformas de entretenimiento, llamese el Cel, la tablet, la televisión (netflix, youtube, etc..). Donde al “tap”/”click” puede tener una recompensa, es decir una pequeña descarga de endorfinas para sentirse mejor.
Recuerden… antes salíamos a jugar, íbamos a la casa del amigo a preguntar si podía salir, jugábamos futbol (cascarita), encantados, escondidas, “Stop”, futbeis, burrita al hoyo, etc… hoy los niños si no es la tablet es el celular, y si no, es la televisión,
¿Cuántos de ustedes obligan a sus hijos a salir a jugar, a convivir con otros niños ? .
¿Quién me puede decir que no vivió esto?
Los niños ahora son ADICTOS, y muchas veces quienes los inducimos al vicio somos los padres, que, para quitarnos un rato al hijo, le damos el celular para que se esté quieto, para que deje de fregar, para que no nos moleste, para que nos deje estar con nuestras amistades.
NO!, por favor, si le dá su celular o tablet, si le deja ver tele a su hijo, que sea con medida, recuerde, todo es malo en exceso.
Compártelo si estas de acuerdo con esto….
