Saltar al contenido principal
ByteNova
Aprende practicando

Pon a prueba lo aprendido con retos prácticos

Realiza ejercicios progresivos de desarrollo web, programación y ciberseguridad. Intenta completar cada reto antes de abrir la solución orientativa.

13 Retos disponibles
7 Áreas tecnológicas
100% Gratuitos
Lee el objetivo

Comprende qué debes construir o resolver.

Inténtalo por tu cuenta

Utiliza los artículos y las pistas disponibles.

Compara tu resultado

Abre la solución solamente después de intentarlo.

Área 1

Método para resolver los retos

Intenta cada ejercicio antes de consultar una solución. Divide el problema, prueba una idea pequeña y registra los errores que encuentres.

Proceso de cinco pasos

  1. Lee el objetivo y los requisitos.
  2. Escribe una solución en lenguaje natural.
  3. Construye la versión mínima.
  4. Prueba casos normales y casos límite.
  5. Refactoriza y explica lo aprendido.

El resultado final importa, pero el mayor aprendizaje está en el proceso de análisis y corrección.

Desarrollo web

Practica HTML, CSS y diseño adaptable mediante proyectos sencillos.

Reto 1
Inicial 30 minutos

Crea tu primera página personal

Construye una página sencilla que presente información sobre ti, tus intereses y tus objetivos.

Objetivo

Practicar la estructura básica de HTML y las etiquetas de contenido más importantes.

La página debe incluir:

  • Un título principal con tu nombre.
  • Un párrafo de presentación.
  • Una lista con tres intereses.
  • Un subtítulo llamado “Mis objetivos”.
  • Un enlace hacia ByteNova.
  • Un footer con el año actual.
Ver pista

Utiliza las etiquetas <h1>, <p>, <ul>, <a> y <footer>.

Ver solución orientativa
<!DOCTYPE html>
<html lang="es">

<head>

    <meta charset="UTF-8">

    <meta
        name="viewport"
        content="width=device-width, initial-scale=1.0"
    >

    <title>Mi página personal</title>

</head>

<body>

    <main>

        <h1>Mi nombre</h1>

        <p>
            Estoy aprendiendo desarrollo web.
        </p>

        <h2>Mis intereses</h2>

        <ul>
            <li>Tecnología</li>
            <li>Programación</li>
            <li>Diseño web</li>
        </ul>

        <h2>Mis objetivos</h2>

        <p>
            Quiero crear mis propios proyectos.
        </p>

        <a href="https://bytenova.app/">
            Visitar ByteNova
        </a>

    </main>

    <footer>
        <p>© 2026 Mi página personal</p>
    </footer>

</body>

</html>
Repasar HTML y CSS
Reto 2
Básico 45 minutos

Crea una sección de tarjetas responsive

Diseña tres tarjetas que se adapten automáticamente a computadoras, tabletas y teléfonos.

Objetivo

Practicar CSS Grid, espacios, bordes, sombras y diseño adaptable.

Cada tarjeta debe incluir:

  • Un emoji o icono.
  • Un título.
  • Una descripción corta.
  • Un botón o enlace.
  • Bordes redondeados.
  • Una sombra suave.
Ver pista
.tarjetas {
    display: grid;
    grid-template-columns:
        repeat(auto-fit, minmax(220px, 1fr));
    gap: 24px;
}
Ver solución orientativa
<section class="tarjetas">

    <article class="tarjeta">
        <span>🌐</span>
        <h2>Desarrollo web</h2>
        <p>Aprende HTML, CSS y JavaScript.</p>
        <a href="#">Comenzar</a>
    </article>

    <article class="tarjeta">
        <span>🐍</span>
        <h2>Python</h2>
        <p>Aprende programación desde cero.</p>
        <a href="#">Comenzar</a>
    </article>

    <article class="tarjeta">
        <span>🛡️</span>
        <h2>Ciberseguridad</h2>
        <p>Protege tus cuentas y dispositivos.</p>
        <a href="#">Comenzar</a>
    </article>

</section>
.tarjetas {
    display: grid;
    grid-template-columns:
        repeat(auto-fit, minmax(220px, 1fr));
    gap: 24px;
    padding: 30px;
}

