Skip to content

Instantly share code, notes, and snippets.

@pmolina
pmolina / antihero.md
Last active November 20, 2023 21:20
The Programming Antihero

The Programming Antihero

I was fresh out of college, still wet behind the ears, and about to enter the beta phase of my first professional game project -- a late-90s PC title. It had been an exciting rollercoaster ride, as projects often are. All the content was in and the game was looking good. There was one problem though: We were way over our memory budget.

Since most memory was taken up by models and textures, we worked with the artists to reduce the memory footprint of the game as much as possible. We scaled down images, decimated models, and compressed textures. Sometimes we did this with the support of the artists, and sometimes over their dead bodies.

We cut megabyte after megabyte, and after a few days of frantic activity, we reached a point where we felt there was nothing else we could do. Unless we cut some major content, there was no way we could free up any more memory. Exhausted, we evaluated our current memory usage. We were still 1.5 MB over the memory limit!

At this point one of the mos

@pmolina
pmolina / script.sh
Created May 8, 2021 00:41
Morosos del sistema financiero argentino
cat 24DSF.txt | grep -E "^(\s|\d){18}[3|4|5]" | cut -c8- | awk '{print substr($1,1,11) "\t" $2}' | sed "s/,/./g" | awk '{a[$1] += $2} END{for (i in a) print i, a[i]}' | sort -k 2 -n -r > mayores_deudores.txt
# cat 24DSF.txt
# Imprime en terminal el contenido del archivo.
#
# grep -E "^(\s|\d){18}[3|4|5]"
# Trae parte de la línea que me interesa y se fija que haya deuda (3 situación "con problemas" hasta 5 "irrecuperable"), 0 no me interesa.
# IMPORTANTE: morosos importantes son 3|4|5.
#
# cut -c8-
@pmolina
pmolina / deudores-top-50.txt
Created May 8, 2021 00:46
Mayores deudores "con problemas" del DSF (febrero 2021)
30500959629 33336125
30507950848 26274672
30552587827 10731035
30710853831 8732222
30710964013 6630533
30501466464 4988354
30553613147 3170601
30628323603 2257802
30661758410 2142888
30709211826 1924233
@pmolina
pmolina / cheques.sh
Created May 11, 2021 02:45
cheques.sh
egrep "^(30526904792|30526754030|30527929772|30526748448|30525418835)" cheques.txt | awk '{print substr($0, 45, 1) "," $1 "," substr($0, 22, 4) "-" substr($0, 26, 2) "-" substr($0, 28, 2) "," substr($0, 30, 13) "." substr($0, 43, 2) }' | egrep "^2" | tr -d ' ' | cut -c 3- > sin_fondos_clubes_grandes.txt
# -*- coding: utf-8 -*-
from datetime import datetime
import pytz
import base64
class ProgrammersDay(object):
def __init__(self):
self.message = "wqFGZWxpeiBkw61hIGEgdG9kb3M"\
"gbG9zIHByb2dyYW1hZG9yZXMgeS"\
// *** 1 ***
var flavors = [
{
"id":1,
"name":"Chocolate"
},
{
"id":2,
"name":"Frutos del bosque"
},
@pmolina
pmolina / antiacoso.md
Last active December 12, 2018 19:25
Política Antiacoso

Política Antiacoso

En Real Trends tenemos un compromiso con el respeto a la dignidad de cada persona, ya que una conducta respetuosa y profesional potencia nuestra misión, promueve la productividad, minimiza los conflictos y mejora nuestra reputación en los espacios donde trabajamos.

Todos los colaboradores, clientes, proveedores u otras personas con quienes tenemos contacto durante el curso de nuestra actividad laboral y comercial deben ser tratados justa y respetuosamente en todo momento, sin importar su apariencia, creencias, cultura, afiliaciones u otras características personales. Se respetarán los pensamientos y conductas siempre que éstas no interfieran con los intereses y valores legítimos de Real Trends u otras personas.

Los motivos por los cuales se considerará que una persona puede estar siendo discriminada, excluida o acosada se refieren principalmente a razones de raza, color, sexo, edad, estado civil, religión, opinión política, nacionalidad, ascendencia nacional, origen social, disc