lunes, 6 de julio de 2026

HTML Etiqueta video

 1\. Estructura básica

El elemento requiere la etiqueta de apertura y cierre, y generalmente utiliza la etiqueta `<source>` para definir el archivo multimedia.

html

```
<video width="640" height="360" controls>
  <source src="video.mp4" type="video/mp4">
  <source src="video.webm" type="video/webm">
  Tu navegador no soporta la etiqueta de video.
</video>
```

2\. Atributos fundamentales

El elemento `<video>` permite configurar el comportamiento del reproductor mediante diversos atributos:

- **`controls`**: Muestra los controles nativos del navegador (reproducir, pausar, volumen, pantalla completa).
- **`autoplay`**: Permite que el video comience a reproducirse automáticamente al cargar. *Nota: Para que esto funcione en la mayoría de los navegadores, el video debe incluir el atributo `muted`.*
- **`muted`**: Silencia el audio del video por defecto.
- **`loop`**: Hace que el video se repita de forma infinita.
- **`poster`**: Define una imagen que se muestra antes de que el video comience, útil como miniatura.
- **`preload`**: Indica al navegador cómo debe manejar la carga del archivo (`none`, `metadata` o `auto`).

                                   Photo by Alexander Shatov on Unsplash

3\. Compatibilidad de formatos

Para asegurar que el video funcione en todos los navegadores, se recomienda incluir múltiples fuentes utilizando la etiqueta `<source>`. El navegador intentará reproducir el primer formato que reconozca. Los formatos más comunes son **MP4** (el más compatible) y **WebM** (optimizado para la web).

4\. Accesibilidad y subtítulos

Es posible incluir archivos de subtítulos o descripciones mediante la etiqueta **`<track>`**. Esto mejora la accesibilidad del contenido:

html

```
<track src="subtitulos.vtt" kind="subtitles" srclang="es" label="Español">
```

martes, 30 de junio de 2026

HTML Etiqueta DIV

 1\. ¿Qué es un `<div>`?

El término proviene de **"division"** (división). Es un elemento de nivel de bloque (**block-level**), lo que significa que, por defecto, comienza en una línea nueva y ocupa todo el ancho disponible en su contenedor.

Es un **contenedor genérico**. A diferencia de etiquetas como `<article>` o `<header>`, el `<div>` no tiene ningún significado semántico; no le comunica al navegador ni a las herramientas de accesibilidad qué tipo de contenido contiene. Simplemente sirve como un "caja" para agrupar otros elementos.
 

                                           Photo by sarah b on Unsplash

2\. Sintaxis

Al ser un contenedor, requiere siempre una etiqueta de apertura y una de cierre:

html

```
<div class="contenedor-principal">
  <h1>Título de la sección</h1>
  <p>Este texto está agrupado dentro de un div.</p>
</div>
```
3\. ¿Por qué se utiliza?

Aunque no tenga significado semántico, su uso es indispensable en el desarrollo web por las siguientes razones:

- **Estilos (CSS):** Es el uso más común. Al asignar una clase (`class`) o un identificador (`id`) a un `<div>`, se pueden aplicar estilos visuales a todo el grupo de elementos que contiene (por ejemplo, para crear tarjetas de productos, barras laterales o paneles).
- **Diseño (Layout):** Históricamente, los `<div>` han sido la herramienta principal para dividir las páginas en secciones, permitiendo organizar la estructura visual del sitio.
- **Manipulación con JavaScript:** Los desarrolladores utilizan los `<div>` como puntos de referencia para acceder, modificar o interactuar con un bloque específico de contenido mediante scripts.

- **Regla de oro:** Se deben utilizar etiquetas semánticas siempre que sea posible para mejorar la accesibilidad (lectores de pantalla) y el posicionamiento en buscadores (SEO).