.tarjeta {
    padding: 25px;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.tarjeta span {
    font-size: 2rem;
}

.tarjeta a {
    display: inline-block;
    margin-top: 12px;
    padding: 10px 18px;
    background: #2563eb;
    color: white;
    text-decoration: none;
    border-radius: 8px;
}
Repasar diseño responsive
Reto 7
🟢 Básico⏱️ 50 minutos

Construye una landing page adaptable

Organiza una portada con llamada a la acción que se adapte a móvil y escritorio.

🎯 Objetivo

Practicar estructura semántica, CSS y diseño responsive.

Debes completar:

  • Hero con título, texto y botón
  • Tres beneficios en tarjetas
  • Diseño legible en móvil
  • Footer sencillo
💡 Ver pista

Empieza por la versión móvil y utiliza una media query para ampliar el diseño.

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar HTML y CSS
Área 2

Programación con Python

Practica variables, entrada de datos, condiciones y operaciones matemáticas.

Reto 3
Inicial 20 minutos

Crea un saludo personalizado

Construye un programa que solicite el nombre y la edad de una persona.

Objetivo

Practicar variables, input(), conversión de datos y f-strings.

El programa debe:

  • Solicitar el nombre.
  • Solicitar la edad.
  • Mostrar un saludo personalizado.
  • Indicar cuántos años tendrá el próximo año.
Ver pista

Convierte la edad a número mediante int().

Ver solución orientativa
nombre = input("Escribe tu nombre: ")

edad = int(
    input("Escribe tu edad: ")
)

proxima_edad = edad + 1

print(
    f"Hola, {nombre}. "
    f"El próximo año tendrás {proxima_edad} años."
)
Repasar Python para principiantes
Reto 4
Básico 40 minutos

Crea una calculadora sencilla

Crea un programa que permita sumar, restar, multiplicar o dividir dos números.

Objetivo

Practicar entrada de datos, condiciones y operaciones matemáticas.

El programa debe:

  • Solicitar dos números.
  • Solicitar una operación.
  • Realizar el cálculo correspondiente.
  • Mostrar un mensaje cuando la operación no sea válida.
  • Evitar dividir entre cero.
Ver pista

Utiliza una estructura con if, elif y else.

Ver solución orientativa
numero_uno = float(
    input("Primer número: ")
)

numero_dos = float(
    input("Segundo número: ")
)

operacion = input(
    "Escribe +, -, * o /: "
)

if operacion == "+":
    resultado = numero_uno + numero_dos
    print(f"Resultado: {resultado}")

elif operacion == "-":
    resultado = numero_uno - numero_dos
    print(f"Resultado: {resultado}")

elif operacion == "*":
    resultado = numero_uno * numero_dos
    print(f"Resultado: {resultado}")

elif operacion == "/":

    if numero_dos == 0:
        print("No se puede dividir entre cero.")
    else:
        resultado = numero_uno / numero_dos
        print(f"Resultado: {resultado}")

else:
    print("La operación no es válida.")
Repasar fundamentos de programación
Reto 8
🟢 Básico⏱️ 35 minutos

Analiza una lista de calificaciones

Crea un programa que reciba varias notas y muestre información útil.

🎯 Objetivo

Practicar listas, ciclos, condiciones y cálculos sencillos en Python.

Debes completar:

  • Guardar al menos cinco notas
  • Calcular el promedio
  • Mostrar nota mayor y menor
  • Indicar si el promedio es aprobado
💡 Ver pista

Puedes usar sum(), len(), max() y min().

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar Python
Área 3

Ciberseguridad

Practica cómo reconocer riesgos y mejorar la seguridad de tus cuentas y dispositivos.

Reto 5
Inicial 15 minutos

Identifica un mensaje de phishing

Analiza el siguiente mensaje ficticio y encuentra al menos cinco señales de advertencia.

De: soporte-banco@seguridad-premios.example

¡URGENTE! Su cuenta será eliminada en 30 minutos. Ingrese inmediatamente al siguiente enlace y confirme su contraseña y código de seguridad.

También ganó un premio especial por ser cliente frecuente.

Enlace: banco-verificacion-premio.example
Objetivo

Aprender a reconocer urgencia, dominios extraños, solicitudes de credenciales y premios inesperados.

Ver pista

Revisa el remitente, el dominio, el tono del mensaje, la información solicitada y la promesa de un premio.

Ver respuesta orientativa
  • Utiliza una dirección de correo extraña.
  • Crea una sensación extrema de urgencia.
  • Amenaza con eliminar la cuenta.
  • Solicita una contraseña.
  • Solicita un código de seguridad.
  • Ofrece un premio inesperado.
  • El dominio no coincide con el banco.
Repasar qué es el phishing
Reto 6
Básico 30 minutos

Realiza una revisión de seguridad personal

Revisa tus hábitos digitales utilizando la siguiente lista. No escribas contraseñas ni información privada dentro del ejercicio.

Objetivo

Detectar medidas de seguridad que todavía puedes mejorar.

Comprueba lo siguiente:

  • Utilizo contraseñas diferentes.
  • Mi correo tiene autenticación en dos factores.
  • Mi teléfono utiliza bloqueo de pantalla.
  • El sistema está actualizado.
  • Tengo una copia de mis archivos importantes.
  • Reviso los enlaces antes de abrirlos.
  • No comparto códigos de verificación.
  • Reviso los permisos de las aplicaciones.
  • No instalo programas de sitios desconocidos.
  • Sé cómo cerrar sesiones abiertas.
Ver recomendación

Selecciona primero dos medidas que todavía no cumples y corrígelas antes de continuar con el resto.

Ver plan de mejora recomendado
  1. Protege primero el correo principal.
  2. Cambia las contraseñas repetidas.
  3. Activa la autenticación en dos factores.
  4. Actualiza tus dispositivos.
  5. Crea una copia de seguridad.
  6. Revisa permisos y sesiones abiertas.
Repasar consejos de ciberseguridad
Reto 9
🟢 Inicial⏱️ 30 minutos

Crea un plan de protección de cuentas

Revisa una cuenta ficticia y propón medidas concretas para reducir riesgos.

🎯 Objetivo

Aplicar buenas prácticas de contraseñas, autenticación y recuperación.

Debes completar:

  • Detectar tres riesgos
  • Proponer una contraseña segura sin escribir una real
  • Activar 2FA como recomendación
  • Definir un método de recuperación
💡 Ver pista

No utilices datos personales ni contraseñas reales durante el ejercicio.

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar ciberseguridad
Área 4

JavaScript

Practica lógica y comportamiento interactivo en páginas web.

Reto 10
🟢 Inicial⏱️ 30 minutos

Crea un contador interactivo

Construye un contador con botones para aumentar, disminuir y reiniciar.

🎯 Objetivo

Practicar variables, eventos y actualización del DOM.

Debes completar:

  • Mostrar un número inicial
  • Botón para sumar
  • Botón para restar
  • Botón para reiniciar
💡 Ver pista

Escucha el evento click de cada botón y actualiza el contenido de un elemento.

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar JavaScript
Área 5

Git y Linux

Refuerza herramientas fundamentales para trabajar con proyectos.

Reto 11
🟢 Inicial⏱️ 30 minutos

Prepara un proyecto con Git

Simula el inicio de control de versiones de un pequeño proyecto.

🎯 Objetivo

Comprender el flujo básico de repositorio, cambios y commits.

Debes completar:

  • Crear una carpeta de proyecto
  • Inicializar un repositorio
  • Preparar archivos para commit
  • Escribir un mensaje de commit descriptivo
💡 Ver pista

Piensa en el flujo: crear → revisar cambios → preparar → confirmar.

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar Git y GitHub
Área 6

Inteligencia artificial

Practica cómo dar instrucciones claras y evaluar respuestas de IA.

Reto 12
🟢 Inicial⏱️ 25 minutos

Mejora un prompt paso a paso

Transforma una instrucción vaga en un prompt claro y verificable.

🎯 Objetivo

Aprender a aportar contexto, objetivo, restricciones y formato.

Debes completar:

  • Escribir una instrucción inicial
  • Agregar contexto
  • Definir el resultado esperado
  • Añadir restricciones y revisar la respuesta
💡 Ver pista

Un buen prompt explica qué necesitas, para quién y en qué formato.

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar inteligencia artificial
Área 7

Internet y redes

Comprueba conceptos básicos sobre cómo se comunican los dispositivos.

Reto 13
🟢 Inicial⏱️ 25 minutos

Dibuja el recorrido de una petición web

Ordena los elementos que intervienen cuando visitas un sitio web.

🎯 Objetivo

Relacionar navegador, DNS, servidor, HTTP y respuesta.

Debes completar:

  • Partir desde el navegador
  • Incluir la consulta DNS
  • Identificar el servidor
  • Mostrar la respuesta que vuelve al navegador
💡 Ver pista

Concéntrate en el recorrido conceptual; no necesitas configurar una red real.

✅ Ver solución orientativa

Comprueba cada requisito uno por uno. Si tu resultado funciona y puedes explicar por qué, el reto está cumplido. Compara después tu proceso con los recursos de ByteNova y mejora lo que sea necesario.

📘 Repasar redes

Practicar es parte del aprendizaje

Guarda tus proyectos, mejora cada solución y vuelve a realizar los retos después de aprender nuevos conceptos.

Explorar rutas