Skip to content

Instantly share code, notes, and snippets.

🧰 Taller Práctico: De la Terminal al Deploy con Git y VPS (Versión Mejorada)

🎯 Objetivo General

Que aprendas a usar la terminal Linux, manejes el control de versiones con Git y despliegues un proyecto real (tanto estático como dinámico) en un servidor VPS. Vas a entender todo el proceso de desarrollo a producción, perdiéndole el miedo a los servidores, añadiendo capas de seguridad esencial y sin depender de plataformas cerradas.


zero: 📋 Prerrequisitos (¡Antes de empezar!)

@melizeche
melizeche / taller_instrucciones.md
Last active November 20, 2025 00:47
Instrucciones para el Taller Old School Deploy: Terminal, Git y servers

Instrucciones para el Taller Old School Deploy: Terminal, Git y servers

Qué vamos a hacer

En este taller vas a aprender a usar la terminal Linux, manejar Git, y deployar un proyecto real en un servidor. La idea es que al final puedas deployar tus propios proyectos sin depender de Vercel, Netlify o esas plataformas (que están buenas, pero economicamente no escalan y es mejor saber cómo funciona todo por abajo).

👀

https://x.com/shoeboxdnb/status/1643639119824801793

@melizeche
melizeche / gameeky_macos.md
Last active October 8, 2025 18:44
Instructions for running Gameeky on MacOS

Building and Running Gameeky Launcher

This guide explains how to build and run Gameeky Launcher from source using Meson and Ninja.


1. Install Dependencies

macOS (Homebrew):

@melizeche
melizeche / repo_loc.sh
Created March 25, 2025 17:05
get lines of code added/deleted by author in a repo
git log --author=<emailregex> --pretty=tformat: --numstat | awk '{ adds += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s, added:deleted ratio:%s\n", adds, subs, loc, adds/subs }' -
@melizeche
melizeche / rucDv.js
Last active January 17, 2025 04:47
Calculo del dígito verificador del RUC en Javascript
/**
* Calcula el dígito verificador del RUC utilizando el algoritmo basado en el módulo 11 (Cálculo de la DNIT/SET).
* Ref: https://www.dnit.gov.py/documents/20123/224893/D%C3%ADgito+Verificador.pdf/fb9f86c8-245d-9dad-2dc1-ac3b3dc307a7?t=1683343426554.pdf
*
* @author Marcelo Elizeche Landó
* @license MIT
*
* @param {number} numero - Número base(CI o RUC sin DV) para calcular el dígito verificador.
* @param {number} [basemax=11] - Base máxima para los multiplicadores (por defecto 11, ver PDF de la DNIT).
* @returns {number} Dígito verificador calculado.
@melizeche
melizeche / ruc_dv.py
Last active January 17, 2025 04:41
Calculo del dígito verificador del RUC en Python
def calcular_digito_verificador(numero: int, basemax: int = 11) -> int:
"""
Calcula el dígito verificador del RUC utilizando el algoritmo basado en el módulo 11.
Ref: https://www.dnit.gov.py/documents/20123/224893/D%C3%ADgito+Verificador.pdf/fb9f86c8-245d-9dad-2dc1-ac3b3dc307a7?t=1683343426554.pdf
Autor: Marcelo Elizeche Landó
Licencia: MIT
Args:
numero (int): Número base(CI o RUC sin DV) para calcular el dígito verificador.
Postgres Internals
Djangocon US 2024
Elizabeth Christensen
## psql basics
--whoami
\conninfo
--user list
@melizeche
melizeche / prepare-commit-msg
Created July 27, 2022 21:18
Better commit messages
# BRANCH_PREFIX will match everithing before the first underscore so if your branch name
# is ESGCA-9999_my_awesomefeature and your commit message is 'Fixes Changes Rabbits'
# your "final" commit message will be: 'ESGCA-9999: Fixes Changes Rabbits'
COMMIT_MSG_FILE=$1
BRANCH_PREFIX=$(git branch | grep '*' | sed 's/* //' | cut -d _ -f 1)
echo "$BRANCH_PREFIX: $(cat $COMMIT_MSG_FILE)" > "$COMMIT_MSG_FILE"
# Copy this file in the .git/hooks/ directory of your local repo and make it executable `chmod +x prepare-commit-msg`
@melizeche
melizeche / django-filter-sample.py
Created April 20, 2020 00:12 — forked from dkarchmer/django-filter-sample.py
How to use django-filter to add a DRF filter using dates and slugs
class SampleFilter(filters.FilterSet):
start_date = django_filters.DateFilter(name="date", lookup_type='gte')
end_date = django_filters.DateFilter(name="date", lookup_type='lte')
# How to filter by a foreign key that uses slug as a lookup
foo = django_filters.ModelMultipleChoiceFilter(
queryset=MyModel.objects.all(),
to_field_name='slug',
conjoined=True,
)
class Meta:
@melizeche
melizeche / remove_duplicates.py
Last active April 19, 2020 12:55 — forked from victorono/remove_duplicates.py
Django - remove duplicate objects where there is more than one field to compare
from django.db.models import Count, Max
from core.models import HelpRequest
unique_fields = ['phone', 'title']
actives = HelpRequest.objects.filter(active=True)
duplicates = (
actives.values(*unique_fields)
.order_by()