- **Cuándo usar `<div>`:** Se recomienda utilizarlo únicamente cuando no existe ninguna otra etiqueta semántica que describa adecuadamente el propósito del contenedor, o simplemente cuando se necesite un agrupador puramente visual para aplicar estilos.

 Ejercicios

Agregar etiquetas div en su sitio web teniendo en cuenta la teoría explicada en este artículo

lunes, 4 de mayo de 2026

Hosting

 

 ¿Qué es el Web Hosting?

Cuando un desarrollador crea un sitio web en su computadora local, solo él puede verlo. Para que el sitio sea accesible para el mundo, los archivos deben almacenarse en una computadora que cumpla con tres requisitos:

  • Estar siempre conectada a internet.
  • Estar encendida las 24 horas del día, los 7 días de la semana.
  • Estar configurada para responder a las solicitudes (de navegadores como Chrome o Safari).

A estas computadoras especializadas se les llama Servidores. Un proveedor de hosting es una empresa que posee estos servidores y "alquila" espacio en ellos para que el usuario almacene sus archivos.

                                         Photo by Kevin Ache on Unsplash

Tipos de Hosting

Dependiendo del tamaño, el tráfico y la complejidad del proyecto, existen diferentes opciones:

  • Hosting Compartido: El sitio comparte un servidor con muchos otros sitios web. Es económico y sencillo, pero puede volverse lento si otros sitios reciben mucho tráfico. Es ideal para principiantes.
  • VPS (Servidor Privado Virtual): El usuario comparte un servidor físico, pero tiene su propia "parcela" aislada con recursos dedicados. Es más estable y rápido que el compartido.
  • Hosting en la Nube (Cloud Hosting): El sitio web se almacena en una red de múltiples servidores. Si uno falla, otro toma su lugar. Es altamente escalable (ej. AWS, Google Cloud, Azure).
  • Hosting Estático: Diseñado específicamente para sitios hechos solo con HTML, CSS y JS. Servicios como GitHub Pages, Netlify o Vercel permiten alojar código directamente desde un repositorio. Son las opciones preferidas para quienes están aprendiendo.

 

miércoles, 1 de abril de 2026

HTTP

 

¿Qué es HTTP?

HTTP es el protocolo fundamental que permite la comunicación en la World Wide Web. Funciona como un lenguaje estandarizado que permite a los navegadores (clientes) solicitar información y a los servidores entregarla. Es, esencialmente, el conjunto de reglas que rige cómo se intercambian los datos en internet.

El modelo Cliente-Servidor

El funcionamiento de HTTP se basa en un modelo de petición y respuesta:

  • El Cliente: Suele ser el navegador web del usuario. Este inicia la comunicación enviando una petición (Request).
  • El Servidor: Es una computadora remota que alberga los archivos de un sitio web. Este recibe la petición, la procesa y devuelve una respuesta (Response).

La estructura de la comunicación

Una transacción HTTP se divide en dos componentes principales:

1. La Petición (Request)

Cuando un usuario accede a una página, el navegador envía un mensaje que incluye:

  • Método: Define la acción a realizar (por ejemplo, GET para obtener datos, POST para enviar información, PUT para actualizar o DELETE para borrar).
  • Ruta (Path): Indica el recurso específico que se busca (ej. /inicio o /contacto).
  • Cabeceras (Headers): Contienen metadatos, como el tipo de navegador utilizado o el formato de datos que el cliente espera recibir.
  • Cuerpo (Body): Solo se incluye en peticiones como POST, donde se envían datos (como los campos de un formulario).
  • Se puede ver: 

Abrir cualquier página (ej: Google o un diario)
Presionar F12
Ir a la pestaña 👉 "Network" (Red)
Presionar F5 (recargar)

Cada línea es un request HTTP real 

Ejemplo:

GET /contacto HTTP/1.1
Host: ejemplo.com
User-Agent: Mozilla/5.0

2. La Respuesta (Response)

