Así funcionaba el primer gran sistema que evitaba que hicieras copias de VHS

ya en la década de los 80 había tecnologías anticopia en las películas. Una de las más populares fue Macrovision, que protegía los VHS haciendo que cuando se creasen copias estas fueran defectuosas. El sistema estuvo vigente durante varios años, e incluso acabó dando el salto al DVD. » Yúbal FM | xataka.com

22 de octubre de 2017 · 1 min · 53 palabras · Nacho Cano

Moving persistent data out of Redis

Transitioning all that information transparently involved planning and coordination. For each problem domain using persistent Redis, we considered the volume of operations, the structure of the data, and the different access patterns to predict the impact on our current MySQL capacity, and the need for provisioning new hardware. For the majority of callsites, we replaced persistent Redis with GitHub::KV, a MySQL key/value store of our own built atop InnoDB, with features like key expiration. We were able to use GitHub::KV almost identically as we used Redis: from trending repositories and users for the explore page, to rate limiting to spammy user detection. ...

14 de enero de 2017 · 1 min · 110 palabras · Nacho Cano

Never write for-loops again

It’s been a while since I started exploring the amazing language features in Python. At the beginning, it’s just a challenge I gave myself to practice using more language features instead of those I learned from other programming language. And things are just getting more fun! Not only the code become shorter and cleaner, but also code looks more structured and disciplined. I’ll get into those benefits more in this article. ...

12 de diciembre de 2016 · 1 min · 77 palabras · Nacho Cano

Tor at the heart: bridges and pluggable transports

Censors block Tor in two ways: they can block connections to the IP addresses of known Tor relays, and they can analyze network traffic to find use of the Tor protocol. Bridges are secret Tor relays—they don’t appear in any public list, so the censor doesn’t know which addresses to block. Pluggable transports disguise the Tor protocol by making it look like something else—for example like HTTP or completely random. There are several pluggable transports, and it can be hard to know which one to use. If it is your first time, try obfs4: it is a randomizing transport that works for most people. If obfs4 doesn’t work, try fte. If that doesn’t work, it may mean that the default bridges are blocked, and you should get a custom bridge from bridges.torproject.org. If the custom bridge doesn’t work, try meek-azure or meek-amazon. ...

11 de diciembre de 2016 · 1 min · 146 palabras · Nacho Cano

Qué son los cypherpunks y por qué son tan importanes en la lucha por la privacidad

Los punkis trajeron cambios a nivel estético: crestas de colores, tatuajes, botas militares, cazadoras de cuero, escarceos con las drogas y música que el grupo vasco Eskorbuto definiría en su momento como “antitodo”. En resumidas cuentas, a partir de 1977 el punk se convirtió en anarquía de la estética. Y cuando se añadieron ordenadores y redes a la mezcla para los años 90 del siglo pasado, entonces aparecieron los cyberpunks. ...

11 de diciembre de 2016 · 1 min · 75 palabras · Nacho Cano

Cómo montar una mini consola con Raspberry Pi

En el siguiente artículo vamos a ver, paso a paso, como montar una mini consola similar a la Mini NES Classic, pero a nuestro gusto, con la posibilidad de emular una larga lista de consolas, utilizando una Raspberry Pi, un ordenador de bajo consumo y bajo coste, y gran cantidad de software libre, por un precio de unos 70 euros como mínimo. Las características más interesantes de nuestra Raspberry Pi (aunque no las únicas) serán las siguientes: Emular juegos de múltiples consolas: NES, SNES, Gameboy, MegaDrive, PSX, PSP, N64… Emular juegos «retro» de PC/MSDOS: DOSBox, ScummVM, ResidualVM, etc. Utilizarla de Media Center para reproducir películas, series, música, emisoras de radio… Actualizable con capacidad de añadir futuras mejoras (e incluso overclockeable). Basado en GNU/Linux, por lo que puede usarse a modo de servidor, PC o sistema ligero. Posibilidad de jugar online con otros jugadores de Raspberry Pi (o emuladores en PC). Mecanismo de «retrologros» similar a los utilizados en Steam. Posibilidad de cargar shaders o filtros para emular efectos visuales o pantallas CRT. Posibilidad de instalar ports de juegos de otras plataformas trasladadas a RPi. ...

7 de diciembre de 2016 · 1 min · 196 palabras · Nacho Cano

Undebt: how we refactored 3 million lines of code

Peter Seibel wrote that to maximize engineering effectiveness, “Let a thousand flowers bloom. Then rip 999 of them out by the roots.” Flowers, in how the metaphor applies to us, are code patterns — the myriad different functions, classes, styles, and idioms that developers use when writing code. At first, new flowers are welcome — maybe the new pattern seems easier to use, more scalable, more efficient, or more suited to some particular task than the old. As a code base grows, and the flowers proliferate, however, it becomes clear which patterns work and which don’t. Suddenly, code patterns that were once beautiful new flowers become technical debt in need of removal. When that happens, it’s time to start ripping. Otherwise, since developers learn by reading (and occasionally copy-and-pasting) from existing code, the bad flowers and the technical debt that comes with them will continue to grow unchecked. ...

7 de diciembre de 2016 · 1 min · 153 palabras · Nacho Cano

Se vende censor de desnudos: de compras por un mercadillo de algoritmos

Hay un bazar en internet que se dedica a la compraventa de inteligencia artificial, esa que algunos temen por si se nos va de las manos. En los puestos de Algorithmia, este supermercado del siglo XXI, los desarrolladores web pueden añadir a su carrito virtual un fragmento de código capaz de reconocer formas y colores o analizar sentimientos pese a no comprenderlos. algorithmia.com » Cristina Sánchez | yorokobu.com

7 de diciembre de 2016 · 1 min · 68 palabras · Nacho Cano

How to teach endian

One of the major disciplines in computer science is parsing/formatting. This is the process of converting the external format of data (file formats, network protocols, hardware registers) into the internal format (the data structures that software operates on). It should be a formal computer-science discipline, because it’s actually a lot more difficult than you’d expect. That’s because the majority of vulnerabilities in software that hackers exploit are due to parsing bugs. Since programmers don’t learn about parsing formally, they figure it out for themselves, creating ad hoc solutions that are prone to bugs. For example, programmers assume external buffers cannot be larger than internal ones, leading to buffer overflows. ...

7 de diciembre de 2016 · 1 min · 114 palabras · Nacho Cano

Writing efficient JavaScript

This entry describes simple techniques to fulfill the JavaScript compiler optimization process which results in faster running code. Especially in games you immediately notice frame drops and when the garbage collector has to hit in with a big stack of work to do. » Felix Maier | medium.com

30 de noviembre de 2016 · 1 min · 48 palabras · Nacho Cano