Tutoriales y Código fuente

  • PHP 0

    Contador de visitas en PHP 8

    Contador de visitas sencillo en PHP 8 que guarda el recuento en un fichero de texto. Sin base de datos. Usa bloqueo exclusivo de fichero para evitar condiciones de carrera en servidores con concurrencia alta. Muestra el número formateado con separadores de miles en una página HTML mínima lista...

  • Java 28

    Cuatro en Raya en Java Swing con IA Negamax

    Cuatro en Raya para Java Swing. El original era un applet JDK 1.0 (los applets quedaron eliminados en Java 11); esta versión funciona como aplicación de escritorio. La IA usa Negamax con poda alfa-beta a profundidad 5 y SwingWorker para no congelar la interfaz mientras calcula. Compilar con: ja...

  • Javascript 0

    Cuatro en Raya en JavaScript con IA Negamax

    Cuatro en Raya jugable en el navegador, sin dependencias ni instalación. IA con Negamax y poda alfa-beta a profundidad 6: prioriza la columna central, bloquea amenazas del jugador y busca victoria inmediata antes de calcular. Renderizado en canvas HTML5 con gradientes y hover animado. Abre el HT...

  • Javascript 34

    Post-IT arrastrable con JavaScript moderno

    Muestra un Post-IT fijo en la pantalla que se puede arrastrar por la cabecera y cerrar. Usa Pointer Events (API moderna que unifica mouse, touch y stylus) y localStorage para recordar si el usuario lo cerró. El original de 2002 usaba document.all y document.layers de IE4/Netscape 4, incompatible...

  • PHP 10

    Convertir número a letras en PHP 8 (español)

    Función PHP 8 que convierte cualquier número entero entre -999.999.999 y 999.999.999 en su representación literal en español. Maneja correctamente los casos especiales del español: "veintiún", "cien" vs "ciento", "un millón" vs "dos millones", negativos y ceros. Incluye un ejemplo de uso p...

  • PHP 36

    Subir ficheros al servidor con PHP 8

    Sube ficheros al servidor con PHP 8 de forma segura: move_uploaded_file() en lugar del inseguro copy() original, validación de MIME real con finfo, lista blanca de extensiones, límite de tamaño configurable y nombre aleatorio para evitar colisiones y path traversal. El ZIP incluye también un ...

  • Python 5

    Detector de palíndromos en Python 3

    Función que determina si una palabra o frase es un palíndromo, manejando correctamente el español: ignora tildes, mayúsculas, espacios y signos de puntuación. Incluye normalización Unicode para que "Ánima" y "anima" se traten igual, ejemplos con frases clásicas como "Dábale arroz a la zo...

  • Python 6

    Problema de las 8 reinas en Python 3 con backtracking

    Solución al clásico problema de las 8 reinas en Python 3 usando backtracking. El algoritmo coloca una reina por fila y descarta ramas inválidas antes de continuar, lo que lo hace mucho más eficiente que la fuerza bruta. Encuentra las 92 soluciones distintas e imprime un tablero ASCII para cad...

  • Javascript 7

    Selector de fecha en JavaScript vanilla

    Selector de fechas (date picker) en JavaScript puro, sin librerías externas. Muestra un calendario mensual navegable con botones de mes anterior y siguiente, marca el día actual y permite elegir cualquier fecha. La semana empieza el lunes y la fecha seleccionada se muestra en formato largo en e...

  • Python 3

    Introducción a clases en Python 3 — POO desde cero

    Ejemplo completo de programación orientada a objetos en Python 3. Cubre los tres pilares fundamentales: encapsulamiento (atributos protegidos y properties), herencia (Libro y Revista que extienden una clase base) y polimorfismo (una función que trabaja con cualquier subtipo). El código constru...