Una vez que el servidor procesa la petición, envía de vuelta:

  • Código de estado: Indica el resultado de la operación. Los más comunes son:
    • 200 OK: La solicitud fue exitosa.
    • 301/302: Redirección (el recurso se movió).
    • 404 Not Found: El recurso solicitado no existe.
    • 500 Internal Server Error: Hubo un fallo en el servidor.
  • Cabeceras: Información sobre el contenido, como el tipo de archivo (HTML, JSON, imagen) y el tamaño.
  • Cuerpo: Es el contenido solicitado, como el código HTML de una página o un archivo JSON.

Características fundamentales

  • Es "Stateless" (Sin estado): HTTP es un protocolo que no tiene memoria. Cada petición es tratada como algo independiente y nuevo. Para mantener la sesión de un usuario, se utilizan herramientas adicionales como las Cookies o el LocalStorage.
  • Basado en texto: Originalmente, HTTP utiliza mensajes de texto plano, lo que facilita su interpretación tanto para humanos como para máquinas.
  • HTTPS (La versión segura): Debido a que HTTP estándar envía la información sin cifrar, se utiliza HTTPS. Este añade una capa de seguridad mediante protocolos de cifrado (SSL/TLS), garantizando que los datos entre el cliente y el servidor viajen protegidos contra interceptaciones.

                         Photo by Miguel Ángel Padriñán Alba on Unsplash  

Ejercicios

🧩 Parte 1: Observación en la vida real
 
🔍 Actividad
Abrir el navegador (Chrome o Firefox).
Ingresar a un sitio web (por ejemplo: una página de noticias o una tienda online).
Presionar F12 → pestaña "Network" (Red).
Recargar la página.
📝 Consignas

Responder con base en lo que ven (NO teoría):

Identificar 3 requests diferentes y completar:
Recurso    Método    Código de estado    Tipo de archivo
Elegir uno de esos requests y responder:
¿Qué método usa? ¿Por qué creen que usa ese método?
¿Qué código de estado devuelve? ¿Qué significa en ese caso concreto?
Buscar en las cabeceras:
Un ejemplo de User-Agent
Un ejemplo de Content-Type

👉 Adjuntar captura de pantalla como evidencia.

🧩 Parte 2: Interpretación de situaciones reales
🔎 Caso 1

Un usuario intenta entrar a:

www.misitio.com/productos

y recibe un 404 Not Found.

👉 Explicar:

¿Qué significa ese error?
Mencionar 2 posibles causas reales.

🔎 Caso 2

Un formulario de registro envía datos de usuario.

👉 Responder:

¿Qué método HTTP debería usarse? ¿Por qué?
¿Dónde viajan los datos?

🔎 Caso 3

Un sitio redirige automáticamente de:

http://misitio.com
→ https://misitio.com

👉 Explicar:

¿Qué código de estado interviene?
¿Por qué se realiza esta acción?

🧩 Parte 3: Construcción de una petición
✍️ Actividad

Inventar una petición HTTP completa para:

👉 "Obtener la página de contacto de un sitio"

Debe incluir:

Método
Ruta
2 headers reales
(Opcional) body si corresponde

Ejemplo de formato:

GET /contacto HTTP/1.1
Host: ejemplo.com
User-Agent: ...

🧩 Parte 4: Análisis crítico

Responder con opinión propia:

¿Por qué HTTP es "stateless"?
¿Qué problema genera eso en sitios como redes sociales?
¿Cómo se soluciona en la práctica?

⚠️ IMPORTANTE:
Las respuestas deben incluir un ejemplo concreto de uso real (ej: login, carrito de compras, etc.).

🧩 Parte 5: Mini desafío práctico
🎯 Situación

Un desarrollador dice:

"Mi API funciona, pero cuando hago una petición me devuelve error 500"

👉 Responder:

¿Qué significa ese error?
¿El problema está del lado del cliente o del servidor?
Dar 2 posibles causas técnicas.