Category Archives: Software

Pseudocódigo para una idea de un meta-randomizador de Pokémon | Pseudocode for a Pokémon meta-randomizer

Tomado de la web de Sanqui randomizer – Taken from the Sanqui randomizer website.

(ES) (English Below)

Ando en una época de estar relativamente disperso con mis hobbies (hoy estoy escribiendo y actualizando entradas después de dos años y medio con esto olvidado), con lo que muchas veces recurro a emuladores para echar partidas rápidas o viciarme rápido a lo que sea. Durante 2020 ha habido un boom de nuevos ROM Hacks de Pokémon (¿por qué será…?), y he estado bastante pendiente de lo que se cocía en ThePokéCommunity y en el subreddit de PokemonROMHacks. Así volví a toparme con los randomizadores o aleatorizadores (más información, en inglés, aquí y aquí) y uno de mis trabajos favoritos de ingeniería reversa, las decompilaciones de los juegos de Pokémon (GitHub), concretamente el de primera generación (pokered).

Continue reading

[shared] Reproducible analysis for the very lazy | Análisis reproducibles para los más flojos

Lectura recomendadísima con unos cuantos consejos sobre cómo organizar los directorios de trabajo para facilitar la reproducibilidad, el orden homogéneo de todos nuestros proyectos, y nuestra salud mental en general. Cuanto menos, dan inspiración y refuerzan ideas o experiencias previas en el mundo de los sistemas de archivos. Además, molan porque son tan sencillos que ayudan hasta a los que más nos cuesta organizar las cosas. Traducidos al castellano, los comentarios más importantes serían:

  1. Crea una estructura estándar para tus proyectos, respétala en todo momento, conócela como la palma de tu mano, y reutilízala en cada proyecto que hagas. Por ejemplo:
    1. Ten un directorio por cada proyecto que tengas. Todo lo necesario para un proyecto debería estar en el mismo directorio raíz.
    2. Dentro del directorio principal del proyecto, al menos los tres siguientes sub-directorios:
      1. Código: todos los scripts, borradores de código, etc.
      2. Datos: todos los raw data, datos tabulares, etc. Todo lo que se generó durante un experimento, así como información proporcionada por otra persona.
      3. Resultados: todo lo generado usando código.
  2. Usa enlaces simbólicos (==symbolic links, o symlinks) (ln -s) para evitar la redundancia de datos. Importantísimo, que a la hora de llamar el comando ‘ln -s’ se haga usando la ruta completa del archivo de origen, incluyendo cuanto menos el directorio home (“~/ruta/al/archivo” en lugar de, por ejemplo, “../ruta/al/archivo”).
  3. Usa rutas (==paths) relativas entre sí. Por ejemplo, si trabajas en R, sitúa tu workingdirectory en “~/ProjectName” y haz las llamadas a lecturas de datos desde “Data/…”. ¿Que tienes algún dato o cosa que necesitas usar rápido y sin más importancia? Usa el consejo #2 (link simbólico a “Data/” ) para respetar la estructura decidida en la regla 1.

Si quieres más consejos a cuenta de la casa, continúa leyendo.

Continue reading

REDEFINING THE WORKPLACE

Casual Friday, denim shirt tucked into blue jeans, reserved parking space, circular glasses, hair parted in the middle, racquetball at lunch, afternoon meeting’s postponed. I just sit and stare in my corner office at the stars rushing on my Gateway 2000 screensaver, dreaming away a sunny afternoon.

I wonder if the restaurant where we have reservations folds their cloth napkins the right way.

Little King Trashmouth on INTERNET CLUB : REDEFINING THE WORKPLACE

Otra perspectiva de alguien de quien ya se ha hablado más que suficiente

Me he leído la biografía de Steve jobs.

Hacía tiempo que quería comenzar a leer cosas más reales y menos ficción. Cosas relacionadas con el mundo en el que vivo, y no con mundos que van más allá. Es lógico, cada vez tengo más y más presente que las cosas funcionan de ciertas maneras y que, ni yo las voy a conseguir cambiar por completo, ni tampoco me interesa cambiarlas todas. Lo cual no quiere decir que no deba saber un poco cómo funcionan. El cómo se desarrolla una idea y se acaba montando un negocio a su alrededor, una fuente que permita crecer a dicho proyecto. El tipo de dificultades que se encuentra uno a lo largo del tiempo. Y como ésas, mil cosas más. También es cierto que me pilla en un punto de bastante inflexión respecto a ciertos eventos futuros que decidirán el curso de mi vida a medio plazo, en los próximos años. Me gustaría estar preparado para ello, y por todas estas razones y mezcla de algún capricho, decidí probar con la historia de este hombre.

Y me he dado cuenta de muchas cosas. Continue reading

Lista de características que no deben faltarle a mi interfaz de trabajo ideal

Hoy día tenemos a nuestra disposición un buen número de distribuciones linux que nos brindan experiencias de usuario muy dispares. El mundo del software libre ya no es lo que era, y ahora contamos con toda una batería de proyectos para todos los gustos: que si las instancias de GNOME gestionadas de forma parecida a un dispositivo táctil, las actividades de KDE/Plasma, los escritorios más convencionales como Cinnamon, MATE; loquequieraquesea Unity, la simplicidad y cohesividad de Pantheon… y no debemos de olvidarnos de software privativo como Microsoft Windows, que apuesta fuerte por un control más estilo apps que antes (y de forma muy acertada, vaya).

Pero con todo y con eso, el público cada vez es más distro-hopper. Parece que nadie encaja en una forma de trabajar. Nadie encuentra su hueco en el mundo, incluso ahora que hay más sitios donde buscar. No tengo muy clara la razón de por qué esto es así, pero también me ha acabado afectando a mí. Después de mucho trabajando en Windows, he migrado a linux para toparme con que no he encontrado aún un buen progama de manipulación gráfica con el que aprender rápido a trabajar con capas y filtros (he dicho rápido, no me vale GIMP) para mis apuntes. Detalle al cual se le han sumado otros muchos más que me han hecho darme cuenta de que la forma de trabajar que quiero dista bastante de quedar satisfecha con los entornos de Linux actuales.

Aquí me explayo esbozando ideas que me serían de vital utilidad.

Continue reading